实例冻结/锁定,但未在日志中详细说明原因

实例冻结/锁定,但未在日志中详细说明原因

希望有人可以解释一下这个反复出现的问题。

我们在 AWS 上运行了一个中型实例。但它会随机停机,通常每周一次。我花了很多时间查看 apache 的访问/错误日志,试图找出原因,但事实证明诊断起来非常困难。从 EC2 控制台,该实例有一个绿色勾号图标,显示它正在运行,但我无法通过 ssh 连接,必须停止然后启动实例才能使其重新上线。

从之前宕机时的 Apache 错误日志中

127.0.0.1 - - [22/Jan/2012:06:25:03 +0000] "OPTIONS * HTTP/1.0" 200 152 "-" "Apache/2.2.20 (Ubuntu) (内部虚拟连接)"
127.0.0.1 - - [22/Jan/2012:06:25:03 +0000] "OPTIONS * HTTP/1.0" 200 152 "-" "Apache/2.2.20 (Ubuntu) (内部虚拟连接)"
127.0.0.1 - - [22/Jan/2012:06:25:03 +0000] "OPTIONS * HTTP/1.0" 200 152 "-" "Apache/2.2.20 (Ubuntu) (内部虚拟连接)"
127.0.0.1 - - [22/Jan/2012:06:25:03 +0000] "OPTIONS * HTTP/1.0" 200 152 "-" "Apache/2.2.20 (Ubuntu) (内部虚拟连接)"
127.0.0.1 - - [22/Jan/2012:07:19:46 +0000] "OPTIONS * HTTP/1.0" 200 152 "-" "Apache/2.2.20 (Ubuntu) (内部虚拟连接)"
127.0.0.1 - - [22/Jan/2012:07:19:47 +0000] "OPTIONS * HTTP/1.0" 200 152 "-" "Apache/2.2.20 (Ubuntu) (内部虚拟连接)"

从访问日志中:

[2012 年 1 月 22 日星期日 06:25:03] [通知] Apache/2.2.20 (Ubuntu) PHP/5.3.6-13ubuntu3.2 已配置 Suhosin-Patch — 恢复正常运行
[2012 年 1 月 22 日星期日 10:01:50] [通知] Apache/2.2.20 (Ubuntu) PHP/5.3.6-13ubuntu3.2 已配置 Suhosin-Patch — 恢复正常运行
[2012 年 1 月 22 日星期日 10:11:26] [通知] 捕获 SIGTERM,正在关闭

有人可以告诉我下一步该怎么做来诊断这个问题吗?

谢谢

答案1

不要将此视为纯粹的 Apache 问题。您给出的症状并不能证明这一点。(例如,这些日志包含没有什么不寻常——只是 Apache 在事件发生时没有完全关闭,这一点您已经知道了,因为您重新启动了机器)我并不是说您可以完全排除 Apache,但如果机器可以 ping 通但不能 SSH 通,我不会首先检查它。(EC2 中的绿色表示可以 ping 通,对吗?如果不是,那么您绝对应该 ping 它!)

检查系统日志(例如,消息日志,有时位于 /var/log/messages,以及 /var/log 和其他日志位置中的其他内容,包括在该系统上运行的任何其他应用程序的日志,包括 sshd 之类的日志)其他Apache 之外的应用程序。

另外,当您无法通过 SSH 连接时,是因为连接被拒绝还是 ssh 挂起了?只是好奇。如果/当此问题再次发生时,请检查是否可以访问任何其他服务,如果除了 httpd 和 sshd 之外还打开了其他服务(并且可 ping 通!)。

希望您能找到该问题!:-)

相关内容