ヤマムギ

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がやっていることも実装出来ますが、マネージドな機能として提供されるというのは良いことです。
どのレベルまでかはわかりませんが、例えばエラーキャッチやリトライなどをコーディング、管理しなくてもよくなるという効果が期待されます。
そして、コーディングしなくても実現できるということは、使えるユーザーの幅が拡がるということですね。

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - AWS ,

ad

ad

  関連記事

kintoneで設定したスケジュールにあわせてlambda(python)からSQSへメッセージを送る

EC2の起動停止をそろそろ手動でやるのも疲れてきそうなのと、やはり停止するのを忘 …

EC2とRDSのMySQLを他のAWSアカウントへ移設する

他のAWSアカウントへシステムごと移設した場合の手順です。 構成はEC2とRDS …

AWS CloudFormationでAmazon DynamoDBテーブルを作ってアイテムを追加する

デモ用にDynamoDBテーブルを作って消して、ということをたまにするので、Cl …

ACM(AWS Certificate Manager)の承認メールを受け取るためにAmazon SESを設定する

何のためでもいいのですが、ドメインは持っているけど、そのドメイン宛にメールを送ら …

AWS Toolkit for Eclipseをセットアップする

AWSでそろそろ課金がされつつありますので、夜中はインスタンスを自動停止して朝自 …

slackのbotをAWS Lambda(Python)+API Gatewayで構築

slackで投稿した内容に応じて返信したり調べ物したりしてくれるbotですが、こ …

リザーブドインスタンスはじめました

このブログも2014年9月にはじめたので、もうすぐ3年。 1件~17件とばらつき …

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

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

TuneCoreの売上データCSVをS3に格納してAthenaのクエリをRe:dashのデータソースにして可視化する

先日参加しましたAWS Summit Tokyo 2017で、 [JapanTa …

Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(失敗、手戻りそのまま記載版)

勉強のためブログサイトを長らくお世話になったロリポップさんから、AWSに移設する …