10
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Amazon Data Lifecycle Manager (Amazon DLM) を(自分でも)やってみた。

Last updated at Posted at 2018-08-17

Amazon Data Lifecycle Manager (Amazon DLM) とは?

[公式ドキュメントより]

Amazon Data Lifecycle Manager (Amazon DLM) を使用して、Amazon EBS ボリュームをバックアップする
スナップショットの作成、保持、削除を自動化できます。スナップショット管理を自動化すると、次のことが可能になります。
 
・ 定期的なバックアップスケジュールを実施して貴重なデータを保護する。
・ 監査担当者または社内のコンプライアンスが必要とするバックアップを保持する。
・ 古いバックアップを削除してストレージコストを削減する。

Amazon CloudWatch Events と AWS CloudTrail のモニタリング機能と組み合わせることで、
Amazon DLM は EBS ボリューム用の完全バックアップソリューションを追加コストなしで提供します。

以前は、LambdaやCLIで実装するか、サードパーティ製品を利用する方法が多かったのですが
(取得は、CloudWatch Eventsでも可能でしたが、世代管理が出来ず、、むむむ)
Amazon DLMに、置き換えることで、運用が軽減出来そうです。

利用方法

取得編(コンソール利用)

0. 対象EBSに、タグをつけます。

WebとDBサーバがある想定です。それぞれに、「DLM」タグをつけています。
Valueを分けているのは、" Policy=タグの Value "のため、WebとDBで時間や周期などを分けたい場合は、タグの Value を分ける必要があります。

amazon-dlm07.png

1. Data Lifecycle Manager を開きます。

EC2 > ELASTIC BLOCK STORE > Lifecycle Manager へ進みます。

amazon-dlm01.png

2. Policy を作成します。

「Create Snapshot Lifecycle Policy」を選択し、画面に設定内容を入力していきます。

設定前

amazon-dlm02.png
amazon-dlm03.png
設定項目
項目名 入力 備考
Description Policyの説明 ここ以外ではどこにも利用されない
Target volumes with tags Backupするvolumeを識別するリソースタグ 事前に対象volume にタグ付けしておく必要がある
一つのポリシーに対して、ユニークである必要があります。
Schedule name バックアップスケジュールの名前 取得したsnapshot の説明欄に利用される
Create snapshots every n Hours ポリシーの実行間隔 (時間単位)。サポートされている値は 12 と 24 です。
Snapshot creation start time ポリシーの実行時刻。
ポリシーの実行は、スケジュールした時刻から 1 時間以内に開始されます。
UTCなので気をつけます
Retention rule 各ボリュームに保持するスナップショットの最大数。
サポートされている範囲は 1 ~ 1000 です。
この上限に達すると、新しいスナップショットの作成時に最も古いスナップショットが削除されます。
Tag created snapshots 作成したスナップショットに適用するリソースタグ。
これらのタグは、Amazon DLM によって適用されるタグに加えて付けられます。
「Name」タグもここで入力すれば反映されます
IAM role スナップショットを作成、削除、記述し、ボリュームを記述する
アクセス許可のある IAM ロール。
AWS からデフォルトロール AWSDataLifecycleManagerDefaultRole が提供されます。
または、カスタム IAM ロールを作成することもできます。
デフォルトだと「AWSDataLifecycleManagerDefaultRole」という名前のロールが作成されます
Policy status after creation [Enable policy] (ポリシーの有効化) を選択すると、次のスケジュールした時刻にポリシーが実行されます。
ポリシーが実行されないようにするには、[Disable policy] (ポリシーの無効化) を選択します。

設定後

amazon-dlm04.png
amazon-dlm05.png
amazon-dlm06.png

結果確認編

Snapshot一覧から確認

上段は、手動で取ったSnapshotで、下段が、DLMで取得したSnapshotです。

amazon-dlm09.png

CloudTrail から確認

エラーコードも記載されるので、Snapshot取得に失敗した場合には有効かと思います。
https://docs.aws.amazon.com/ja_jp/dlm/latest/APIReference/CommonErrors.html

amazon-dlm11.png

CloudWatch Eventsで通知

  • CloudWatch > CloudWatch Events > ルール へ進みます。
[こういう雰囲気の設定をします(個人的には failed だけでいい)]

{
  "source": [
    "aws.ec2"
  ],
  "detail-type": [
    "EBS Snapshot Notification"
  ],
  "detail": {
    "event": [
      "createSnapshot"
    ],
    "result": [
      "failed",
      "succeeded"
    ]
  }
}
amazon-dlm08.png
  • (SNSは事前に作成済)イベントが発生した場合に以下のようなメールが通知されます。
amazon-dlm10.png

参考サイト

10
7
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?