我怎样才能调用“完整生命周期动作”?

我怎样才能调用“完整生命周期动作”?

有一个由自动扩展组启动的 AWS EC2 实例。我希望将此实例放到待办的初始化期间的状态。

使用生命周期钩子可以很容易地实现这一点:

在此处输入图片描述

此钩子将等待 3600 秒,然后放弃实例。

我希望调用aws autoscaling complete-lifecycle-action正在初始化的 EC2 实例,但是我总是得到:

无法找到凭证。您可以通过运行“aws configure”来配置凭证。

然后我发现我可以创建一个 IAM角色,然后我可以将其附加到 EC2 实例,但是这也不起作用:

角色定义如下:

在此处输入图片描述

但是,当我选择在正在运行的实例上修改 IAM 角色时:

在此处输入图片描述

我怎样才能complete-lifecycle-action以最简单、最安全的方式从 EC2 实例发回?(即,我希望授予它仅发回此消息的权限;我希望该角色不包含任何扩大/缩小、修改 asg 详细信息等的权限)

答案1

对于第一个问题“无法找到凭证。您可以通过运行“aws configure”来配置凭证

您需要通过运行“aws configure”来配置 CLI 凭证。正确设置后,您应该能够运行任何 aws cli 命令。

使用 IAM 角色时情况会有所不同。您需要创建一个新角色,附加正确的策略,添加信任关系。然后,您需要使用 Event Bridge 创建自动化来捕获输出(令牌、instanceid 等),并将其传递给 SSM 或 Lambda 以完成生命周期挂钩

https://docs.aws.amazon.com/autoscaling/ec2/userguide/warm-pool-events-eventbridge-rules.html

相关内容