본문 바로가기
Programming/Kafka

[Kafka] (내가 쓸) 카프카 명령어 모음 📃

by 근육곰돌이 2023. 11. 28.
728x90

📃(내가 쓸) 카프카 명령어 모음

요즘 카프카를 관리하고 있는 와중에 이것저것 명령어들이 많이 사용된다.

현재는 자주 사용하니 손에 익어서 정리한 이런 명령어?들이 필요없지만,

추후에는 100% 잊어버리게된다.. 사람이니 ;;

이번 포스팅은 카프카 명령어를 제가 나중에 사용하기 위해 정리 하고자한다.

물론 다른 사람들도 보시고 도움되시기를 바란다.

(기억 보단 기록을.. ^^)

1. 카프카 Broker Command

카프카 브로커는 노드를 의미하며, 데이터를 저장 및 복제를 관리하기 위한 카프카 클러스터의 물리 요소입니다.

카프카 브로커 수동 실행

./kafka-server-start.sh config/server.properties
  • server.properties 옵션 관리는 추후 포스팅 예정

카프카 브로커 수동 정지

./kafka-server-stop.sh

카프카 브로커 서비스 등록

cat <<EOF > /etc/systemd/system/kafka.service
[Unit]
Description=Apache Kafka server (broker)
Documentation=http://kafka.apache.org/documentation.html
Requires=network.target 
After=network.target 

[Service]
Type=simple
ExecStart=/bin/sh -c '{카프카 설치경로}/bin/kafka-server-start.sh {카프카 설치경로}/config/kraft/server.properties > {카프카 설치경로}/kafka.log 2>&1'
ExecStop={카프카 설치경로}/bin/kafka-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target

EOF

2. 카프카 Topic Command

카프카 토픽에 대한 명령어 모음입니다.

카프카 토픽 생성

./kafka-topics.sh --create --topic <topic-name> --bootstrap-server <server-ip>:9092 [--replication-factor <replication-factor>] [--partitions <num-partitions>]
  • --replication-factor : 클러스터인 경우 복제 수
    --partitions : 파티션 수 (미설정 시 기본값: server.properties)

카프카 토픽 수정

./kafka-topics.sh --alter --topic <topic-name> --bootstrap-server <server-ip>:9092 [--partitions <num-partitions>] [--replication-factor <replication-factor>]
  • 파티션은 늘릴수는 있지만, 줄일 수 없으니 유의하시기 바랍니다.!!!

카프카 토픽 삭제

./kafka-topics.sh --delete --topic <topic-name> --bootstrap-server <server-ip>:9092
  • 토픽 뿐만 아니라 데이터 및 메타데이터 모두 삭제됩니다.

카프카 토픽 목록

./kafka-topics.sh --list --bootstrap-server <server-ip>:9092

카프카 토픽 설명

./kafka-topics.sh  --describe --topic <topic-name> --bootstrap-server <server-ip>:9092
  • 카프카 토픽의 이름, 파티션 수, 복제 인수, 리더 및 팔로워 브로커 등 자세한 정보를 표시합니다.

3. 카프카 Producer Command

프로듀서는 카프카 토픽에게 데이터를 보내는 발송자입니다.

./kafka-console-producer.sh --topic <topic-name>  --bootstrap-server <server-ip>:9092

출력:

> 
  • 위처럼 요런 커맨드가 나오는데, 키보드로 보내고자 하는 문자열을 입력하면 토픽으로 보낸다.

4. 카프카 Consumer Command

./kafka-console-consumer.sh --topic <topic-name> --bootstrap-server <server-ip>:9092 [--from-beginning]
  • --from-beginning 옵션은 토픽의 처음부터 읽을수 있다. (보통 오프셋 이후를 읽는다.)

해당 포스팅에는 zookeper 명령은 따로 담지않는다.

저는 zookeeper로 설치하지않고, kraft로 설치하였기 때문에 따로 연동이 없다. (세상 좋아지고 있다. ㅋㅋ)

반응형