繁体   English   中英

如何添加运行状况检查以检查我在 aws autoscale 中的实例是否与另一个独立实例成功建立了连接

[英]How can I add a health check to check if my instances in aws autoscale established a successful connection with another independent instance

目前,我有多个实例在 AWS 自动缩放组下运行,该组从 AWS SQS 轮询消息。 我的实例需要在开始处理传入消息之前与另一个实例建立连接。

有时会发生我的一个实例无法建立连接的情况,我想在这里添加一个健康检查来监控连接状态并基于此终止实例。 我认为默认的 EC2 运行状况检查不会处理这种情况。

有什么办法可以添加健康检查来处理上述情况。

您确实需要为此进行某种自定义运行状况检查,因为任何内置指标(如 CPU 使用率、网络输入/输出)在这里都不起作用。

一种想法是让这些实例使用每隔几分钟运行一次的 cron 作业进行引导,并检查连接是否已启动并正在运行。 否则,实例可能会使用 CLI 或 SDK 将自身设置为不健康。

这是一段 bash 代码示例,它获取运行代码的实例的实例 ID,然后将自身标记为不健康。 这将触发 ASG 更换它。

EC2_INSTANCE_ID="`wget -q -O - http://169.254.169.254/latest/meta-data/instance-id`"
aws autoscaling set-instance-health --instance-id $EC2_INSTANCE_ID --health-status Unhealthy

资源:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM