背景:
hadoop集群启动后,ambari 显示 spark01 的 hiveserver2 状态为stop
排错
http://hostname:10002/jmx
spark01的hiveserver2正常运行。
网上大多数说的是ambari监控时没有服务(如hiveserver2)对应pid文件权限导致访问失败
[因为启动时候使用手动启动,用户不同,产生权限问题] --> 论优先使用ambari命令的重要性
参考链接 https://www.xn--7qv19ae78e.cn/2017/10/18/2017-10-18-ambari-monitor-status-issues/
/run/hive/
查看各个hiveserver2 节点的pid,用户相同!但还是尝试了一遍,没什么用。
根据他这个思路,换了另一种想法,kill掉进程,ambari重启服务。成功
原因
ambari 显示是stop hiveserver2 ,再次启动时无关闭hiveserver2的命令。
根据他那个pid无权限的思路,想着是不是每次重启后生成新的pid,但用新pid查询不到旧pid服务。
在hiveserver2开启的情况下再次开启hiveserver2,生成的新文件pid,查不到旧的启动服务。
积累经验:
处理完后多观察一段时间,从监控ui和log两方面出发
发现正常运行,但ambari显示关闭的程序。评估kill掉进程的影响大小。kill后用ambari重启服务。