创建hbaseindexer出现 0 running

新建hbase-indexer后通过hbase-indexer list-indexers发现SEP subscription ID: null并且0 running processes,如下:

INDEXER_NAME
  + Lifecycle state: ACTIVE
  + Incremental indexing state: SUBSCRIBE_AND_CONSUME
  + Batch indexing state: INACTIVE
  + SEP subscription ID: null
  + SEP subscription timestamp: 2016-09-25T14:40:37.005+08:00
  + Connection type: solr
  + Connection params:
    + solr.collection =COLLECTION_NAME
    + solr.zk = node1:2181,node2:2181,node3:2181/solr
  + Indexer config:
      407 bytes, use -dump to see content
  + Indexer component factory: com.ngdata.hbaseindexer.conf.DefaultIndexerComponentFactory
  + Additional batch index CLI arguments:
      (none)
  + Default additional batch index CLI arguments:
      (none)
  + Processes
    + 0 running processes
    + 0 failed processes

http://www.cnblogs.com/husky/p/solr.html 可知,应该是之前配置的indexer和hbase中的连接信息并没有清理掉,又重新创建了indexer。

2. 恢复过程

  1. 删除indexer。
  2. 关闭hbase-solr-indexer服务,solr服务,关闭hbase集群
  3. 清理zookeeper上和indexer有关(/ngdata),和hbase有关(/hbase)(放心删除/hbase!zk下的目录会恢复的,并且表数据不会收到影响)
  4. 重新启动hbase集群,solrcloud, hbase-solr-indexer服务。
  5. 重新开始配置Lily hbase indexer。

3. 总结

删除solr的zk目录/solr,再启动solr会报错。删除以后恢复过来的solr在zk上只剩下这些节点ls /solr [solr, clusterprops.json, zkdtsm]
而原来是有ls /solr [configs, clusterprops.json, clusterstate.json, aliases.json, solr.xml, solr, live_nodes, overseer, overseer_elect, collections, zkdtsm]
上面这问题和solr没什么关系,主要是没将hbase上面的东西删除干净导致,无需删除/solr就可以恢复。

4. 其他相关问题

4.1 Hbase启动失败

报错信息如下:

HRegionServer	
ABORTING region server master,60020,1506502095106: Unhandled: Failed replication handler create
java.io.IOException: Failed replication handler create
HRegionServer	
Failed init
java.io.IOException: Failed replication handler create

查找zk目录/hbase/rs中的master,60020,1506502095106失败,建议关闭HBase集群,删除zk的/hbase目录。(不过这样如果配置了hbase-indexer可能要重建)

原文地址:https://www.cnblogs.com/stillcoolme/p/7601711.html