cloudformationを楽に作る方法

Fri May 15, 2020 - aws
Sat May 16, 2020

AWS開発でいつまでもコンソール画面からポチポチやるわけにはいかず、構成をテンプレート化し、いつでも同じ環境をサックとやれるようにAWS CloudFormationを使うわけですが、このAWS CloudFormation思った以上に難しいです!

だいたいググって出てくる情報はコンソールからの説明だったり、公式ドキュメントはわけわからん単語のオンパレードでひたすらググって、ググってみたいな日が続きます。

そんな中、僕が見つけたCloudFormationを楽に作る方法を紹介します。

初めはコンソールからサンプルを作る

初めからCloudFormationのドキュメントを見て作るのではなく、初めはコンソール画面から使って期待通りの動きをするものを一度、作ってしまった方が理解が早いです。

コンソールを参考にCloudFormation化していく

一番わかりやすいAWS::IAM::Roleで試していきます。

コンソールのIAMからロールへと移動し、ポリーシーのシュミレートを選択。

このポリシーシュミレーターは作成したポリシーが正しく動くのかを予め確かめることができるので、便利です。

ここで、ポリシーをチェックしたら、今度は、これをYAMLに直します。使うのはaws-cfn-template-flipです。

aws-cfn-template-flipはCloudFormationのテンプレートをJSONとYAMLに変換してくれる優れものです。CloudFormationのテンプレートはYAMLの方が見やすいのですが、ポリシーのシュミレートではJSON形式なので、これを使って直していきます。

インストール

1
% pip install cfn-flip

JSONからYAMLに変換

1
% cfn-flip test.json test.yml

先ほど作ったYAMLを参考にすればCloudFormationも作りやすくなると思います。

See Also