kenichiro246’s blog

主にC#での仕事をしてます。今はAWSに関わり始めました。

AWS CloudFormation を初めて使ってみた

AWS CloudFormation

仕事で CloudFormation を使うことになりそうなので、まずは簡単なところから。
CloudFormation を使って、AWS の超最小限の構成を自動で構築してみます。 細かな設定まわりは次回書いてみようかな。

テンプレートファイルの作成

  1. YAML または JSON 形式の CloudFormation テンプレートを作成します。
    ファイル名は何でも良いです。
AWSTemplateFormatVersion: '2010-09-09'
Resources:
  TestVpc:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: 10.0.0.0/16
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Resources": {
        "TestVpc": {
            "Type": "AWS::EC2::VPC",
            "Properties": {
                "CidrBlock": "10.0.0.0/16"
            }
        }
    }
}

CloudFormation スタックの作成

  1. Webコンソール
    CloudFormationのWebコンソールを開きます。
  2. テンプレートファイルのアップロード
    「CloudFormation スタックの作成」から「スタックの作成」ボタンをクリックします。

    項目
    前提条件 - テンプレートの準備 テンプレートの準備
    テンプレートの指定 テンプレートファイルのアップロード
  3. デザイナー表示
    「デザイナーで表示」ボタンをクリックするとアップロードしたテンプレートのアーキテクチャが表示されます。 f:id:kenichiro246:20220409010058p:plain

  4. テンプレートの検証
    デザイナーの画面で「テンプレートの検証」ボタンをクリックすると、その名のとおりテンプレートを検証してくれます。試しに、AWSTemplateFormatVersion の値を適当な値に変更し、「テンプレートの検証」ボタンをクリックするとエラーになります。
    ※2022年4月時点では、この AWSTemplateFormatVersion の値は「2010-09-09」と指定する必要があります。 f:id:kenichiro246:20220409010215p:plain

  5. スタックの作成
    「スタックの作成」ボタンをクリックし、「次へ」ボタンをクリックする。

  6. スタックの詳細を指定
    以下のとおり入力して、「次へ」ボタンをクリックする。

    項目
    スタックの名前 TestStack1
    パラメータ なし(特に入力する項目はない状態)
  7. スタックオプションの設定
    特に変更せず、「次へ」ボタンをクリックする。

  8. レビュー
    特に変更せず、「スタックの作成」ボタンをクリックする。
  9. スタックのダッシュボード
    ステータスが「CREATE_IN_PROGRESS」となり、その後「CREATE_COMPLETE」となれば作成完了となります。 f:id:kenichiro246:20220409010241p:plain

  10. VPCダッシュボード
    VPCダッシュボードを開くと、今作成したスタックが作成されています。作成したスタックの VPC の Name は未設定なので、この時点で VPC を大量に作成している場合は見つかりづらいですが、タグを見てみると「aws:cloudformation:stack-name | TestStack1」となっているため、このあたりで作成できたことが確認できます。 f:id:kenichiro246:20220409010253p:plain

CloudFormation スタックの削除

  1. CloudFormation のスタックの一覧で、削除したいスタックを選択する。
  2. 「削除」ボタンをクリックする。

こんな感じで、簡単にできちゃいますね。