少し時間が空いてしましましたが、
Cloudformationのテンプレート作成とスタック実行を行いたいと思います。
↓過去の記事↓
- ■CloudFormationで構築する環境について
- ■用語について
- ■使用するテンプレートについて
- ■スタックの作成方法(ステップ1: スタックの指定)
- ■スタックの作成方法(ステップ2: スタックの詳細を設定)
- ■スタックの作成方法(ステップ3: スタックオプションの設定)
- ■スタックの作成方法(ステップ4: レビュー)
■CloudFormationで構築する環境について
早速、今回Cloudformationで作成する環境を見ていこうと思います。
【パブリックサブネット】
⇒ EC2インスタンス2台(AmazonLinux2 , WindowsServer)を配置
【プライベートサブネット】
⇒ EC2インスタンス1台(WindowsServer)を配置
【セキュリティグループ】
⇒ UserはパブリックサブネットのEC2へアクセス(SSH、RDP)が可能。
⇒ プライベートサブネットのEC2へアクセスするには、パブリックサブネットのWindowsServerを踏み台にする。
【ルートテーブル】
⇒ パブリックサブネットはigwをデフォルトゲートウェイに設定
⇒ プライベートサブネットはVPC内の通信のみ(ターゲットが「local」のみ)
■用語について
テンプレート・・・Cloudformationのテンプレート(JSON/YAML形式のもの)のことで、AWS環境の設計図です。
スタック・・・テンプレートを実体化するための実行単位です。
■使用するテンプレートについて
上記の環境が構築されるテンプレートを使います。
テンプレートの中身については、次回以降に記載します。
※今回はスタック実行することが目的のため、割愛いたします。
■スタックの作成方法(ステップ1: スタックの指定)
Cloudformationスタックを作成する際、テンプレートが「どこにあるのか」を指定する必要があります。
実際の画面を見た方がイメージが湧くかと。下記が設定画面です。
これを見ると、前提条件には3つ選択肢があります。
【①テンプレートの準備完了】
「S3に格納済みのテンプレートを使う」、
もしくは「ローカルPCにあるテンプレートをアップロードする」を選択できます。
S3バケット内のデータを使用する場合には、URLを入力する必要があります。
今回は事前にS3バケットに上記のテンプレートを保存しています。
実際にS3バケットのURLを入力した画面は以下の通りです。
【②サンプルテンプレートを使用】
予めAWSが用意してくれているテンプレートを選択することができます。
画面表示はこんな感じです。
【③デザイナーでテンプレートを作成】
Designerを起動するためのボタンが表示されます。
Designerを使用してテンプレートを一から作成し、そのテンプレートを使ってスタックを作成する際には、こちらの項目を選択します。
■スタックの作成方法(ステップ2: スタックの詳細を設定)
スタックの名前を任意に入力します。
ここでは、「test3」と入力しました。
このタイミングで、パラメータを入力することもできます。
とはいっても、なんのこっちゃってなるかと思いますので、ざっくりいうと
「テンプレート内で変数を利用している部分を指定/設定する箇所」
と思っていただけばと。
例えば、
・どのAMIを使うか
・どのインスタンスタイプ(t2.microとか)を使うか
・どのキーペアーを使うか
と言った感じで、スタック実行時にテンプレート内の変数の値を具体的に指定することができます。
こんな感じの画面になります。
■スタックの作成方法(ステップ3: スタックオプションの設定)
オプションなので何も入力せずに進めることもできます。
ここでは、タグ名だけ指定することにします。
Key、Valueは何でもいいですが下記画像の通りに設定しました。
■スタックの作成方法(ステップ4: レビュー)
ステップ1から3で入力した内容に誤りがないかを確認することができます。
問題なければ、画面右下の「スタックの作成」をクリックします。
これでテンプレート内容に従って、AWS環境が自動的に構築されます。
スタック実行がうまくいけば、「CREATE_COMPLETE」と表示されます。
以上です。