【发布时间】:2020-04-04 21:26:45
【问题描述】:
我必须为偶尔使用的 Web 应用程序设置一个 AWS 实例,一次几个小时,每月几次。该应用程序在虚拟 CPU 和内存方面需要一个相当大的实例,因此保持它 24/7 运行会产生高昂的费用,而且由于它的使用时间低于 ~5%,我正在寻找一种自动挂起的方法如果 CPU 利用率低于 10% 超过 2 小时(例如),则实例。此外,理想情况下(但不是严格要求)对应用程序 URL 的请求会在实例暂停时启动该实例。
- 我的第一个想法是设置 CloudWatch 以记录对 URL 的任何请求以及实例的 CPU 利用率。然后,一个 Lambda 函数会定期检查最后一个请求是否在 2 小时前,以及这段时间内 CPU 利用率是否也很低;如果为真,则暂停实例。
- 可以通过一个特殊的“唤醒” URL(与应用程序的 URL 分开)来启动实例,该 URL 会触发 lambda 函数以在实例处于睡眠状态时唤醒实例。
是否有推荐的或更标准的方法来实现这一点?
【问题讨论】:
标签: amazon-web-services amazon-ec2 aws-lambda amazon-cloudwatch suspend