如何使用 Systems Manager Automation 为 EBS 支持的 EC2 实例自动创建 AMI?

上次更新日期:2020 年 10 月 12 日

我想为 Amazon Elastic Block Store (EBS) 支持的 Amazon Elastic Compute Cloud (Amazon EC2) 实例自动创建 Amazon 系统映像 (AMI)。该如何操作?

简短描述

您可以使用 AWS Systems Manager 创建维护时段,然后注册一个自动化任务来自动创建 AMI。此流程对 Windows 和 Linux 实例均适用。

您要为之创建 AMI 的实例必须在 Systems Manager 列为托管实例。首先,验证该实例是否符合所有使用 Systems Manager 的先决条件。如果该实例使用私有子网,您可以为 Systems Manager 创建 VPC 终端节点

注意(仅限 Windows):当您使用以下自动化流程时,Sysprep 在创建 AMI 之前尚未在 Windows 实例上运行。

解决方法

要自动创建 AMI,请执行以下步骤:

注意:如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误提示,请确保您使用的是最新的 AWS CLI 版本

  1. 创建一个 AWS Identity and Access Management (IAM) 角色并授予其在维护时段内创建 AMI 的权限。您可以使用 IAM 控制台AWS CLI适用于 Windows PowerShell 的工具
  2. 创建维护时段
    计划部分,对于指定使用,选择 Cron 计划生成器
  3. 为维护时段分配目标
  4. 注册 Automation 任务以创建 AMI。
    对于操作,选择 注册 Automation 任务
    对于 Automation 文档,选择 AWS-CreateImage
    对于 IAM 服务角色,请选择使用自定义服务角色,然后选择您在本文第 1 步中创建的 IAM 角色。
    输入参数 部分,对于 InstanceId,输入虚拟参数占位符 {{TARGET_ID}}