你的位置:首页 > 默认分类

Linux如何判断OOM

2017-02-16 浏览:(1440) 默认分类 评论(0)

OOM之怕

OOM(Out of Memory)的机器僵而不死,对应用来说是最大的伤害,所以我们需要有一种有效的监控手段来判断机器是否是OOM。

OOM机器的特征

机器能否ping通

机器无法ssh,但是能telnet 22端口,却无法ssh上去

OOM时机器状态的猜测

Linux的kernel可能还是活的,至少tcp/ip协议栈还是可以工作的,因为ip还能ping通,22端口依然在监听

上层应用都不响应了,比如telnet 22端口能连接上,但输入任何字符后无响应

OOM监控脚本

#/bin/bash
ips='
192.168.1.1
192.168.1.2
192.168.1.3
'
for i in $ips
do
#判断是否能ping通
if ping -c2 -w5 $i 2>/dev/null ; then
#用nc判断22端口是否能否响应,使用nc -w参数设定nc 超时时间
if echo 'hello' | nc -w 10 $i 22 | grep -q 'OpenSSH' ; then
echo "$ip is oom"
fi
fi
done


  • 发表评论
  • 查看评论
【暂无评论!】

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。