AWS CloudFormation

AWS CloudFormation で一つのテンプレートから n 個の環境を一気につくる

一つのテンプレートからパラメーターだけ変えて n 個の環境をつくりたい、という場合、手作業で一つずつスタックをつくるのはしんどい。一気につくれる方法があったのでまとめる。 サマリー 作り方 所感 スクリプト例 用語 ルートスタック ネストされたスタ…

AWS CloudFormation のクロススタック参照(Output Export と Fn::ImportValue)のメリットと設定方法

クロススタック参照というものがよくわからない。普通に Parameters から指定して参照させるだけではダメなの?……というわけで調べてみた。いくつかメリットがあるみたいだ。 メリット 削除保護ができる Parameters を介さずに参照できる 書き方 1: 参照され…

AWS CloudFormation で UserData を用いて Linux インスタンスを構築する際の TIPS

テンプレートの例、挙動、TIPS などを雑多にまとめた。 前提 テンプレート ドキュメント 挙動 UserData に書いたスクリはいつ実行されるか? UserData に書いたスクリが実行失敗したらステータスはどうなる? UserData 部分を編集して再アップ(スタック更新…

AWS CloudFormation でスタック削除時に DELETE IN PROGRESS でブロッキングする件

AWS CloudFormation でスタックを削除しようとすると、DELETE IN PROGRESS 状態が 10 分続き、先に進まないという現象が起きた。普段なら 1 分くらいで終わるのに。 前提 やったこと 対処方法 この件に関する資料や根拠はある? おわりに 前提 「事前に別の…

AWS CloudFormation テンプレート中で使う AMI ID のメンテナンス方法

AMI ID をハードコードしていると、そのうち AMI が見つからなくなり以下のような CREATE FAILED になる。 API: ec2:RunInstances Not authorized for images: [ami-XXXXXXXXXXXXXXXXX] これに対処するにはどうすればいいのだろう? まとめ 方法1: FAILED に…

AWS CLI を使って CloudFormation スタック作成をコマンドラインで実行する

管理コンソールからいちいちポチポチするのがだるいので調べてみた。 サマリー コマンドライン アクセスキー 動作確認方法 create-stack create-stack の後 所感 参考 サマリー 必要なのは以下二つ。 必要なアクセスキーは事前につくって入手しておく aws cl…

AWS CloudFormation の YAML テンプレートを書くためのノウハウ

最近はがっつり AWS の CloudFormation で Infrastructure As Code してた。だいぶ要領を得てきたと思うので、思いつく限りまとめてみる。 YAML で書く エディタのパワーに頼る コードハイライトする 単語補完する アウトライン(シンボル)を認識させる リフ…

AWS CloudFormation テンプレートの検証をローカルで行えるようにした(AWSCLI使用)

Win7 x86 で AWSCLI を用いて CloudFormation テンプレート検証をローカルで行えるようにした。 Thanks! awscli(Python版)でCloudFormationテンプレートをValidateする | DevelopersIO 1 結論 2 上記コマンドラインを動作させるのに 1 結論 cat template.ya…