[AWS]EC2やRDS、ELBの停止忘れを一発で防ぐMoneySave[CloudFormationテンプレート]
コンニチハ、千葉です。
以前紹介させていただいたブログがあります。EC2やRDS、ELBの停止忘れ、削除し忘れを防ぐ!LambdaScheduleイベント #reinvent
あれから約1年経ちました。こちらをアップデートして、より使いやすい形にしたのでご紹介です。
何ができるの?
起動しっぱなしになったリソースを通知してくれます。
これを利用することで、会社で利用している開発用のアカウントや個人で持っているアカウントに対して適用し、無駄に起動しているリソースが無いかをチェックして通知してくれます。
例えば、「EC2を起動しっぱなしで月末に衝撃が走った」というような悲しみから解放してくれます。数クリックで利用できるようにしたので、是非ご活用していただいて悲しみから解放されましょう!
チェック対象リソース
チェック対象のリソースは以下となります。
- EC2
- ELB([new]アプリケーションロードバランサーにも対応!)
- RDS
- [new]DynamoDB
- [new]Redshift
- [new]ElastiCache
- [new]WorkSpaces
- [new]Direvtory Service
こちらを起動している場合、通知します。
一発起動
適用したいAWSアカウントにログインして、以下をクリック。
Nextをクリック
通知する時間と、通知するメールアドレスを入力する
Nextをクリック
IAMリソースを作成確認するので、チェックボックスにチェックする
スタックが作成され、SNSのサブスクリプション許可メールが来るのでリンクをクリックする
以上で、一日1回チェックされて、リソースが起動されているとメールが飛んできます!
因みに削除したい!というときは、CFnのスタックを削除すればきれいに削除されます。
アーキテクチャ
CFnでは以下のリソースが作成されます。
- Lambdaファンクション(リソースのチェックとメール送信)
- SNS(メール送信用Topic)
- Lambda用ロール(ReadOnlyとSNSパブリッシュ権限)
- CloudWatch Events(Lambdaの定期起動)
AWSリソース費用として、一日1回のLambdaファンクションの起動とSNSメール通知のみです。 私の料金で見ると、$0.03だったので3円くらいですね。
ソースコードはこちらで公開しています。
最後に
是非ご活用ください!現在はメール通知のみですが、SlackやChatWorkへの通知も追加したい今日このごろ。