less than 1 minute read

Error ?

Incompatible namespaceID for journal Storage Directory /data/hadoop/hdfs/journal/testclusterHa: NameNode has nsId 1209982631 but storage has nsId 1446085514
Incompatible clusterID for journal Storage Directory /data/hadoop/hdfs/journal/testclusterHa: NameNode has clusterId
'CID-cdafe95f-507f-4954-bc79-b20415684c79' but storage has clusterId 'CID-27fe5fd2-6900-4dbf-9ec6-966c48112586'

위와 같은 Error가 발생하거나

혹은

DataNode 는 5개인데

Namenode 1(active)에 3개,

Namenode 2(standby)에 2개의 DataNode가 잡힘

원인 ?

여러 원인이 있을 수 있다.

Format을 이미 한 상태에서 다시 Format을 사용하여 꼬일 수 있고,

초기화시 NN1에서 Format 후 NN2 에서 bootstrapstandby를 해주어야 하는데 Format을 해주면 위와 같은 문제가 발생할 수 있다.

즉, 버전/ID 정보가 꼬였다는 것

해결방법

namespaceID는 아래와 같이 변경해준다.

JournalNode의 경우 해당하는 경로에 들어가서 아래와 같이 변경해주면 된다.

image

cluster id 1

Datanode의 경우 아래와 같이 Web은 들어가지니, 확인하고 변경해주면 된다.

cluster id 2

위와같은 방법을 할 줄 모르겠다면, 아래와 같이 본인이 지정한 Namenode 경로를 들어가 VERSION안의 내용을 확인 후 맵핑해주면 된다. (옛날에 캡쳐한거라, 버전 정보가 다르다.)

NameNode Version

모든 설정을 하면 당연히 재구동 시켜야한다. 변경된 내용을 알아서 가져오지 않는다.

결론

  1. 실행 순서를 지키라는 말은 괜히 있는게 아니다.
  2. 하나하나 차근차근해서 실수하지말자.
  3. 버전 정보를 잘 맞추자.

Comments