root layout

패스트캠퍼스

  1. 강의 질문
  2. 프로그래밍

파트2 에서 topic 안만들어지시는 분들.(특히 맥)

2025.04.07 12:45 작성

저와 같은 오류를 겪는 분들을 위해 올립니다.

저는 m4 mac미니를 사용중입니다.


주어진 환경에서 처음 topic을 만들면

다음처럼 나오시는 분들을 위해서 답변드립니다


ahn@Mac study-kafka-message-queue % docker compose exec kafka1 kafka-topics.sh --create --topic my-topic --bootstrap-server localhost:9092,localhost:9093,localhost:9094 --replication-factor 1 --partitions 1

[2025-04-07 03:31:03,427] WARN [AdminClient clientId=adminclient-1] Connection to node 3 (localhost/127.0.0.1:9094) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)

[2025-04-07 03:31:03,428] WARN [AdminClient clientId=adminclient-1] Connection to node 2 (localhost/127.0.0.1:9093) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)


현재 docker-compose파일은 compose환경을 위한 network 환경 세팅이 들어가 있지 않습니다. 그래서 각 컨테이너가 독립된 네트워크를 사용하므로 잘 연결이 안될수 있습니다.


이경우 docker compose yaml의 리스너에서

localhost대신 host.docker.internal을 사용해서 도커 커네이너 외부접근을 가능하게 하면 문제가 해결됩니다.


environment:

- KAFKA_CFG_ADVERTISED_LISTENERS=CLIENT://kafka1:19092,EXTERNAL://host.docker.internal:9092


kafka2, kafka3도 하시면 됩니다.


아니면 카프카 클러스터용 네트워크를 docker-compose에 정의하시는 것도 좋은 해결방안입니다.



답변 

연관 질문

커뮤니티 질문보기