복붙노트

[HADOOP] FATAL master.HMaster : 예기치 않은 상태 : .. 오프라인으로 전환 할 수 없습니다

HADOOP

FATAL master.HMaster : 예기치 않은 상태 : .. 오프라인으로 전환 할 수 없습니다

심각한 Hbase 충돌 문제가 있습니다. 하나의 마스터 서버와 두 개의 리전 서버와 함께 HBase 0.94.7을 사용하고 있습니다. HBase 마스터가 정기적으로 다운되어 다시 시작할 수 없습니다. 다음과 같이 마스터 로그가 있습니다.

DEBUG master.AssignmentManager: Handling transition=RS_ZK_REGION_CLOSED, server=master,60020,1374506461230, region=46c2333f401964bf877254be19c2cc8c
DEBUG handler.ClosedRegionHandler: Handling CLOSED event for 6423df864603aa6e8c45c726ab3ae62f
DEBUG master.AssignmentManager: Forcing OFFLINE; was=LogDetail,\x00\x00\x01\xE8\x00\x00\x01?\xF8\xB3\x8F\x17\xCE\xE2g\x84,1374498065657.6423df864603aa6e8c45c726ab3ae62f. state=CLOSED, ts=1374508769672, server=slave,60020,1374506460892
DEBUG zookeeper.ZKAssign: master:60000-0x14006f52f3f000e Creating (or updating) unassigned node for 6423df864603aa6e8c45c726ab3ae62f with OFFLINE state
FATAL master.HMaster: Unexpected state : LogDetail,\x00\x00\x01\xE8\x00\x00\x01?\xF6\xC17p&c\x8F\x14,1374498085655.c2f4143750eb1559a1dd92e937ea712d. state=PENDING_OPEN, ts=1374508769697, server=master,60020,1374506461230 .. Cannot transit it to OFFLINE.
java.lang.IllegalStateException: Unexpected state : LogDetail,\x00\x00\x01\xE8\x00\x00\x01?\xF6\xC17p&c\x8F\x14,1374498085655.c2f4143750eb1559a1dd92e937ea712d. state=PENDING_OPEN, ts=1374508769697, server=master,60020,1374506461230 .. Cannot transit it to OFFLINE.
    at org.apache.hadoop.hbase.master.AssignmentManager.setOfflineInZooKeeper(AssignmentManager.java:1879)
    at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1688)
    at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1424)
    at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1399)
    at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1394)
    at org.apache.hadoop.hbase.master.handler.ClosedRegionHandler.process(ClosedRegionHandler.java:105)
    at org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:175)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)
INFO master.HMaster: Aborting
DEBUG handler.ClosedRegionHandler: Handling CLOSED event for 0710b486dcb3d51465695b51db376255

....

DEBUG master.AssignmentManager: The znode of region LogDetail,\x00\x00\x01\xE8\x00\x00\x01?\xF6\xC17p&c\x8F\x14,1374498085655.c2f4143750eb1559a1dd92e937ea712d. has been deleted.
INFO master.AssignmentManager: The master has opened the region LogDetail,\x00\x00\x01\xE8\x00\x00\x01?\xF6\xC17p&c\x8F\x14,1374498085655.c2f4143750eb1559a1dd92e937ea712d. that was online on master,60020,1374506461230
DEBUG master.AssignmentManager: Handling transition=M_ZK_REGION_OFFLINE, server=master,60000,1374508461536, region=c9cfdd360c09b292412ba5ad88815e6f
DEBUG catalog.CatalogTracker: Stopping catalog tracker org.apache.hadoop.hbase.catalog.CatalogTracker@5c061cd2
INFO client.HConnectionManager$HConnectionImplementation: Closed zookeeper sessionid=0x14006f52f3f000f
INFO zookeeper.ZooKeeper: Session: 0x14006f52f3f000f closed
INFO zookeeper.ClientCnxn: EventThread shut down
INFO master.AssignmentManager$TimerUpdater: master,60000,1374508461536.timerUpdater exiting
INFO master.SplitLogManager$TimeoutMonitor: master,60000,1374508461536.splitLogManagerTimeoutMonitor exiting
INFO master.AssignmentManager$TimeoutMonitor: master,60000,1374508461536.timeoutMonitor exiting
INFO zookeeper.ZooKeeper: Session: 0x14006f52f3f000e closed
INFO zookeeper.ClientCnxn: EventThread shut down
INFO master.HMaster: HMaster main thread exiting
ERROR master.HMasterCommandLine: Failed to start master

또한 ZK 로그에서 비정상적인 것을 발견했습니다.

INFO org.apache.zookeeper.server.NIOServerCnxnFactory: Accepted socket connection from /master:37856
INFO org.apache.zookeeper.server.ZooKeeperServer: Client attempting to establish new session at /master:37856
INFO org.apache.zookeeper.server.ZooKeeperServer: Established session 0x140100dda0300e1 with negotiated timeout 180000 for client /master:37856
WARN org.apache.zookeeper.server.NIOServerCnxn: caught end of stream exception
EndOfStreamException: Unable to read additional data from client sessionid 0x140100dda0300e1, likely client has closed socket
        at org.apache.zookeeper.server.NIOServerCnxn.doIO(NIOServerCnxn.java:220)
        at org.apache.zookeeper.server.NIOServerCnxnFactory.run(NIOServerCnxnFactory.java:208)
        at java.lang.Thread.run(Thread.java:662)
INFO org.apache.zookeeper.server.NIOServerCnxn: Closed socket connection for client /master:37856 which had sessionid 0x140100dda0300e1

아무도 문제가 무엇인지 알 수 있습니까? 할당되지 않은 지역 또는 이와 관련이 있습니까? bin / hbase hbck -repair 및 bin / hbase hbck -fix를 시도했지만 도움이되지 않습니다.

감사

해결법

  1. ==============================

    1.내 지역 서버의 로그를 매우 신중하게 확인한 후 답을 얻었습니다.

    내 지역 서버의 로그를 매우 신중하게 확인한 후 답을 얻었습니다.

    원인

    hbase 테이블 압축을위한 'SNAPPY'라는 라이브러리가 리젼 서버에 제대로 설치되지 않은 것으로 나타났습니다. 그리고 내 모든 테이블은이 압축 알고리즘을 사용하여 만들어집니다. 마스터가 region을 region 서버와 균형을 맞추려고 할 때 실패했습니다. 결국 주인은 중단되었습니다.

    해결책

    다음과 같이 모든 노드에 SNAPPY를 설치하고 구성하십시오.

    apt-get install libsnappy1
    su hbase
    mkdir /home/hbase/hbase-0.94.7/lib/native/Linux-amd64-64
    ln -s /usr/lib/libsnappy.so.1.1.2 /home/hbase/hbase-0.94.7/lib/native/Linux-amd64-64/libsnappy.so
    exit (-> root)
    ln -s /usr/lib/libsnappy.so.1.1.2 /usr/lib64/libsnappy.so.1.1.2
    ln -s /usr/lib/libsnappy.so.1.1.2 /usr/lib64/libsnappy.so.1
    ln -s /usr/lib/libsnappy.so.1.1.2 /usr/lib64/libsnappy.so
    ln -s /usr/lib/libsnappy.so.1 /usr/lib/libsnappy.so
    

    이제 모든 것이 정상입니다! 리젼은 리젼 서버에서 균형이 잘 맞습니다.

  2. ==============================

    2.LZO 압축기가 누락되어 Cloudera Hadoop을 사용중인 경우 리젼 서버 로그를 확인하십시오. 다음 지시 사항에 따라 lzo를 쉽게 설치할 수 있습니다.

    LZO 압축기가 누락되어 Cloudera Hadoop을 사용중인 경우 리젼 서버 로그를 확인하십시오. 다음 지시 사항에 따라 lzo를 쉽게 설치할 수 있습니다.

    http://www.cloudera.com/content/cloudera/en/documentation/cloudera-impala/v1/v1-0-1/Installing-and-Using-Impala/ciiu_lzo.html

  3. from https://stackoverflow.com/questions/17792619/fatal-master-hmaster-unexpected-state-cannot-transit-it-to-offline by cc-by-sa and MIT license