1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【学習メモ】CloudFormation テンプレートの構造

Posted at

CloudFormation テンプレート形式

JSON、または、YAML

YAMLの例
---
AWSTemplateFormatVersion: "version date"

Description:
  String

Metadata:
  template metadata

Parameters:
  set of parameters

Rules:
  set of rules

Mappings:
  set of mappings

Conditions:
  set of conditions

Transform:
  set of transforms

Resources:
  set of resources

Outputs:
  set of outputs

テンプレートの各セクション

AWSTemplateFormatVersion(任意)

・形式バージョン

Description(オプション)

・説明するテキスト文字列

Metadata(オプション)

・テンプレートに関する追加情報

Parameters(任意)

・実行時 (スタックを作成または更新するとき) にテンプレートに渡す値
(ResourcesとOutputsがこっちをみる)

Rules(オプション)

・スタックの作成またはスタックの更新時に、テンプレートに渡されたパラメータまたはパラメータの組み合わせを検証
(例:パラメーター値の条件付きの確認)

Mappings(任意)

・キーと関連する値のマッピングで、条件パラメータ値の指定に使用できる
(例:リージョンに基づく値を設定する場合、リージョン名をキーとして必要な値を保持するマッピングを作成)
(AMIがリージョン毎にIDが異なるとか)

Conditions(オプション)

・スタックの作成中または更新中に、特定のリソースが作成されるかどうか、または特定のリソースプロパティに値が割り当てられるかどうかを制御する条件
(例:リソースを作成するかどうか判断。条件式の結果がtrueの場合→作成、falseの場合→作成しない)

Transform(オプション)

・サーバーレスアプリケーション (Lambda ベースアプリケーション) の場合は、使用する AWS Serverless Application Model (AWS SAM) のバージョンを指定
(要は、Lambdaを作りたい場合ですね。。。)

Resources(必須)

・作りたいAWSリソースを記述
(ここがリソース本体の中身!一番大事!)

Outputs(任意)

・スタックのプロパティを確認すると返される値について説明
(スタックを生成してみないと分からない「結果」(EC2サーバのSecurityGroupのIDとか)を出力)

参考サイト

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?