Kafka/CLI

Kafka Topic CLI(kafka-topics.sh) - Topic crud작업

초코chip 2024. 10. 25. 14:51

들어가며..

  • 카프카 클러스터 내의 Topic들을 관리하고 상호작용하는데 사용
  • java 코드를 이용하거나 CLI 스크립트를 사용하여 작업할 수 있음
  • 할 수 있는 작업들
    • 새로운 Topic Create, Delete
    • 기존의 Topic들을 나열(list)
    • 해당 Topic의 세부 정보 확인(describe)

 

Topic 생성 (create)

./kafka-topics.sh --create --topic studytopic2 --partitions 3 --replication-factor 3 --bootstrap-server localhost:9092, localhost:9094

 

  • 단, 파티션의 개수는 소비자 수 이상이여야함
  • 그러면 그 이상의 소비자를 사용하고 싶다면 어떻게 해야하는가? -> 복제를 사용 (replication-factor)
    • 만약 3으로 설정하면, 각 파티션은 3개의 복제본을 가지게 됨 (1개 리더, 2개 팔로워)
    • 단, 복제값은 클러스터의 브로커 수 이하여야함

 

Topic 조회 (list, describe)

단순 나열

./kafka-topics.sh --list --bootstrap-server localhost:9092, localhost:9094

 

세부정보 출력

./kafka-topics.sh --describe --bootstrap-server localhost:9092, localhost:9094

  • + Isr: 리더가 fail할때, 리더가 될 수 있는 브러커들을 의미

 

Topic 삭제(delete)

./kafka-topics.sh --delete --topic <Topic이름> --bootstrap-server localhost:9092, localhost:9094