스터디 노트

도커 + 카프카 명령어

데구루_ 2023. 11. 8. 09:20

📌 자꾸 까먹어서..

자꾸 Docker에 Zookeeper와 Kafka를 띄워놓고 테스트를 하고 있는데, 명령어를 자꾸 까먹어서 기록을 해놓으려 합니다.

 

도커 컨테이너 확인(docker ps -a)

현재 운용되고 있는 컨테이너를 확인합니다.

> docker ps -a
CONTAINER ID   IMAGE                    COMMAND                  CREATED        STATUS             PORTS                                                NAMES
15dbeOOO5164   wurstmeister/kafka       "start-kafka.sh"         16 hours ago   Up About an hour   0.0.0.0:9092->9092/tcp                               kafka
b338aOOO4259   wurstmeister/zookeeper   "/bin/sh -c '/usr/sb…"   16 hours ago   Up About an hour   22/tcp, 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp   zookeeper

 

도커에서 사용하지 않는 컨테이너 일괄 삭제(docker system prune > y)

현재 운용되고 있지 않고 Expired된 컨테이너를 삭제합니다.

> docker system prune
> 'y'

 

카프카 토픽 목록 조회
> kafka-topics.sh --bootstrap-server localhost:9092 --list
__consumer_offsets
eco-news
land-news
news

 

카프카 토픽별 상태 조회
> kafka-topics.sh --describe --zookeeper 주키퍼이름:2181 --topic 토픽이름
Topic: eco-news TopicId: aVqC6teDRu2rvbjDWZqHtg PartitionCount: 2       ReplicationFactor: 1    Configs:
        Topic: eco-news Partition: 0    Leader: 1001    Replicas: 1001  Isr: 1001
        Topic: eco-news Partition: 1    Leader: 1001    Replicas: 1001  Isr: 1001

 

카프카 컨슈머 그룹 목록
> kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list

 

카프카 컨슈머 그룹 상태 및 Lag 확인
> kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group 컨슈머그룹명 --describe

GROUP       TOPIC     PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG    CONSUMER-ID  HOST         CLIENT-ID
ecoService  eco-news  0          43              43              0      ecoService   /172.19.0.1  ecoService
ecoService  eco-news  1          -               0               -      ecoService   /172.19.0.1  ecoService

 

Docker-Compose 파일 지정해서 실행하기
> docker-compose -f [docker-compose-file-name] up -d

 

Docker Container IP 확인
> docker inspect CONTAINER_ID

...(생략)...
"Gateway": "172.19.0.1",
"IPAddress": "172.19.0.6", // 이것 확인!
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:13:00:06",
"DriverOpts": null