카프카는 분산 애플리케이션의 한 종류로서 주키퍼를 코디네이션 로직으로 쓴다.
카프카 브로커(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
해당 컨테이너의 로그를 확인하기 위해서는 다음과 같은 명령어를 입력하면 확인 할 수 있다.
docker container logs zookeeper #zookeeper 로그 확인
docker container logs kafka # kafka 로그 확인
-끝-
'IT' 카테고리의 다른 글
[Docker] ElasticSearch 설치하기 (1) | 2023.11.28 |
---|---|
Redis 설치하기(cli로 설치) (0) | 2023.11.27 |
[MySQL] MySQL 특수문자 Replace 처리 (0) | 2023.11.15 |
ORM(Object-Relational Mapping) (0) | 2023.11.08 |
Docker 로 MySQL 설치하기 (0) | 2023.08.18 |