복붙노트

[HADOOP] 데이터 노드가 올바르게 시작되지 않음

HADOOP

데이터 노드가 올바르게 시작되지 않음

의사 배포 모드에서 Hadoop 2.2.0을 설치하려고합니다. datanode 서비스를 시작하려고 시도하는 동안 다음 오류가 표시됩니다.이 문제를 해결하는 방법을 알려주십시오.

**2**014-03-11 08:48:15,916 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Block pool <registering> (storage id unknown) service to localhost/127.0.0.1:9000 starting to offer service
2014-03-11 08:48:15,922 INFO org.apache.hadoop.ipc.Server: IPC Server Responder: starting
2014-03-11 08:48:15,922 INFO org.apache.hadoop.ipc.Server: IPC Server listener on 50020: starting
2014-03-11 08:48:16,406 INFO org.apache.hadoop.hdfs.server.common.Storage: Lock on /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode/in_use.lock acquired by nodename 3627@prassanna-Studio-1558
2014-03-11 08:48:16,426 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for block pool Block pool BP-611836968-127.0.1.1-1394507838610 (storage id DS-1960076343-127.0.1.1-50010-1394127604582) service to localhost/127.0.0.1:9000
java.io.IOException: Incompatible clusterIDs in /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode: namenode clusterID = CID-fb61aa70-4b15-470e-a1d0-12653e357a10; datanode clusterID = CID-8bf63244-0510-4db6-a949-8f74b50f2be9
    at**** org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:391)
    at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:191)
    at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:219)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:837)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:808)
    at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:280)
    at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:222)
    at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:664)
    at java.lang.Thread.run(Thread.java:662)
2014-03-11 08:48:16,427 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool BP-611836968-127.0.1.1-1394507838610 (storage id DS-1960076343-127.0.1.1-50010-1394127604582) service to localhost/127.0.0.1:9000
2014-03-11 08:48:16,532 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool BP-611836968-127.0.1.1-1394507838610 (storage id DS-1960076343-127.0.1.1-50010-1394127604582)
2014-03-11 08:48:18,532 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Exiting Datanode
2014-03-11 08:48:18,534 INFO org.apache.hadoop.util.ExitUtil: Exiting with status 0
2014-03-11 08:48:18,536 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG: 

해결법

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

    1.다음 방법을 사용할 수 있습니다.

    다음 방법을 사용할 수 있습니다.

    HADOOP_HOME / bin 디렉토리에서 다음 명령을 실행하십시오.

    ./hdfs namenode -format -clusterId CID-8bf63244-0510-4db6-a949-8f74b50f2be9
    

    이 코드는 datenode 클러스터 ID로 namenode를 형식화했습니다.

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

    2.다음과 같이해야합니다.

    다음과 같이해야합니다.

    나는이 웹 사이트에서 대답을 찾을 때까지 똑같은 문제를 겪었다.

  3. ==============================

    3.슬레이브 머신에서 DN을 시작하려고 할 때 오류가 발생하면 다음을 수행하십시오.

    슬레이브 머신에서 DN을 시작하려고 할 때 오류가 발생하면 다음을 수행하십시오.

    java.io.IOException: Incompatible clusterIDs in /home/hadoop/dfs/data: namenode clusterID= ****; datanode clusterID = ****
    

    그것은 당신이 당신의 클러스터를 설정 한 후에 어떤 이유로 든 당신이 재 형식화하기로 결정했기 때문입니다 너의 NN. 노예에 대한 DN은 여전히 ​​이전 NN을 참조합니다.

    이 문제를 해결하려면 로컬 Linux FS에서 해당 컴퓨터의 데이터 폴더 즉, / home / hadoop / dfs / data를 삭제하고 다시 만드십시오.

    해당 시스템에서 해당 DN의 데몬을 다시 시작하면 데이터 / 폴더의 내용을 다시 작성하고 해결합니다. 문제.

  4. ==============================

    4.다음과 같은 간단한 단계를 수행하십시오.

    다음과 같은 간단한 단계를 수행하십시오.

    다른 구성 문제가없는 경우 클러스터가 정상적으로 시작됩니다.

  5. ==============================

    5.DataNode는 NameNode와 비교하여 호환되지 않는 Clusterids로 인해 사망합니다. 이 문제를 해결하려면 / tmp / hadoop- [user] / hdfs / data 디렉토리를 삭제하고 hadoop을 다시 시작해야합니다.

    DataNode는 NameNode와 비교하여 호환되지 않는 Clusterids로 인해 사망합니다. 이 문제를 해결하려면 / tmp / hadoop- [user] / hdfs / data 디렉토리를 삭제하고 hadoop을 다시 시작해야합니다.

    rm -r /tmp/hadoop-[user]/hdfs/data
    
  6. ==============================

    6.가상 배포 환경에서 비슷한 문제가 발생했습니다. 클러스터를 먼저 중지 한 다음 NameNode의 버전 파일에서 클러스터 ID를 복사하고 DataNode의 버전 파일에 넣은 다음 클러스터를 재시작 한 후 모두 괜찮습니다.

    가상 배포 환경에서 비슷한 문제가 발생했습니다. 클러스터를 먼저 중지 한 다음 NameNode의 버전 파일에서 클러스터 ID를 복사하고 DataNode의 버전 파일에 넣은 다음 클러스터를 재시작 한 후 모두 괜찮습니다.

    내 데이터 경로는 / usr / local / hadoop / hadoop_store / hdfs / datanode 및 / usr / local / hadoop / hadoop_store / hdfs / namenode입니다.

    FYI : 버전 파일은 / usr / local / hadoop / hadoop_store / hdfs / datanode / current / 아래에 있습니다. NameNode에 대해서도 마찬가지입니다.

  7. ==============================

    7.여기서 datanode와 namenode의 clusterID가 다르므로 datanode가 즉시 중지됩니다. 그래서 당신은 datanode의 clusterID로 namenode의 clusterID를 포맷해야한다.

    여기서 datanode와 namenode의 clusterID가 다르므로 datanode가 즉시 중지됩니다. 그래서 당신은 datanode의 clusterID로 namenode의 clusterID를 포맷해야한다.

    예를 들어, CID-8bf63244-0510-4db6-a949-8f74b50f2be9의 datanode clusterID를 복사하고 홈 디렉토리에서 다음 명령을 실행하십시오. 당신은 당신의 터미널에 cd를 타이핑함으로써 당신의 집 dir에 갈 수 있습니다.

    이제 집에서 dir 명령을 입력하십시오.

    hdfs namenode -format -clusterId CID-8bf63244-0510-4db6-a949-8f74b50f2be9
    
  8. ==============================

    8.나도 비슷한 문제가 있었다. 모든 노드에서 namenode 및 datanode 폴더를 삭제하고 다시 실행했습니다.

    나도 비슷한 문제가 있었다. 모든 노드에서 namenode 및 datanode 폴더를 삭제하고 다시 실행했습니다.

    $HADOOP_HOME/bin> hdfs namenode -format -force
    $HADOOP_HOME/sbin> ./start-dfs.sh
    $HADOOP_HOME/sbin> ./start-yarn.sh
    

    명령 줄에서 상태 보고서를 확인하려면 (권장)

    $HADOOP_HOME/bin> hdfs dfsadmin -report
    

    모든 노드가 제대로 작동하고 있습니다.

  9. ==============================

    9.core-site.xml에 지정된대로 namenode 및 datanode 디렉토리를 삭제하십시오. 그 후 새로운 디렉토리를 만들고 dfs와 yarn을 다시 시작하십시오.

    core-site.xml에 지정된대로 namenode 및 datanode 디렉토리를 삭제하십시오. 그 후 새로운 디렉토리를 만들고 dfs와 yarn을 다시 시작하십시오.

  10. ==============================

    10.hadoop 2.7.7에 대해 동일한 문제가있었습니다.

    hadoop 2.7.7에 대해 동일한 문제가있었습니다.

    namenode / current & datanode / current 디렉토리를 namenode와 모든 datanode에서 삭제했습니다.

    단계 : 모든 노드 / 관리자를 중지 한 후 아래 단계를 시도하십시오.

  11. from https://stackoverflow.com/questions/22316187/datanode-not-starts-correctly by cc-by-sa and MIT license