hadoop 시작 후 데이터 노드에 문제가 없습니다
13357 단어 Hadoop
로그를 살펴보면 다음과 같습니다.
java.io.IOException: Incompatible clusterIDs in /home/storm/hadoop/dfs/data: namenode clusterID = CID-bee17bb7-308b-4e4d-b059-3c73519a9d0e; datanode clusterID = CID-7fca37f0-a600-4e89-a012-aec2a3499151
at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:760)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.loadStorageDirectory(DataStorage.java:293)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.loadDataStorage(DataStorage.java:409)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.addStorageLocations(DataStorage.java:388)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:556)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1566)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1527)
at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:327)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:266)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:746)
at java.lang.Thread.run(Thread.java:745)
2017-10-06 12:01:35,752 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool (Datanode Uuid 7044cfaa-9868-44d8-a50d-15acd0a7fff1) service to h1/172.18.18.189:9000. Exiting.
java.io.IOException: All specified directories are failed to load.
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:557)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1566)
at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1527)
at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:327)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:266)
at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:746)
at java.lang.Thread.run(Thread.java:745)
2017-10-06 12:01:35,752 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool (Datanode Uuid 7044cfaa-9868-44d8-a50d-15acd0a7fff1) service to h1/172.18.18.189:9000
2017-10-06 12:01:35,754 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool (Datanode Uuid 7044cfaa-9868-44d8-a50d-15acd0a7fff1)
2017-10-06 12:01:37,754 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Exiting Datanode
2017-10-06 12:01:37,757 INFO org.apache.hadoop.util.ExitUtil: Exiting with status 0
2017-10-06 12:01:37,760 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down DataNode at h3/172.18.18.173
************************************************************/
로그에서 볼 때 데이터노드의 clusterID와namenode의 clusterID가 일치하지 않습니다.
해결 방법 1:
로그의 경로에 따라 cd/home/storm/hadoop/tmp/dfs에서 데이터와name 두 폴더를 볼 수 있습니다.
name/current 아래의 VERSION의 clusterID를 데이터/current 아래의 VERSION에 복사하여 원래의 clusterID를 덮어씁니다.
두 개를 일치시킨 다음 다시 시작하고 시작한 후 jps를 실행하여 프로세스를 보십시오.
20131 SecondaryNameNode 20449 NodeManager 19776 NameNode 21123 Jps 19918 DataNode 20305 ResourceManager
해결 방법 2:
dfs 폴더에서name과 데이터 폴더의 모든 내용을 삭제하고 다시 시작합니다.
문제의 원인
dfs를 처음 포맷한 후에 Hadoop을 시작하고 사용한 다음에 포맷 명령(hdfs namenode -format)을 다시 실행했습니다. 이때namenode의clusterID는 다시 생성되고 데이터node의clusterID는 변하지 않습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Hadoop 클러스터의 JobHistory Server 상세 정보역사 서버를 통해 이미 실행된 Mapreduce 작업 기록을 볼 수 있습니다. 이렇게 하면 우리는 해당 기계의 19888 포트에서 역사 서버의 WEB UI 인터페이스를 열 수 있다.이미 실행된 작업 상황을 볼 수 있...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.