设置 Amazon Cloudwatch 以在服务器宕机时收到警报

设置 Amazon Cloudwatch 以在服务器宕机时收到警报

我有一个在 Amazon EC2 上运行的实例,我将其变成了一个网络服务器。

现在我一直在研究 cloudwatch,但我不知道它是否是适合这项工作的工具。基本上,无论出于什么原因,当服务器宕机时,我都想得到通知。

也许服务器遭到了黑客攻击,或者服务器由于某种原因关闭,我希望收到有关该事件的通知。

我启用了 clouwatch,并尝试设置警报,但我只看到网络输入输出或 CPU 使用率以及 d metrix 等信息。现在我不知道这些是否能起到作用。

答案1

一个建议是监控一个应该始终具有数值的指标 - 例如 CPU 使用率,并在指标状态为“数据不足”时触发警报,您​​可以使用 Amazon 的 SNS 通知您这一点。

或者,您可以设置自定义指标,返回特定服务(httpd、mysql 等)的二进制状态,并在其中任何一个读数为 0 时生成警报。这种方法提供了更精细的细节的可能性 - 将其与“数据不足”相结合以涵盖所有情况。

使用一些可以实际监控您网站的东西(例如 Pingdom、UptimeRobot 等)可能会更成功。

答案2

您可以实施EC2 状态检查。它是从 EC2 仪表板完成的。转到实例,选择您的实例,选择状态检查选项卡(实例描述旁边)单击创建状态检查警报默认的“状态检查失败(任何)”应该很好。我总是将间隔设置为大于 1,这样我就不会为瞬态问题而烦恼。

也可以将 EC2 设置为自动恢复如果您的实例由于某种原因发生故障。

我还推荐一个辅助监控系统。Dumb 就很适合这个。我设置了 Linux 实用程序 mon,它指向另一个主机上的 Web 服务器。如果它连续两次无法获得 200 响应代码,我就会收到一封电子邮件。

答案3

您可以使用 OpsGenie (http://www.opsgenie.com) 为 CloudWatch 发送丰富的警报。目前 CloudWatch 具有一组有限的警报机制,包括通过其 SNS 机制发送的电子邮件和短信。

您可以配置 CloudWatch 来调用 OpsGenie Web 服务 API,根据收件人的偏好通过向 iPhone/Android 应用程序、短信、语音呼叫等方式推送通知,快速通知合适的人员。

请参阅以下博客文章以获取详细信息:

http://www.opsgenie.com/blog/2012/09/04/aws-cloudwatch-alarms-on-your-mobile-with-opsgenie.html

答案4

您可以使用 Route 53 及其“健康检查”。通过它,您可以发送 SNS 警报,还可以将用户重定向到另一个辅助网站或错误屏幕。我认为这比 Cloudwatch 更能解决您的问题。

相关内容