Luk*_*nko 9 linux debugging freeze
我有 15 个相同的 Linux RH 4.7 64 位服务器。他们运行集群数据库(集群是应用程序级别)。有时(每个月左右)一个随机的盒子(虽然从不一样)会冻结。
我可以 ping 盒子并且 ping 工作。如果我尝试在框中 ssh,我会得到:
ssh_exchange_identification: Connection closed by remote host
Run Code Online (Sandbox Code Playgroud)
SSH 设置正确。
当我去机房,尝试直接登录控制台时,我可以用Alt+切换控制台Fn,我可以输入用户名,并且显示字符,但是按Enter之后没有任何反应。我等了 8 个小时一次,它没有改变。
我设置了 syslog 以将所有内容记录到远程主机,但这些日志中没有任何内容。当我重新启动机器时,它可以正常工作。我已经运行了硬件测试 - 一切正常,日志中没有任何内容。机器也由 NAGIOS 监控,在冻结之前没有异常负载或活动。
我已经没有想法了;我还能做什么或检查什么?
听起来您的内核以某种方式恐慌,以至于 sshd 无法发送服务器密钥。可能是内核被楔入,使得网络堆栈仍在运行,但 vfs 层不可用。
当我在 RHEL4 系统上遇到类似问题时,我设置了netdump 和 netconsole 服务,以及一个专用的 netdump 和 syslog 服务器来捕获崩溃转储和内核崩溃信息。我还将 kernel.panic sysctl 设置为 10。这样,当系统发生紧急情况时,您将获得内核跟踪和该系统上的内存副本,您可以使用“崩溃”实用程序对其进行分析。
您当然也会从为主机设置串行控制台中受益,这样您就可以看到控制台输出并可能点击魔术 sysrq 键。另外,如果您愿意设置网络并且您有支持它的硬件,您可以使用IPMI 远程关闭、上电、重新启动和查询硬件。
(就其价值而言,RHEL5 具有与 kexec/kdump 类似的功能,只有故障转储存储在本地)