linux下僵尸进程的发现与处理(kill -9 无法杀掉的进程)

环境信息:

centos6.5

问题描述:

大数据集群HDFS的DataNode的一个节点down掉,去服务器查看,发现datanode节点还在,打算重新启动该节点的datanode,使用hadoop-daemon.sh stop datanode方式停掉datanode发现执行失败,提示使用kill -9杀掉进程,按照此方式执行,发现进程仍然存在,并未被杀掉

问题排查:

百度一下,kill -9无法杀掉的进程大概率是僵尸进程,使用top命令查看,发现有一个僵尸进程

使用命令:ps aux | grep Z

得到僵尸进程列表:

PID为178744的进程正好为出问题的datanode进程,问题得到证实

问题解决:

查看该进程的父进程ps -aux | grep 178744

看到该进程的父进程是89552即hdfs的balancer进程

停掉balancer进程,不久datanode的进程就被杀掉了

重新启动datanode进程:hadoop-daemon.sh start datanode,HDFS状态正常,问题解决

疑问:

hdfs的balancer进程为什么会导致datanode成为僵尸进程?此问题暂时未得到答案,后续继续研究,知道答案的朋友欢迎留言讨论或者告知

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值