Amazon EC2 Auto Scaling 问题排查:启动模板 - Amazon EC2 Auto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Amazon EC2 Auto Scaling 问题排查:启动模板

使用以下信息可帮助您诊断和修复在尝试为自动扩缩组指定启动模板时可能遇到的常见问题。

无法启动实例

如果您无法使用已指定的启动模板启动任何实例,请检查以下一般故障排除内容:Amazon EC2 Auto Scaling 问题排查:EC2 实例启动失败

您必须使用有效的完整启动模板(无效值)

问题:当您尝试为某个自动扩缩组指定启动模板时,收到 You must use a valid fully-formed launch template 错误。您可能遇到此错误,因为只有在使用启动模板的自动扩缩组被创建或更新时,才会对启动模板中的值进行验证

原因 1:如果您收到 You must use a valid fully-formed launch template 错误,则表示有些问题导致 Amazon EC2 Auto Scaling 将启动模板的某些内容视为无效。这是一个通用错误,可能由几种不同的原因导致。

解决方案 1:请尝试以下步骤进行故障排除:

  1. 请注意错误消息的第二部分以查找更多信息。在遇到 You must use a valid fully-formed launch template 错误后,请参阅更具体的错误消息,该消息标识您需要解决的问题。

  2. 如果您无法找到原因,请使用 RunInstances 命令测试您的启动模板。使用 --dry-run 选项,如以下示例中所示。这使您可以重现问题并提供有关问题原因的见解。

    aws ec2 run-instances --launch-template LaunchTemplateName=my-template,Version='1' --dry-run
  3. 如果值无效,请验证指定的资源是否存在且正确。例如,在您指定 Amazon EC2 密钥对时,资源必须存在于您从中创建或更新自动扩缩组的账户和区域中。

  4. 如果缺少预期信息,请验证您的设置并根据需要调整启动模板。

  5. 进行更改后,使用 --dry-run 选项重新运行 RunInstances 命令,以验证您的启动模板是否使用有效的值。

有关更多信息,请参阅为 Auto Scaling 组创建启动模板

您没有权限使用启动模板(IAM 权限不足)

问题:当您尝试为某个自动扩缩组指定启动模板时,收到 You are not authorized to use launch template 错误。

原因 1:如果您尝试使用启动模板,但您使用的 IAM 凭证没有足够的权限,则会收到一条错误,显示您没有权限使用启动模板。

解决方案 1:验证您用于发出请求的 IAM 凭证具有调用所需 EC2 API 操作的权限,包括 ec2:RunInstances 操作。如果在启动模板中指定了任何标签,您还必须拥有使用 ec2:CreateTags 操作的权限。

解决方案 2:验证您用于发出请求的 IAM 凭证被分配了 AmazonEC2FullAccess 策略。该 Amazon 托管策略授予对所有 Amazon EC2 资源和相关服务的完全访问权限,包括 Amazon EC2 Auto Scaling、CloudWatch 和 Elastic Load Balancing。

原因 2:如果您尝试使用指定实例配置文件的启动模板,则必须具有传递与实例配置文件关联的 IAM 角色的 IAM 权限。

解决方案 3:验证您用于发出请求的 IAM 凭证具有将指定角色传递给 Amazon EC2 Auto Scaling 服务的正确权限。有关更多信息,请参阅在 Amazon EC2 实例上运行的应用程序的 IAM 角色。有关实例配置文件相关的进一步故障排查主题,请参阅 IAM 用户指南中的 Amazon EC2 和 IAM 故障排查

有关为启动模板设置 IAM 权限的更多信息,请参阅 启动模板支持