오늘의 나보다 성장한 내일의 나를 위해…













현재 Inflearn의 MSA 강의를 듣던 중 생긴 에러에 대한 해결책을 적어보려 한다. 일단 내 컴퓨터는 윈도우지만 리눅스 명령어를 쓰는 게 편했기 때문에 PowerShell이나 Cmd로 학습하기 보다는

Window Wsl Ubuntu을 사용해서 실습을 진행하였다.


실습 도중 에러가 발생했는데 아래 사진과 같은 에러다.



중요한 내용만 보면 InconsistentClusterIdException이 발생했다.

구글링 결과 해결책을 찾을 수 있었다.


일단 미리 알아둬야 하는 것은 Window의 Wsl Ubuntu의 디렉토리는 아래와 같은 곳에 있다.

C:\Users\nick1\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home


kafka 압축 파일을 원하는 디렉토리에 해제를 하게 되면 kafka_2.13-3.0.0 파일이 생기는데 이 파일에 접속하고 사용하기 위해서는 접근 권한을 허용 해줘야 한다.

일단 나는 kafka_2.13-3.0.0에 있는 모든 파일에 모든 권한을 열어주었다.

sudo chmod -R 777 kafka_2.13-3.0.0


그리고 kafka_2.13-3.0.0 폴더에 들어가서 zookeeper를 실행했다.

sudo ./bin/zookeeper-server-start.sh ./config/zookeeper.properties


다른 ubuntu 터미널을 열고 똑같이 폴더에 들어가서 이제 kafka server를 실행한다.

sudo ./bin/kafka-server-start.sh ./config/server.properties


이때 가장 위에 있던 사진에 에러가 나타나게 된다.


해결 방안은 이렇다

kafka_2.13-3.0.0 폴더 안에 config 폴더에 들어가게 되면 server.properties라는 파일이 보인다. 이것을 파일 편집기로 연다.

열고 스크린을 내리다보면 아래와 같이 log.dirs 부분이 있다.



/tmp 아래 kafka-logs 폴더 안에 로그를 저장한다고 되어 있는데 이 경로를 수정해야 한다.

/tmp/kafka-logs로 되어 있는 것을 /home/tmp/kafka-logs로 변경하자



이제 저장하고 닫고 다시 kafka_2.13-3.0.0 폴더로 들어간 다음 서버를 실행해본다.

sudo ./bin/kafka-server-start.sh ./config/server.properties



정상적으로 실행이 되는 것을 볼 수 있다.

만약 잘 되다가 다시 이런 에러가 발생할 경우



tmp 폴더 자체를 지우고 다시 시작하면 된다.

중요한 것은 /tmp 폴더 아래 로그를 저장하면 안된다 그래서 /home 아래 tmp 폴더를 만들고 또 그 아래 kafka-logs 폴더를 만들어 로그를 저장하게 한 것이다


YoungKyonYou

Integration of Knowledge