等待 AWS EC2 实例停止或启动完成

Awaiting AWS EC2 instance stop or start completion

我想通过 AWS EC2 API 发送请求以停止(或启动)一个实例,然后在机器处于 stopped 状态(或 running).

我正在使用适用于 .NET 的 AWS 开发工具包,并且尝试了 ec2Client.StopInstancesAsync 方法。它 returns 请求一发布,所以它 不会 在状态转换后进行异步回调。

我的总体目标是停止实例,一旦机器 stopped 更改 InstanceType,然后启动实例。看起来唯一的方法可能是发出停止请求,启动我自己的轮询机制以观察实例状态转换为 stopped,然后在完成后继续 InstanceType 更改。

我希望有一种更简单、更简洁的方式来等待转换完成。有人知道在 EC2 状态转换完成时收到通知的方法吗?

看来答案是否定的。当 EC2 实例转换完成时,似乎无法收到通知。轮询是实现此目的的方法。

除了轮询之外,无法验证状态。背后的原因是 API 停止请求的回复不包含实例状态的确认。所以你对此无能为力。