是否有任何服务可以监控我的网站,如果网站停机,重新启动我的ec2实例?

时间:2012-06-21 03:24:19

标签: mysql wordpress apache amazon-ec2 monitoring

我在EC2上有一个微型实例,我在其上部署了一个wordpress网站。但由于mysql被杀,该网站将每两天关闭一次,因此访问者会收到“500内部服务器错误”。 我需要登录AWS,然后重启实例。我知道我应该优化apache配置,但重启实例将是一个简单的解决方案。 我正在使用可以监控我的网站的服务,当网站关闭时,他们会向我发送电子邮件,但他们无法重启EC2实例。

我如下配置apache,现在可以使用:

StartServers       1
MinSpareServers    1
MaxSpareServers    5
MaxClients        10
MaxRequestsPerChild  4000

3 个答案:

答案 0 :(得分:0)

也许你可以创建一个bash,然后把它放在/etc/cron.hourly中每小时运行一次。

以下是bash的内容。

#!/bin/bash
#Replace MYSQL_PORT with the real port number.
netstat -na | grep LISTEN | grep MYSQL_PORT
if [ $? != 0 ]; then
  reboot
fi

不要忘记将其设为可执行文件,如下所示。

chmod 0755 /etc/cron.hourly/monitor_mysql.sh

此外,您可以通过在/etc/cron.d/中创建一个文件来更频繁地检查,如下所示,每隔5分钟检查一次。

# vi /etc/cron.d/monitor_mysql
*/5 * * * *     root /path/to/monitor_mysql.sh

答案 1 :(得分:0)

如果您正在寻找使用任何开源工具的解决方案,您可以随时尝试Nagios。哪些是监视以及重新启动失败的服务,但需要一些配置工作。您可以参考Nagios Site Nagios Configuration

答案 2 :(得分:0)

如果您需要每隔几天重新启动,则会出现问题。我不认为这是你的Apache配置,但很多其他事情都可能是错误的。

您可以使用重启脚本,但您还应该监控正常运行时间(使用www.downnotifier.com之类的服务)如果您没有达到99.7%的正常运行时间,您可能会考虑重新安装。