断网后CM进不了,jps查看发现全部 process information unavailable 状态。
ps -ef | grep 18785
发现进程不存在,说明真的是进程已经挂了。
解决办法
防止有假死进程,最好把process information unavailable都检查一下,细心总是没错的。
确定都挂的,进入tmp下,可以看到一堆 hsperfdata_* 的目录。
因为 CDH 是在 root 用户下安装,所以不用切换用户直接删除即可。
rm -rf hsperfdata_*
再查看 process information unavailable 已经全部消失。
重启所有cm-agent,最后重启cm-server。
systemctl start cloudera-scm-agent
systemctl start cloudera-scm-server
监听日志发现连接不上
tail -F /var/log/cloudera-scm-agent/cloudera-scm-agent.log
tail -F /var/log/cloudera-scm-server/cloudera-scm-server.log
agent 报错
error: [Errno 111] Connection refused
server报错
Communications link failure
这里根据日志可以判断是MySQL的连接问题。检查了下发现大概是长时间没操作MySQL导致权限问题,默认8小时。
给MySQL配置文件 /etc/my.cnf 的 [mysqld] 下修改断开等待时间长
wait_timeout=2147483
interactive_timeout=2147483
重启MySQL。
systemctl restart mysqld
问题解决。