AWS CLI を使用した Amazon Data Lifecycle Manager の例 - AWS Command Line Interface

このドキュメントはバージョン 1 の AWS CLI のみを対象としています。AWS CLI のバージョン 2 に関連するドキュメントについては、バージョン 2 用ユーザーガイドを参照してください。

AWS CLI を使用した Amazon Data Lifecycle Manager の例

次のコード例は、Amazon Data Lifecycle Manager で AWS Command Line Interfaceを使用してアクションを実行し、一般的なシナリオを実装する方法を示しています。

アクションはより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、コンテキスト内のアクションは、関連するシナリオで確認できます。

各例には完全なソースコードへのリンクが含まれており、コードの設定方法と実行方法に関する手順を確認できます。

トピック

アクション

次のコード例は、create-default-role を使用する方法を示しています。

AWS CLI

Amazon DLM 用にひつような IAM ロールを作成するには

次の dlm create-default-role の例では、スナップショットを管理するための AWSDataLifecycleManagerDefaultRole デフォルトロールを作成します。

aws dlm create-default-role \ --resource-type snapshot

このコマンドでは何も出力されません。

詳細については、「Amazon Elastic Compute Cloud ユーザーガイド」の「Default service roles for Amazon Data Lifecycle Manager」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「CreateDefaultRole」を参照してください。

次の例は、create-lifecycle-policy を使用する方法を説明しています。

AWS CLI

ライフサイクルポリシーを作成するには

次の create-lifecycle-policy の例では、指定した時間にボリュームのスナップショットを毎日作成するライフサイクルポリシーを作成します。指定されたタグはスナップショットに追加され、タグもボリュームからコピーされてスナップショットに追加されます。新しいスナップショットの作成が指定された最大数を超える場合は、最も古いスナップショットが削除されます。

aws dlm create-lifecycle-policy \ --description "My first policy" \ --state ENABLED \ --execution-role-arn arn:aws:iam::12345678910:role/AWSDataLifecycleManagerDefaultRole \ --policy-details file://policyDetails.json

policyDetails.json の内容:

{ "ResourceTypes": [ "VOLUME" ], "TargetTags": [ { "Key": "costCenter", "Value": "115" } ], "Schedules":[ { "Name": "DailySnapshots", "CopyTags": true, "TagsToAdd": [ { "Key": "type", "Value": "myDailySnapshot" } ], "CreateRule": { "Interval": 24, "IntervalUnit": "HOURS", "Times": [ "03:00" ] }, "RetainRule": { "Count":5 } } ] }

出力:

{ "PolicyId": "policy-0123456789abcdef0" }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「CreateLifecyclePolicy」を参照してください。

次のコード例は、delete-lifecycle-policy を使用する方法を示しています。

AWS CLI

ライフサイクルポリシーを削除するには

次の例では、指定されたライフサイクルポリシーを削除します。

aws dlm delete-lifecycle-policy --policy-id policy-0123456789abcdef0
  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeleteLifecyclePolicy」を参照してください。

次のコード例は、get-lifecycle-policies を使用する方法を示しています。

AWS CLI

ライフサイクルポリシーの概要を取得するには

次の get-lifecycle-policies の例では、すべてのライフサイクルポリシーを一覧表示します。

aws dlm get-lifecycle-policies

出力:

{ "Policies": [ { "PolicyId": "policy-0123456789abcdef0", "Description": "My first policy", "State": "ENABLED" } ] }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetLifecyclePolicies」を参照してください。

次の例は、get-lifecycle-policy を使用する方法を説明しています。

AWS CLI

ライフサイクルポリシーを記述するには

次の get-lifecycle-policy の例では、指定されたライフサイクルポリシーの詳細を表示します。

aws dlm get-lifecycle-policy \ --policy-id policy-0123456789abcdef0

出力:

{ "Policy": { "PolicyId": "policy-0123456789abcdef0", "Description": "My policy", "State": "ENABLED", "ExecutionRoleArn": "arn:aws:iam::123456789012:role/AWSDataLifecycleManagerDefaultRole", "DateCreated": "2019-08-08T17:45:42Z", "DateModified": "2019-08-08T17:45:42Z", "PolicyDetails": { "PolicyType": "EBS_SNAPSHOT_MANAGEMENT", "ResourceTypes": [ "VOLUME" ], "TargetTags": [ { "Key": "costCenter", "Value": "115" } ], "Schedules": [ { "Name": "DailySnapshots", "CopyTags": true, "TagsToAdd": [ { "Key": "type", "Value": "myDailySnapshot" } ], "CreateRule": { "Interval": 24, "IntervalUnit": "HOURS", "Times": [ "03:00" ] }, "RetainRule": { "Count": 5 } } ] } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetLifecyclePolicy」を参照してください。

次の例は、update-lifecycle-policy を使用する方法を説明しています。

AWS CLI

例 1: ライフサイクルポリシーを有効にするには

次の update-lifecycle-policy の例では、指定されたライフサイクルポリシーを有効にします。

aws dlm update-lifecycle-policy \ --policy-id policy-0123456789abcdef0 \ --state ENABLED

例 2: ライフサイクルポリシーを無効にするには

次の update-lifecycle-policy の例では、指定されたライフサイクルポリシーを無効にします。

aws dlm update-lifecycle-policy \ --policy-id policy-0123456789abcdef0 \ --state DISABLED

例 3: ライフサイクルポリシーの詳細を更新するには

次の update-lifecycle-policy の例では、指定されたライフサイクルポリシーのターゲットタグを更新します。

aws dlm update-lifecycle-policy \ --policy-id policy-0123456789abcdef0 --policy-details file://policyDetails.json

policyDetails.json の内容。このファイルで参照されていないその他の詳細は、コマンドでは変更されません。

{ "TargetTags": [ { "Key": "costCenter", "Value": "120" }, { "Key": "project", "Value": "lima" } ] }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「UpdateLifecyclePolicy」を参照してください。