如何使用cloudwatch在闲置时自动停止EC2实例?

问题描述 投票:0回答:1

我制作了一个 python 脚本,它将数据(例如自上次用户输入以来的时间、CPU 使用情况、网络 I/O 等)发送到 websocket 端点,该端点被写入数据库,然后从中读取以确定实例是否需要被阻止。

但我的朋友告诉我,对于这个用例来说,使用 cloudwatch 会更好、更容易。据我所知,我可以使用任何一个指标(CPU 利用率、网络 IO 等)在 cloudwatch 上做出这一决定,但我怀疑这是否足以确定实例是否实际上处于空闲状态。我真的可以使用 cloudwatch 警报来解决我的问题吗?如果是这样,您可以提供一些资源我可以参考这个问题吗?

提前致谢!

P.S:我提到了this帖子,但似乎并没有真正回答我的问题。

python amazon-web-services amazon-ec2 amazon-cloudwatch
1个回答
0
投票

解决方案1(无需额外花钱): 您可以在 EC2 实例内运行 python 脚本并检查指标,然后关闭实例。 python 文件可以使用用户数据或 cron 作业运行。

解决方案2(成本): 我们可以定期运行 lambda 函数,并检查 ec2 实例的指标,从那里您还可以触发关闭。

您可以按原样使用它,也可以与 CloudWatch 一起使用,但这会让您额外头痛,因为将 CloudWatch 警报与 lambda 函数绑定。但这也是另一种方法。

解决方案 2 更好,因为 lambda 可以记录发生的任何情况,因此您将来可以进行调试。

© www.soinside.com 2019 - 2024. All rights reserved.