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

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

EBS 支持的 AMI 的默认策略

以下过程演示了如何创建 EBS 支持的 AMI 的默认策略。

Console
创建 EBS 支持的 AMI 的默认策略
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择 Lifecycle Manager,然后选择创建生命周期策略

  3. 对于策略类型,请选择默认策略,然后选择由 EBS 支持的 AMI 策略

  4. 对于描述,输入策略的简短描述。

  5. 对于 IAM 角色,请选择有权管理 AMI 的 IAM 角色。

    我们建议您选择默认值以使用 Amazon Data Lifecycle Manager 提供的默认 IAM 角色。但是,您还可以使用之前创建的自定义 IAM 角色。

  6. 对于创建频率,请指定您希望策略运行的频率,并从实例创建 AMI。

    您指定的频率还决定了备份哪些实例。该策略将仅备份在指定频率内未通过任何其他方式备份的实例。例如,如果您将创建频率指定为 3 天,则该策略将仅会从过去 3 天内未备份的实例创建 AMI。

  7. 对于保留期,请指定您希望策略将其创建的 AMI 保留的时长。当 AMI 达到保留阈值时,将会被自动取消注册并删除其关联的快照。保留期必须大于或等于创建频率。

  8. 可选)配置排除参数,以从计划备份中排除特定实例。策略运行时,将不会备份已排除的实例。

    1. 要排除具有特定标签的实例,请选择添加标签,然后指定标签键和值。该策略不会从具有任何指定标签的实例创建 AMI。

  9. 可选)在高级设置中,请指定策略应执行的其他操作。

    1. 要将分配的标签从源实例复制到其 AMI,请选择从实例复制标签

    2. 禁用扩展删除后:

      • 如果源实例终止,Amazon Data Lifecycle Manager 将根据保留期继续取消注册之前创建的 AMI,直至(但不包括)最后一个 AMI。如果您希望 Amazon Data Lifecycle Manager 取消注册所有 AMI,包括最后一个 AMI,请选择扩展删除

      • 如果策略被删除或进入 errordisabled 状态,Amazon Data Lifecycle Manager 将停止取消注册 AMI。如果您希望 Amazon Data Lifecycle Manager 继续取消注册 AMI,包括最后一个 AMI,请选择扩展删除

      注意

      如果启用“扩展删除”,则可以同时覆盖上述两种行为。

    3. 要将该策略创建的 AMI 复制到其他区域,请选择创建跨区域副本,然后选择最多 3 个目标区域。

      • 如果源 AMI 已加密或默认情况下启用了目标区域的加密功能,则会在目标区域中使用 EBS 加密的默认 KMS 密钥对复制的 AMI 进行加密。

      • 如果源 AMI 未加密且默认情况下禁用目标区域的加密功能,则复制的 AMI 为未加密 AMI。

  10. 可选)要向策略添加标签,请选择添加标签,然后指定标签键和值。

  11. 选择创建默认策略

    注意

    如果发生 Role with name AWSDataLifecycleManagerDefaultRoleForAMIManagement already exists 错误,请参阅 故障排除 来了解更多信息。

Amazon CLI
创建 EBS 支持的 AMI 的默认策略

使用 create-lifecycle-policy 命令。您可以通过以下两种方法之一来指定请求参数,具体取决于您的用例或偏好:

  • 方法 1:

    $ aws dlm create-lifecycle-policy \ --state ENABLED | DISABLED \ --description "policy_description" \ --execution-role-arn role_arn \ --default-policy INSTANCE \ --create-interval creation_frequency_in_days (1-7) \ --retain-interval retention_period_in_days (2-14) \ --copy-tags | --no-copy-tags \ --extend-deletion | --no-extend-deletion \ --cross-region-copy-targets TargetRegion=destination_region_code \ --exclusions ExcludeTags=[{Key=tag_key,Value=tag_value}]

    例如,要创建 EBS 支持的 AMI 的默认策略 [该策略以该地区所有实例为目标、使用默认 IAM 角色、每天运行(默认)并将 AMI 保留 7 天(默认)],您需要指定以下参数:

    $ aws dlm create-lifecycle-policy \ --state ENABLED \ --description "Daily default AMI policy" \ --execution-role-arn arn:aws:iam::account_id:role/AWSDataLifecycleManagerDefaultRoleForAMIManagement \ --default-policy INSTANCE
  • 方法 2:

    $ aws dlm create-lifecycle-policy \ --state ENABLED | DISABLED \ --description "policy_description" \ --execution-role-arn role_arn \ --default-policy INSTANCE \ --policy-details file://policyDetails.json

    其中 policyDetails.json 包含以下内容:

    { "PolicyLanguage": "SIMPLIFIED", "PolicyType": "IMAGE_MANAGEMENT", "ResourceType": "INSTANCE", "CopyTags": true | false, "CreateInterval": creation_frequency_in_days (1-7), "RetainInterval": retention_period_in_days (2-14), "ExtendDeletion": true | false, "CrossRegionCopyTargets": [{"TargetRegion":"destination_region_code"}], "Exclusions": { "ExcludeTags": [{ "Key": "exclusion_tag_key", "Value": "exclusion_tag_value" }] } }