CDH启动tserver报错:java.lang.IllegalStateException: Multiple processes with same name

【现象】

在CDH界面上重启kudu tserver时界面报错:

CDH启动tserver报错:java.lang.IllegalStateException: Multiple processes with same name_第1张图片

 

【原因】

1.首先查看cloudera-scm-agent的日志cm/log/cloudera-scm-agent/supervisord.log,看到:

2018-09-26 16:14:15,838 INFO exited: 1132-kudu-KUDU_TSERVER (terminated by SIGABRT; not expected)
2018-09-26 16:14:16,839 INFO gave up: 1132-kudu-KUDU_TSERVER entered FATAL state, too many start retries too quickly

2.cloudera-scm-agent在本机上由于某种原因上次托管的进程在db里有脏数据,而再次启动时db里脏数据没有清洗掉再次插入一条进程记录导致报错。

 

【解决】

登录scm使用的db,脏数据的表在cm这个库里:

mysql>use cm;

mysql>select PROCESS_ID  from PROCESSES where PROCESS_USER='kudu' and STATUS_LINKS like '%hadoop04%'\G;

*************************** 1. row ***************************
PROCESS_ID: 1132
*************************** 2. row ***************************
PROCESS_ID: 1158
2 rows in set (0.00 sec)

果然看到2条以上的数据! 该PROCESSES表记录了所有服务的当前进程记录,一个机器上只应该有1个记录,于是手动将这几条数据删除重启tserver即可。

mysql> delete from PROCESSES_DETAIL where PROCESS_ID in (1132,1158); delete from PROCESS_ACTIVE_RELEASES where PROCESS_ID in (1132,1158); delete from PROCESSES where PROCESS_ID in (1132,1158);

OK解决了

 

【总结】

遇到问题还是要仔细根据报错查看对应的日志,根据错误google,或者自己尝试顺藤摸瓜解决,在解决过程中也要考虑到上下游日志。

你可能感兴趣的:(大数据)