My id 0 not in the peer list

前言

集群使用外部的zk来管理所有的选举和通讯的,hbase内嵌了一个zk。每次运行hbase后,我的外部zk进程就会挂掉。取而代之的是一个名字叫做HQuorumPeer的进程!
名字是不是很眼熟。和我们的外部zk进程就多了个H?那么这个进程到底是怎么回事呢,搞明白为什么这个进程出现,搞明白为什么我外部的myid文件被篡改就搞明白了真相!
在这里插入图片描述

查明原因

每次我的myid文件都会被篡改,在日志中也没有反应相应的操作,那么只能做一个事情,那么就是将文件权限改为只读。当我把文件改为只读以后,奇妙的事情就这样发生了!
在这里插入图片描述启动完hadoop集群以后,我启动了hbase,这里就出现了写权限问题!那么问题来了,为什么hbase会操作我的myid呢。而且一个熟悉的进程名字出现在了日志上!
原来hbase内部的zk我一直没有去管理他!但是我把hbase的zkData目录指定给了hbase!而zkData这个目录我放了myid!

真相

原来是hbase在偷偷的改我的myid文件!那么怎么去处理呢?
在这里插入图片描述在hbase-env.sh 修改128行!
export HBASE_MANAGES_ZK=false
以防再次出现类似情况,建议将外部的myid文件权限改为只读!

再次启动一切正常!
在这里插入图片描述

总结

配置hbase要细心!我只配置了site文件,却忘记配置了env文件。
从源头解决问题,直接将文件权限修改,防止篡改。查名真相以后及时处理!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章