使用 Amazon Data Lifecycle Manager 示例 AWS CLI - AWS SDK代码示例

AWS 文档 AWS SDK示例 GitHub 存储库中还有更多SDK示例

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Amazon Data Lifecycle Manager 示例 AWS CLI

以下代码示例向您展示了如何使用 AWS Command Line Interface 与 Amazon Data Lifecycle Manager 配合使用来执行操作和实现常见场景。

操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接,您可以在其中找到有关如何在上下文中设置和运行代码的说明。

主题

操作

以下代码示例演示如何使用 create-default-role

AWS CLI

为 Amazon 创建所需的IAM角色 DLM

以下dlm create-default-role示例创建了用于管理快照的 AWS DataLifecycleManagerDefaultRole 默认角色。

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

此命令不生成任何输出。

有关更多信息,请参阅《亚马逊弹性计算云用户指南》中的 Amazon Data Lifecy cle Manager 的默认服务角色

以下代码示例演示如何使用 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" }

以下代码示例演示如何使用 delete-lifecycle-policy

AWS CLI

删除生命周期策略

以下示例删除了指定的生命周期策略。 :

aws dlm delete-lifecycle-policy --policy-id policy-0123456789abcdef0

以下代码示例演示如何使用 get-lifecycle-policies

AWS CLI

获取生命周期政策摘要

以下get-lifecycle-policies示例列出了您的所有生命周期策略。

aws dlm get-lifecycle-policies

输出:

{ "Policies": [ { "PolicyId": "policy-0123456789abcdef0", "Description": "My first policy", "State": "ENABLED" } ] }

以下代码示例演示如何使用 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 } } ] } } }

以下代码示例演示如何使用 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" } ] }