aws-cliでネットワーク&Webサーバの構築(Infrastructure as Command!?)してみた

aws-cliでネットワーク&Webサーバの構築(Infrastructure as Command!?)してみた

ブラウザ操作だけだったので新鮮。GUIは最初は良いけど、何度も同じ事を繰り返すなら、確かにコマンド実行の方が良いな。

AWSのネットワーク設定(VPC+IGW+サブネット+ルートテーブル)を1つずつ作成して、ec2+apacheでWebサーバ構築! ネットワーク設定から作ると、超面倒だな・・・。

参考URL

1, LANであるVPC(Virtual Private Cloud)を生成。
JSON形式で結果が返ってくるので、VpcIdをコピペしておく(ブラウザのコンソール画面からも確認できる)

ec2は直接関係ないけど、aws ec2コマンドというセットでの記述が普通みたい。

2, いま作ったVPC(Virtual Private Cloud)に名前を付ける。戻り値は無し。
createした時に、同時に名前を付けたい…。

3, このままだとインターネット接続出来ないので、インターネットゲートウェイを作って接続する

4, Web公開用のパブリック・サブネットを生成。リージョンとか気にせずに作ってきたけど、サブネットはAZ指定する必要がある。
ブラウザのコンソールから見ると、全て日本リージョン(ap-northeast)で生成されてた。

5, ルートテーブル作成(igwと作成したサブネットを結びつけて、インターネット接続できるようにする=パブリック・サブネット化)
describe-route-tablesでルートテーブル本体を作成。create-routeでルーティングルールを追加していく。

6, セキュリティーグループ(ファイアウォール)の設定。SSH(22)とHTTP(80)を許可する。

7, EC2接続用のキーペア生成

8, ようやくEC2インスタンス生成

9, Elastic IP作成&割り当てて、EC2を固定IP化する

10, 秘密鍵+SSHクライアントを使って、EIPアドレスにSSH接続できるか確かめる。

11, PHPとWebサーバのインストール

12, ブラウザから固定IPでapacheのテストページが表示されれば、aws-cliでネットワーク&Webサーバの構築は完了!
やってみた感想としては、GUIよりもCUIでステップ・バイ・ステップで構築した方が理解が深まる。ブラウザのコンソール画面から結果も確認できるし。