ヤマムギ

growing hard days.

*

Amazon Data Lifecycle Manager(DLM)が東京リージョンで使えるようになったのでLambdaでAMI自動取得から乗り換えた

   

EBSのスナップショットを自動で作成してくれるAmazon Data Lifecycle Manager(DLM)が先日発表されましたが、早くも東京リージョンでも利用可能になりました。

このブログはWordPress(主にEC2+RDS)で構成しているので、「Amazon EC2のAMIイメージを自動取得して保持日数が過ぎたら削除」に書いているようにLambdaで世代管理しながら日次でAMIを作成していました。

このたびDLMが有効になったので、EC2のバックアップはDLMを使うことにしました。

  • Policy名を任意で入力します。
  • 対象のEBSはタグで指定します。
  • スケジュールを12時間おきか24時間おきかで設定します。
  • スナップショット作成時間をUTCで指定します。日本のAM4:30に取得されるようにしました。
  • スナップショットの世代数を決めます。今回7世代としました。

  • スナップショットに設定するタグを決めます。コスト配分タグを有効にしている場合はこの設定大切ですね。
  • IAMロールは自動で作成されるものにしました。

そして翌日確認したところ、「Created for policy」というコメントともに作成されていました。
タグは設定していたものと、aws:dlm:lifecycle-policy-id, aws:dlm:lifecycle-schedule-nameというキーが自動生成されていました。

もちろん、スナップショットから直接EC2を起動することは出来ないので、スナップショットからAMIを作成するか、スナップショットからボリュームを作ってAMIから起動したEC2からEBSをデタッチアタッチするなど、復旧の際の手順は必要です。
これは自動化しておけばいいかと思います。

AWSはマネジメントコンソールで出来る操作はすべてコードで扱えます。
LambdaでSDKを使ってコーディングすると非常に簡単に実装が出来ます。
なのでDLMがやっていることも実装出来ますが、マネージドな機能として提供されるというのは良いことです。
どのレベルまでかはわかりませんが、例えばエラーキャッチやリトライなどをコーディング、管理しなくてもよくなるという効果が期待されます。
そして、コーディングしなくても実現できるということは、使えるユーザーの幅が拡がるということですね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

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

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

 - AWS ,

ad

ad

  関連記事

DynamoDBテーブル項目をS3にエクスポート

DynamoDBテーブルを一時テーブルとして使っていて、毎回使い捨てしてます。 …

よくあるサーバーレスアーキテクチャで質問フォーム

この記事はServerless2 Advent Calendar 2018に参加 …

CloudFormation StackSetsでOrganizations組織のアカウントに一気にIAMロールを作成した

Organizationsで管理している各アカウントにIAMロールを作成したい場 …

AWS EC2でAMI(Amazon Machine Image)を作成しておく

前回まででひとまずRedmineを構築するところまで出来たので、念のためスナップ …

試したい事があるのでAWS でとりあえずAmazon Linuxのサーバを作る

1年間の無料キャンペーン期間中に検証する とある勉強会でせっかくAWSのアカウン …

Amazon Route 53プライベートホストゾーン設定

Amazon Route 53プライベートホストゾーンを作成してみました。 Ro …

AWS認定SAPの執筆開始にあたって環境を構築しました

AWS認定ソリューションアーキテクトプロフェッショナル対策本の執筆開始にあたりま …

S3オブジェクトへのリクエストをCloudTrail, Athenaで識別する(パーティショニング)

Amazon S3オブエジェクトへのリクエストをCloudTrail, Athe …

AWS Cloud9でJavaサンプルを実行する

リモートで共有開発ができるCloud9便利ですね。 Cloud9でJavaのサン …

AWS Lambda(Python3.7)でPandocを実行する

昨日まで(AWS Batch) 昨日までは、Pandocを実行して、S3バケット …