windows2020のブログ

AWSはじめました

Bash on Ubuntu on Windows

AWSのlambdaを使おうと思うのですが、Pythonデバッグがやりづらいので、
Windows上でPythonが実行できる環境を作ろうと思います。

Windows10からはBashが使えるようになっているので、
まずはそのセットアップをしました。

インストール方法はこちらの記事を参考にしました。
http://www.buildinsider.net/enterprise/bashonwindows/01

bashが使えるようになった後はとりあえず、AWSCLIを使えるようにするため、
以下を実行しました。

参考URL
http://docs.aws.amazon.com/ja_jp/streams/latest/dev/kinesis-tutorial-cli-installation.html

curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
sudo python get-pip.py
sudo pip install awscli

ここまで順調です。

最後にbash上でPythonを使用できるようにこちらを参考にさせていただきました。
http://dev.classmethod.jp/cloud/aws/invoke-aws-lambda-python-locally/

SharePoint Template その2

前回紹介したTemplateをデプロイしたところ、以下の構成でSharePointが立ち上がりました。

Templateの中にSQL Serverの記述がなかったので、どのタイミングでインストールされたか不明ですが、SharePointはEC2インスタンスを構築する際にインストーラをダウンロードして実行しているようでした。

                            "C:\\SharePoint\\SharePointFoundation2010.exe": {
                                "source": "http://d3adzpja92utk0.cloudfront.net/SharePointFoundation.exe"

OSのバージョンについては以下のようにWindows2008r2が指定されているので、ここをWindows2012r2に書き換えれば
OSも2012になるのではと思います。

      "Properties": {
        "InstanceType" : { "Ref" : "InstanceType" },
        "ImageId" : { "Fn::FindInMap" : [ "AWSRegion2AMI", { "Ref" : "AWS::Region" }, "Windows2008r2" ]},

SharePoint Template

http://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/sample-templates-applications-us-west-2.html

上記にSharePoint2010を構築するためのTemplateがありました。

SharePointを実行するにはSQL Serverも必要だと思うのですが、
Template内には記載がありませんでした。

とりあえず、デプロイしてみて何が構築されるか見てみようと思います。
その後、以前のADのときのようにパラメータを変更するだけで、
SharePoint2016がインストールできないかと淡い期待を抱いています。

Sample AD Templateを使って、win2012r2へ

前回のブログで紹介したADのTemplateですが、
中身をのぞいてみると、52行目あたりにWindows2012r2に関する記述がありました。

"Mappings" : {
    "AWSRegion2AMI" : {
      "us-east-1"        : {"Windows2008r2" : "ami-98a9378e", "Windows2012r2" : "ami-e659c7f0"},
      "us-west-2"        : {"Windows2008r2" : "ami-06d34c66", "Windows2012r2" : "ami-2ad04f4a"},

さらに読み進めていくと、137行目のところに下記の記述があり、
「Windows2008r2」を「Windows2012r2」に変更するとWindows2012r2でデプロイできました。

      "Properties": {
        "ImageId" : { "Fn::FindInMap" : [ "AWSRegion2AMI", { "Ref" : "AWS::Region" }, "Windows2008r2" ]},

ADStack

SharePointのTemplateをのぞいてみると、ADの構築用のTemplateが内部で呼び出されているようです。

f:id:windows2020:20170531054533p:plain

今回はこのADのTemplateについてみていきます。
https://s3.amazonaws.com/quickstart-reference/microsoft/activedirectory/latest/templates/Template_1_AD_2012R2.template


CloudFormationの開くボタンからTemplateのURLを指定することで詳細を確認することができます。
f:id:windows2020:20170531054751p:plain

開いてみるとなかなかに複雑な構成になっていました。
f:id:windows2020:20170531055311p:plain

上記をシンプルにしていくのはかなり苦労しそうなので、
別のTemplateを探してみたところ、
下記のものが見つかりました。

https://ap-northeast-1.console.aws.amazon.com/cloudformation/designer/home?templateURL=https://s3-ap-northeast-1.amazonaws.com/cloudformation-templates-ap-northeast-1/Windows_Single_Server_Active_Directory.template®ion=ap-northeast-1

Windows Server 2008 R2で構築されるところを除けば、
使いやすそうな構成なので、こちらをベースに構築していこうと考えています。
が、もっとちょうどいいTemplateがないか探してみます。

CloudFormation

前回、CloudFormationの機能を使って、SharePointを立ち上げるところまではよかったのですが、
課金が発生してしまいました。

何とか無料でSharePointを構築するべく、今回からきちんと、CloudFormationを使って
何が行われているのか見ていきたいと思います。

前回使用したTemplateはこちら
https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/new?stackName=SharePoint&templateURL=https:%2F%2Fs3.amazonaws.com%2Fquickstart-reference%2Fmicrosoft%2Fsharepoint%2Flatest%2Ftemplates%2FSharePoint_2016_Master.template

デザイナで表示すると以下のような構成になっていました。
f:id:windows2020:20170530215114p:plain

ADStack、SQL Stack、SharePoint Stack
の3つがデプロイされるようです。

以前、Templateを修正せずに実行した際にはADStackが
まず実行され、AD環境が構築されましたので、
次回はADStackの詳細についてみていきたいと思います。

SharePointの課金

SharePointをtenplateを使用して作成した場合に発生した課金について紹介したいと思います。

Amazon Elastic Compute Cloud running Windows
 $0.192 per On Demand Windows m4.large Instance Hour
 $0.583 per On Demand Windows r3.xlarge Instance Hour
 $0.766 per On Demand Windows c4.2xlarge Instance Hour

EBS
 $0.10 per GB-month of General Purpose SSD (gp2) provisioned storage - US West

Elastic IP Addresses
 $0.005 per Elastic IP address not attached to a running instance per hour (prorated)

Amazon Elastic Compute Cloud NatGateway
 $0.045 per NAT Gateway Hour

一番割合の多かったのは、EC2のインスタンスでした。
テスト用にSharePointを構築するだけであれば、
冗長化も不要なので、CloudFormationで使用しているTemplateを修正して、
シングル構成にできないか検討中です。

また、使用したTemplateではt2.microのインスタンスが選択できなかったので、
こちらも修正して無料枠の範囲で構築できないか模索中です。