はじめに
引き続き、Udemy にて Stephane Maarek 氏 が提供している「 AWS CloudFormation Master Class 」コースについて紹介していきます。今回の内容は、「 CloudFormation Parameters 」 です。
これまでの AWS CloudFormation Master Class の記事
AWS CloudFormation Master Class を受けてみた①
AWS CloudFormation Master Class を受けてみた②「 CFnを利用したS3環境の構築 」
CloudFormation Parameters
CloudFormation Parameters について
パラメータを作成する際は、以下の設定を行うことができます。
ダウンロードしたコードから「 0-parameters-hands-on.yaml 」YAML ファイルを選択して表示します。
この1つの YAML のブロックが1つのパラメータで、これはセキュリティグループのパラメータを表しております。
●SecurityGroupDescription:このパラメータの名称
・Description:セキュリティグループの詳細
・Type:string 型
セキュリティグループポートのパラメータ
●SecurityGroupPort:このパラメータの名称
・Description:最小値と最大値を含む、数値パラメータの詳細
・Type:number 型
・MinValue:最小数値
・MaxValue:最大数値
EC2 インスタンスのパラメータ
このように、パラメータを設定することで利用できる EC2 のインスタンスタイプを制限することができます。
また、default で t2.small を設定しているため、インスタンスタイプの選択に迷っても問題なく作成することができます。
次のパラメータは、DBパスワードと KeyName というパラメータです。
●DBPwd:パラメータの名称
・NoEcho:「 true 」と設定しているため、値を隠す事が可能
・Description: データベース admin アカウントパスワード
・Type:このパラメータは string 型
●KeyName:パラメータの名称
・Description:インスタンスに SSH アクセス可能な既存の EC2 キーペア名
・Type:サポートされている AWS 固有のパラメータータイプ( 内容は「 Amazon EC2 のキーペア名 」 )
・ConstraintDescription:既存の EC2 キーペア名であること
セキュリティグループ Ingress CIDR のパラメータ
●SecurityGroupIngressCIDR:パラメータの名称
・Description:EC2 インスタンスとの疎通に使う IP アドレス範囲
・Type:string 型
・MinLength:最短値
・MaxLenght:最長値
・Default:標準設定の IP アドレス
・AllowedPattern:この形式に沿った IP アドレスのパターンを許可
・ConstraintDescription:有効な IP CIDR 範囲で x.x.x.x/x. 形式が条件(制約)
一気に3つのパラメータを見てみましょう
パラメータは AWS が公式でテンプレートを紹介しているので、そちらを元に作成するのをオススメします。
パラメータの内容を確認
パラメータの内容を見てきたことで、この YAML ファイルの内容を知ることができました。それでは、実際にこのファイルをアップロードして、作成していきましょう。
作成するスタックの名前を入力し、下のパラメータを確認すると、先ほど確認したパラメータの条件が、それぞれ反映されているのが確認できます。
パラメータを全て設定したら、「次へ」をクリックして作成していきます。
もし入力したパラメータの内容に間違いがあれば、「 ERROR 」と表示され、その理由も表記されます。
このYAML ファイルのコードを CloudFormation Desinger にコピペすれば、図で内容を確認することもできます。
おわりに
CloudFormation の parameters についての紹介は以上です。これで、これまでアップロードしてきた YAML ファイルの内容について詳しくなっただけでなく、ユーザ自身で YAML を書く方法も学べたかと思います。
次回は、Resource について紹介していく予定ですので、お楽しみに。