Amazon EC2のAMIイメージを自動取得して保持日数が過ぎたら削除
画像の保存をEC2に戻した事もあってEC2のバックアップの自動取得を勉強がてらやってみました。
当ブログサイトのEC2に対して定期実行しているので何かあれば修正します。
- Amazon EC2のAMIイメージを自動取得
- 保持日数が過ぎたAMIを登録解除して
- スナップショットも削除
- 結果はSlackへ通知
- CloudWatchイベントからLambdaを実行
- LambdaのランタイムはPython 3.6
目次
ソースコード
- AMIの情報(IDとスナップショット)取得では最初、Ownersを指定しなかったのでパブリックAMIも含めて全部見に行ってたみたいで処理が終わりませんでした。
-
purge_daysを加算したCreationDateと現在を比較して削除対象にするか判定しています。
このまま使う場合
- ダウンロードしたコードをzipにしてLambda関数を作成します。
- Slackでチームを作成、または既存のSlackでIncoming Webhookを設定します。
- Slackで #ec2_create_imageチャンネルを作ります。
- 環境変数を設定します。
- LambdaのロールにはEC2を扱える権限のポリシーが必要です。
環境変数
| 環境変数名 | 内容 | 例 |
|---|---|---|
| REGION_NAME | リージョン | ap-northeast-1 |
| TARGET_NAME | EC2 Nameタグ | |
| PURGE_DAYS | イメージの保持日数 | 7 |
| SLACK_URL | SlackのURL | https://hooks.slack.com/services/~~~ |
| AWS_ACCOUNT_ID | AWSアカウントID | 123456789012 |
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「AWS教科書 AWS認定デベロッパーアソシエイト テキスト&問題集 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
CUSTOMINEを使ってkintoneからAWS Lambdaを実行する(Cognito認証付き)
先日の記事「kintoneのカスタマイズ開発を超速にするCUSTOMINE」で書 …
-
-
AWSマネジメントコンソールのマルチセッションサポート
AWSマネジメントコンソールにマルチセッションサポートが追加されましたので使いま …
-
-
Amazon Location Service入門ワークショップ-トラッカー
トラッカーでデバイスの位置や移動履歴を追跡できます。 関連記事 Amazon L …
-
-
Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)
やりたいこと Feedlyで共有したいフィードに特定のタグを付けます。 特定のタ …
-
-
共有AMIのコピー時にエラー「You do not have permission to access the storage of this ami」
他アカウントから共有されたAMIをコピーする際に、「You do not hav …
-
-
テキストをAmazon PollyでMP3に変換してS3に格納(AWS Lambda Python)
Google Calendar Twilio ReminderのテキストをAma …
-
-
ハンズオン: Cogtnio、API Gateway、Lambda、DynamoDB ~AWS認定デベロッパーアソシエイト(DVA-C02)~
このブログは2026年6月29日翔泳社さんより発売される「AWS教科書 AWS認 …
-
-
Amazon Timestreamのサンプルデータベースを起動しました
マネジメントコンソールTimestreamにアクセスして、[データベースを作成] …
-
-
CloudWatchアラームをAWS CLIでテスト
CloudWatchアラームをテストするコマンドです。 –state …
-
-
ヤマムギ vol.10 (AWS)EC2モニタリングハンズオン 手順
このブログは2020/5/6に開催しました、「ヤマムギ vol.10 (AWS) …


