Mais conteúdo relacionado
AWS CloudFormation 縁の下の力持ち! CloudFormation は次男です
- 2. デプロイ三兄弟
AWS
Elas)c
Beanstalk
2011-‐01-‐19
AWS
CloudForma)on
2011-‐04-‐11
AWS
OpsWorks
2013-‐02-‐19
- 7. ユースケース
• ⼀一度度テンプレートを作成すれば、同じ構成が再現可能
– 開発環境など
– 同じ仕組みを使いまわせる Web, ブログ, ゲーム
• ベストプラクティスが盛り込まれたテンプレートをつかえば…
– アーキテクチャの再利利⽤用
– サンプルテンプレートも
http://aws.amazon.com/jp/cloudformation/aws-‐‑‒cloudformation-‐‑‒templates/
• 起動時にパラメータを渡せる
– 例例えば DB のエンドポイントを EC2 に渡す
- 8. テンプレートの構成
{
"AWSTemplateFormatVersion" : “2010-‐‑‒09-‐‑‒09",
"Description" : "Valid JSON strings up to 4K",
"Parameters" : {
set of parameters
},
"Mappings" : {
set of mappings
},
"Resources" : {
set of resources
},
"Outputs" : {
set of outputs
}
}
テンプレートのバージョン
(最新は2010-‐‑‒09-‐‑‒09)
テンプレートの詳細(説明⽂文)
CloudFormation実⾏行行時に
後で変更更可能なパラメータを列列挙
(例例:DBユーザー名など)
Hashtableのようなもの
キーに応じて値を特定出来る
(例例:リージョンに応じたAMI番号など)
EC2やRDSなど、スタックを構成する
リソースを定義
スタック構築後に取得したい値
(例例:アクセスURLなど)
- 10. Tips
• Rollback on Failure を Disable にして原因調査(リソースが残る)
• あるリソースは特定のインスタンスのブートストラップ後に⽴立立ち上
げる必要があるというようなケースではうまく WaitCondition を
使って実現
• テンプレートは⼊入れ⼦子にしたり、あるテンプレートの Output を別
のテンプレートの Parameter としてインプットできるのでコン
ポーネントごとのテンプレートを作ってそれらをつなぐ親テンプ
レートを⽤用意するような構造にしておくとメンテナンスしやすい
• ブートストラップだけ別にテストできるようにブートストラップス
クリプトを別ファイルにしたり chef 等でブートストラップするよ
うにする⽅方がよい(テンプレートの中に EC2 インスタンスのブート
ストラップまで⼊入れてしまうと、ブートストラップのテストのため
だけにスタックを起動したりしないといけなくて⼤大変!)
• Madeiraとか使うとGUIで構成を書いて CloudFormation テンプ
レートをExportするという誰もが夢⾒見見る世界に⼀一歩近く(とはいえ
最終的には JSON を⼿手直しする必要はあり)
- 11. こんな Tips
も発見!
10
)ps
when
using
AWS
CloudForma)on
(plus
a
bonus
)p)
http://aws.amazon.com/jp/cloudformation/aws-‐‑‒cloudformation-‐‑‒templates/
- 12. 見つけた Tips
ざっくり翻訳(1)
IAM(Identity and Access
Management) をいっしょに
つかいましょう!
⼤大きいテンプレートを⼀一個!では
なく⼩小さいテンプレートに分けて
管理理しましょう!
テンプレートはバージョン管理理
ツールに⼊入れて、ソースコードの
ように扱いましょう!
パラメーターを活⽤用して再利利⽤用性
の⾼高いテンプレートをつくりま
しょう
ちゅういしてねぇ〜~
VPC ⾃自体の利利⽤用料料⾦金金はかからな
いので、料料⾦金金がかかるその他のテ
ンプレートと VPC は分けて利利⽤用
しましょう
- 14. 見つけた Tips
ざっくり翻訳(ラスト!)
CloudFormation helper を活⽤用
してインスタンスを bootstrap
しましょう
cfn-‐‑‒validate-‐‑‒template を利利⽤用し
て単純なシンタックスエラーが起
きないように事前にチェックしま
しょう
正規表現は Java の正規表現形式
に近いのでバックスラッシュは⼆二
個つなげてバックスラッシュとし
て認識識されるようにしましょう
ちゅういしてねぇ〜~
- 15. さらに詳しく Under
the
Hood!!
• AWS CloudFormation under the Hood
(DMG303) | AWS re:Invent 2013
h#p://www.youtube.com/watch?v=ZhGMaw67Yu0
• WEB+DB PRESS Vol.77
h#p://www.amazon.co.jp/dp/4774159905
CloudFormer でテンプレートを作成して、汎
⽤用的になるよう修正する⼀一連の流流れが解説されて
ます!