この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
CloudFormationには、スタックの最大数が200、1スタック内のリソース最大数が200という制限があります。
特に「1スタック内のリソース最大数が200」の制限は、成長を続けるプロダクトで発生しやすいと思います。 もしこの状況に遭遇すれば、CloudFormationのデプロイ(チェンジセット作成)が失敗するため、事前に気づいて対策する必要があります。
ということで、CloudFormationのスタック数とリソース数を調べて、一覧表示するスクリプトを作ってみました。
CloudFormationのスタック数とリソース数を調べるスクリプト
コード
使い方
$ python app.py
実行結果
スタック数と各スタック内のリソース数を表示します。
AWS-CDK-CircleCI-Deploy-Sample-App-Stack-prod(13)
AWS-CDK-CircleCI-Deploy-Sample-App-Stack-dev(13)
Deploy-Iam-Sample-SAM-App(7)
SwaggerSample(7)
sam-deploy-test-Stack(6)
aws-sam-cli-managed-default(2)
CDKToolkit(1)
----------------------------
total stack: 7
さいごに
週1ぐらいで実行して、上限に近づいているスタックに気づけると嬉しいですね。 Lambdaで動かして、しきい値(180とか)を超えたスタックをSlackに通知するのも良さそうです。