카프카(Kafka)를 사용하면서 가장 불편했던 점이 무엇일까요? 바로 메시지 조회의 어려움일 겁니다. 명령어를 통해 확인하는 방식은 효율적이지 못하고, 복잡한 상황에서는 더욱 힘들죠. 저 또한 카프카 메시지를 확인하기 위해 온갖 방법을 동원하다가 Kafdrop이라는 훌륭한 Kafka 웹 UI를 발견했습니다. Kafka-UI와 비슷한 기능을 제공하지만, 사용법이 직관적이고, 다양한 기능을 제공해서 개발 생산성 향상에 큰 도움이 될 것 같습니다. 인텔리J 플러그인도 있다는 사실을 좀 더 빨리 알았더라면 하는 아쉬움이 있지만 말이죠! (경험자분들 공감하실 겁니다!)
Kafdrop은 JAR 파일만으로도 실행이 가능하지만, 저는 Docker Compose를 활용하여 실행하는 것을 목표로 했습니다. Docker 설치 후 docker-compose.yml 파일을 생성하여 Kafdrop을 컨테이너 환경에 배포하는 방법을 선택했습니다. 실제 실행 과정은 Kafka-UI와 크게 다르지 않습니다. 몇 가지 설정만 해주면 localhost:9000 포트를 통해 접속하여 직관적인 웹 인터페이스를 통해 토픽 목록, 생산자/소비자 정보, 그리고 중요한 메시지 내용까지 손쉽게 확인할 수 있습니다. 특히, 메시지의 내용을 직접 확인하고 검색할 수 있는 기능은 디버깅 과정에서 매우 유용합니다. 실행 후 더 이상 Kafdrop이 필요 없다면 간단하게 Docker 컨테이너를 종료하면 됩니다. 저는 docker-compose up -d 명령어로 백그라운드에서 실행시키고, 필요에 따라 docker-compose down 명령어로 종료했습니다.
Kafdrop을 사용하면서 느낀 가장 큰 장점은 바로 편의성입니다. 복잡한 명령어를 사용할 필요 없이 웹 브라우저를 통해 카프카 클러스터의 모든 것을 한눈에 파악하고 관리할 수 있다는 점이죠. 더 이상 어려운 명령어에 허덕이지 않아도 되고, 메시지 확인에 소모되는 시간을 획기적으로 줄일 수 있습니다. Kafdrop은 Kafka 개발 및 운영 과정에서 필수적인 도구가 될 것이라고 확신합니다. 혹시 아직 Kafdrop을 사용하지 않으신다면, 지금 바로 도입해 보시길 강력 추천합니다. 생산성 향상에 큰 도움이 될 것입니다!