CloudFormationテンプレートのAWS固有のパラメータ型
Parametersセクションでは、AWS固有のパラメータ型を利用することができます。 入力値はアカウントユーザーに関連するリソース情報になります。
通常の型と比べて、
- 入力補助がある
- 入力値をチェックしてくれる
というメリットがあります。
手間が減り、入力間違いがないため、定義されているパラメータ型があれば積極的に使用しましょう。
AWS固有のパラメータ型
型は AWS::
から始まります。
パラメータ型 | 入力補助 | 複数対応 | 説明 | 入力例 |
---|---|---|---|---|
AWS::EC2::AvailabilityZone::Name | ○ | ○ | アベイラビリティーゾーン | ap-northeast-1a |
AWS::EC2::Image::Id | ○ | EC2 イメージID | ami-ff527ecf | |
AWS::EC2::Instance::Id | ○ | ○ | EC2 インスタンスID | i-011c45735cf4e9dbc |
AWS::EC2::KeyPair::KeyName | ○ | EC2 キーペア名 | ||
AWS::EC2::SecurityGroup::GroupName | ○ | ○ | セキュリティグループ名 | web-sg |
AWS::EC2::SecurityGroup::Id | ○ | ○ | セキュリティグループID | sg-a123fd85 |
AWS::EC2::Subnet::Id | ○ | ○ | サブネットID | subnet-123a351e |
AWS::EC2::Volume::Id | ○ | ○ | EBS ボリュームID | vol-3cdd3f56 |
AWS::EC2::VPC::Id | ○ | ○ | VPC ID | vpc-a123baa3 |
AWS::Route53::HostedZone::Id | ○ | ○ | Route 53 ホストゾーンID | Z23YXV4OVPL04A |
入力補助
ドロップダウンリストが表示されます。直接入力することも可能です。
AMI(AWS::EC2::Image::Id) は候補が多いため入力補助がありません。事前に調べて入力します。
複数対応
キーペア名(AWS::EC2::KeyPair::KeyName) 以外はリスト形式 List<パラメータ型>
で指定可能です。
Type: List<AWS::EC2::AvailabilityZone::Name>
選択するとテキストボックスに追加され、☓を押すと消去できます。
サンプル
パラメータでアベイラビリティゾーン(AZ)を選択し、サブネット作成時に選択したAZを参照設定するサンプルです。
AWSTemplateFormatVersion: '2010-09-09' Parameters: MyAZ: Type: AWS::EC2::AvailabilityZone::Name Description: AvailabilityZone Name Resources: MyVPC: Type: AWS::EC2::VPC Properties: CidrBlock: 10.0.0.0/16 MySubnet: Type: AWS::EC2::Subnet Properties: VpcId: !Ref MyVPC AvailabilityZone: !Ref MyAZ CidrBlock: 10.0.1.0/24 Outputs: Result: Value: !Ref MySubnet Description: AvailabilityZone Name
入力 (Parameters)
- ドロップダウンリストには、選択しているリージョンのAZ一覧が表示されます。
- パラメータを選択しないでスタックを作成すると、エラーになりロールバックされます。
出力 (Outputs)
- サブネットIDを出力しています。
- [VPC] - [サブネット] から、作成されたサブネットのAZを確認し、パラメータで選択した値と同じことを確認します。
参考
- AWSドキュメント