假设我有一个带有服务的 ec2 实例/etc/init/my_service.conf
有内容
script
exec my_exec
end script
我如何监控该 ec2 实例,以便如果my_service
停止运行我可以采取行动吗?
您可以以“心跳”的形式将自定义指标发布到 CloudWatch。
- 在你的服务器上通过 cron 运行一个小脚本来检查
进程列表以查看 my_service 是否正在运行,如果是,则 make
A
put-metric-data
致电 CloudWatch。
- 该指标可以很简单,只需将数字“1”推入 CloudWatch 中的自定义指标即可。
- 设置 CloudWatch 警报,该警报在指标平均值低于 1 时触发
- 使警报的周期 >= cron 运行的周期,例如cron 每 5 分钟运行一次,如果发现两个 5 分钟周期的平均值低于 1,则发出警报。
- 确保您还处理了指标未发布的情况(例如 cron 无法运行或整个机器死机)。如果指标丢失,您可能需要设置警报。 (看这里:AWS Cloudwatch 心跳警报)
- 请注意,自定义指标将在您的 AWS 账单中增加 50c 的额外成本(对于一个指标来说并不是什么大问题 - 但如果您想要推送数百/数千个指标,则等式会发生巨大变化 - 也就是说,很高兴知道它不是免费的,因为人们会期望)
请参阅此处了解如何发布自定义指标:http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/publishingMetrics.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)