IT

[Docker] Kafka 설치하기

뽀리님 2023. 11. 23. 15:26

카프카는 분산 애플리케이션의  종류로서 주키퍼를 코디네이션 로직으로  쓴다.

 

카프카 브로커(broker)는 실행된 Kafka application의 서버를 뜻한다.

주키퍼(zookeeper)는 이러한 분산 메세지 큐의 정보를 관리해 주는 역할을 한다.

kafka 띄우기 위해서는 주키퍼가 반드시 실행되어야 한다.

 

1. 실행환경 기준

MAC OS (Intel Chip)
Docker 설치완료

 

2. Docker 에 카프카 설치하기

일단 젤많이 별을 받은 카프카 Git 을 Clone 뜬다.

 git clone https://github.com/wurstmeister/kafka-docker

 

받은다음 들어가보면

docker-compose.yml 파일이 있다. 아래와 같이 수정해준다.

version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    container_name: zookeeper
    ports:
      - "2181:2181"
    restart: unless-stopped

  kafka:
    image: wurstmeister/kafka
    container_name: kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: localhost
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    restart: unless-stopped

 

그런다음 아래 코드를 이용하여 이미지를 도커 컨테이너 위에 올려주자.

과정에서 zookeeper 함께 다운이 된다.

MacBookPro kafka-docker % docker-compose -f docker-compose.yml up -d

 

 

실행하고 도커를 보면 뿅 하고 생겼다.

 

참고로 M1 칩일 경우 아래링크 참조

https://velog.io/@soda_flavour/m1-mac%EC%97%90-docker-compose-%EB%A1%9C-kafka-%EC%84%A4%EC%B9%98

 

m1 mac에 docker-compose 로 kafka 설치

m1맥은 arm64 이기 때문에 kafka 설치시 arm64를 지원하는 이미지로 사용해야한다. 여러가지 삽질 후에 글을 남긴다참고https://blog.advenoh.pe.kr/cloud/%EB%A1%9C%EC%BB%AC%ED%99%98%EA%B2%BD%EC%

velog.io

 

 

해당 컨테이너의 로그를 확인하기 위해서는 다음과 같은 명령어를 입력하면 확인 있다.

docker container logs zookeeper #zookeeper 로그 확인
docker container logs kafka # kafka 로그 확인

 

 

-끝-