View a markdown version of this page

跨账户和区域启用 Data Lifecycle Manager 默认策略 - Amazon EBS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

跨账户和区域启用 Data Lifecycle Manager 默认策略

使用 Amazon CloudFormation StackSets,您可以通过一次操作在多个账户和 Amazon 区域启用 Amazon 数据生命周期管理器的默认策略。

您可以使用堆栈集通过以下方式之一启用默认策略:

  • 在整个 Amazon 组织中 -确保在整个组织或 Amazon 组织中的特定组织单位中一致地启用和配置默认策略。这是使用服务管理的权限完成的。 Amazon CloudFormation StackSets 代表您创建所需的 IAM 角色。

  • 跨特定 Amazon 账户 -确保在特定目标账户中一致地启用和配置默认策略。这需要自行管理权限。您可以创建在堆栈集管理员账户和目标账户之间建立信任关系所需的 IAM 角色。

有关更多信息,请参阅《Amazon CloudFormation 用户指南》中的堆栈集的权限模型

使用以下步骤在整个 Amazon 组织、特定 OU 或特定目标账户上启用 Amazon 数据生命周期管理器的默认策略。

先决条件

根据启用默认策略的方式,执行以下操作之一:

Console
要在... 上启用默认策略 Amazon 组织或跨特定目标客户
  1. 在处打开 Amazon CloudFormation 控制台https://console.aws.amazon.com/cloudformation

  2. 在导航窗格中,选择 StackSets,然后选择创建 StackSet

  3. 对于权限,根据启用默认策略的方式,执行以下操作之一:

    • (在整个 Amazon 组织中)选择Service-managed 权限

    • (跨特定目标账户)选择Self-service 权限。然后,对于 IAM 管理员角色 ARN,选择您为管理员账户创建的 IAM 服务角色,对于 IAM 执行角色名称,输入您在目标账户中创建的 IAM 服务角色的名称。

  4. 对于准备模板,选择使用示例模板

  5. 对于示例模板,执行以下操作之一:

    • (EBS 快照的默认策略)选择为 EBS 快照创建 Amazon Data Lifecycle Manager 默认策略

    • (AMI 的默认政策)选择 “ EBS-backed 为 AM I 创建亚马逊数据生命周期管理器默认策略”。EBS-backed

  6. 选择下一步

  7. 对于StackSet 名称StackSet 描述,请输入描述性名称和简要描述。

  8. 参数部分,根据需要配置默认策略设置。

    注意

    对于关键工作负载,我们建议 CreateInterval = 1 天 RetainInterval = 7 天

  9. 选择下一步

  10. (可选)对于标签,指定标签以帮助您识别 StackSet 和堆栈资源。

  11. 对于托管执行,选择活动

  12. 选择下一步

  13. 对于 Add stacks to stack set(将堆栈添加到堆栈集),选择 Deploy new stacks(部署新堆栈)。

  14. 根据启用默认策略的方式,执行以下操作之一:

    • (跨 Amazon 组织)对于部署目标,请选择以下选项之一:

      • 要在整个 Amazon 组织中部署,请选择 “部署到组织”

      • 要部署到特定组织单位(OU),请选择部署到组织单位,然后在 OU ID 中输入 OU ID。要添加其他 OU,请选择添加其他 OU

    • (跨特定目标账户)对于账户,执行以下操作之一:

      • 要部署到特定目标账户,请选择在账户中部署堆栈,然后对于账号,输入目标账户的 ID。

      • 要部署到特定 OU 中的所有账户,选择将堆栈部署到组织单位中的所有账户,然后对于组织编号,输入目标 OU 的 ID。

  15. 对于自动部署,选择已激活

  16. 对于账户删除行为,选择保留堆栈

  17. 对于指定区域,选择要在其中启用默认策略的特定区域,或者选择添加所有区域以在所有区域中启用默认策略。

  18. 选择下一步

  19. 查看堆栈集设置,选择 “我确认这 Amazon CloudFormation 可能会创建 IAM 资源”,然后选择 “提交”

Amazon CLI
要在... 上启用默认策略 Amazon 组织
  1. 创建堆栈集。使用 create-stack-set 命令。

    对于 --permission-model,请指定 SERVICE_MANAGED

    对于 --template-url,指定以下模板 URL 之一:

    • ( EBS-backed AMI 的默认策略)https://s3.amazonaws.com/cloudformation-stackset-sample-templates-us-east-1/DataLifecycleManagerAMIDefaultPolicy.yaml

    • (EBS 快照的默认策略)https://s3.amazonaws.com/cloudformation-stackset-sample-templates-us-east-1/DataLifecycleManagerEBSSnapshotDefaultPolicy.yaml

    对于 --parameters,指定默认策略的设置。有关支持的参数、参数描述和有效值,请使用 URL 下载模板,然后使用文本编辑器查看模板。

    对于 --auto-deployment,请指定 Enabled=true, RetainStacksOnAccountRemoval=true

    $ aws cloudformation create-stack-set \ --stack-set-name stackset_name \ --permission-model SERVICE_MANAGED \ --template-url template_url \ --parameters "ParameterKey=param_name_1,ParameterValue=param_value_1" "ParameterKey=param_name_2,ParameterValue=param_value_2" \ --auto-deployment "Enabled=true, RetainStacksOnAccountRemoval=true"
  2. 部署堆栈集。使用 create-stack-instances 命令。

    对于 --stack-set-name,指定您在上一步中创建的堆栈集的名称。

    对于 --deployment-targets OrganizationalUnitIds,指定根 OU 的 ID 以部署到整个组织,或指定 OU ID 以部署到组织中的特定 OU。

    对于--regions,指定要在其中启用默认策略的 Amazon 区域。

    $ aws cloudformation create-stack-instances \ --stack-set-name stackset_name \ --deployment-targets OrganizationalUnitIds='["root_ou_id"]' | '["ou_id_1", "ou_id_2]' \ --regions '["region_1", "region_2"]'
在特定目标账户中启用默认策略
  1. 创建堆栈集。使用 create-stack-set 命令。

    对于 --template-url,指定以下模板 URL 之一:

    • ( EBS-backed AMI 的默认策略)https://s3.amazonaws.com/cloudformation-stackset-sample-templates-us-east-1/DataLifecycleManagerAMIDefaultPolicy.yaml

    • (EBS 快照的默认策略)https://s3.amazonaws.com/cloudformation-stackset-sample-templates-us-east-1/DataLifecycleManagerEBSSnapshotDefaultPolicy.yaml

    对于 --administration-role-arn,指定您之前为堆栈集管理员创建的 IAM 服务角色的 ARN。

    对于 --execution-role-name,指定您在目标账户中创建的 IAM 服务角色的名称。

    对于 --parameters,指定默认策略的设置。有关支持的参数、参数描述和有效值,请使用 URL 下载模板,然后使用文本编辑器查看模板。

    对于 --auto-deployment,请指定 Enabled=true, RetainStacksOnAccountRemoval=true

    $ aws cloudformation create-stack-set \ --stack-set-name stackset_name \ --template-url template_url \ --parameters "ParameterKey=param_name_1,ParameterValue=param_value_1" "ParameterKey=param_name_2,ParameterValue=param_value_2" \ --administration-role-arn administrator_role_arn \ --execution-role-name target_account_role \ --auto-deployment "Enabled=true, RetainStacksOnAccountRemoval=true"
  2. 部署堆栈集。使用 create-stack-instances 命令。

    对于 --stack-set-name,指定您在上一步中创建的堆栈集的名称。

    对于--accounts,指定目标 Amazon 帐户的 ID。

    对于--regions,指定要在其中启用默认策略的 Amazon 区域。

    $ aws cloudformation create-stack-instances \ --stack-set-name stackset_name \ --accounts '["account_ID_1","account_ID_2"]' \ --regions '["region_1", "region_2"]'