ヤマムギ

growing hard days.

*

Amazon EC2のAMIイメージを自動取得して保持日数が過ぎたら削除

   

画像の保存をEC2に戻した事もあってEC2のバックアップの自動取得を勉強がてらやってみました。
当ブログサイトのEC2に対して定期実行しているので何かあれば修正します。

  • Amazon EC2のAMIイメージを自動取得
  • 保持日数が過ぎたAMIを登録解除して
  • スナップショットも削除
  • 結果はSlackへ通知
  • CloudWatchイベントからLambdaを実行
  • LambdaのランタイムはPython 3.6

ソースコード

Githubはこちらです。

  • AMIの情報(IDとスナップショット)取得では最初、Ownersを指定しなかったのでパブリックAMIも含めて全部見に行ってたみたいで処理が終わりませんでした。

  • purge_daysを加算したCreationDateと現在を比較して削除対象にするか判定しています。

このまま使う場合

  1. ダウンロードしたコードをzipにしてLambda関数を作成します。
  2. Slackでチームを作成、または既存のSlackでIncoming Webhookを設定します。
  3. Slackで #ec2_create_imageチャンネルを作ります。
  4. 環境変数を設定します。
  5. 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認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

Amazon Linux にnodejsとmongoDBをインストールする

EPEL リポジトリを利用してnodejsとnpmをインストールする [bash …

AWSのAmazon LinuxにGitマスターサーバをインストールしてRedmineリポジトリブラウザで見る

Amazon LinuxにGitをインストールする Gitをインストールして自動 …

S3バケットポリシーですべてDenyにしてしまったらルートユーザーの出番

特定のConditionsを指定して、それ以外はすべて拒否するS3バケットポリシ …

Amazon Rekognitionでイベント参加者の顔写真を解析して似ている人ランキングをその場で作る

2017/9/21に開催されたAWS Cloud Roadshow 2017 大 …

EC2 Ubuntu DesktopにRDP

Ubuntu Desktopが必要になりましたので、こちらのAWS EC2でデス …

Route 53のホストゾーンにサブドメインを登録する

親ドメインを移行しないでサブドメインの DNS サービスを Amazon Rou …

AWSのアカウントを新規作成と、最低限やっておいた方がいいMFAの設定

AWSのアカウントを新規作成する手順を書き出しておきます。 ※2017年8月6日 …

Systems Manager パブリックパラメータCLIでAWSのサービス数を出力してみました(2020/5/26)

先日のAWSのサービス数を数えてみました(2020/5/23)を見られて、お師匠 …

「CMC_Central 2024」に参加しました

個人サポーターとしてCMC_Central 2024に参加しました。 オープニン …

Amazon Connectの新規作成からプッシュボタン入力と発信元電話番号をLambdaで処理するまで

とりあえずやりたいことはタイトルに書いたとおり、「電話をかけて、プッシュボタンに …