docker kafka
위치 : /opt/kafka
- 토픽 생성
kafka-topics.sh --create --bootstrap-server localhost:9092 --partitions 3 --replication-factor 1 --config retention.ms=172800000 --topic hello.kafka.2
- 토픽 리스트 조회
kafka-topics.sh --bootstrap-server localhost:9092 --list
- 토픽 상세 조회
kafka-topics.sh --bootstrap-server localhost:9092 --topic main-topic-1 --describe
- 토픽 옵션 수정
- 파티션 변경
kafka-topics.sh --bootstrap-server localhost:9092 --topic hello.kafka.2 --alter --partitions 4
- 리테이션(데이터유지기간) 수정
kafka-configs.sh --bootstrap-server localhost:9092 --entity-type topics --entity-name hello.kafka.2 --alter --add-config retention.ms=86400000
- 상세
kafka-configs.sh --bootstrap-server localhost:9092 --entity-type topics --entity-name hello.kafka.2 --describe
- 메시지 생성?
토픽에 넣는 데이터를 레코드(record)라 부른다.
키:값으로 이루어진다.
- 키 없이 브로커 전송
kafka-console-producer.sh --bootstrap-server localhost:9092 --topic hello.kafka.2
키 없이 전송하면, null로 기존 설정되어 브로커로 전송된다.
- 키 브로커 전송
kafka-console-producer.sh --bootstrap-server localhost:9092 --topic hello.kafka.2 --property "parse.key=true" --property "key.separator=:"
- 토픽으로 전송된 데이터 확인
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic hello.kafka.2 --from-beginning
- 키값과 같이 데이터 확인
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic hello.kafka.2 --from-beginning --property print.key=true --property key.separator=":"
- 컨슈머 그룹 추가
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic hello.kafka.2 --from-beginning --property print.key=true --property key.separator=":" --group hello-group
오프셋 커밋 - 그룹에서 가져간 메시지의 레코드 오프셋 번호를 브로커에 저장
커밋 정보는 __consumer_offsets 이름의 내부 토픽에 저장
- 컨슈머 그룹 목록
kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list
- 컨슈머 그룹 상세
kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group hello-group --describe
- 통신 테스트
- 10개의 데이터 전송
kafka-verifiable-producer.sh --bootstrap-server localhost:9092 --max-messages 10 --topic hello.kafka.2
- 전송한 데이터 확인
kafka-verifiable-consumer.sh --bootstrap-server localhost:9092 --topic hello.kafka.2 --group-id hello-group
- 적재된 토픽 데이터 삭제
kafka-delete-records.sh
1. vi delete-topic.json 생성 - 0 파티션에 저장된 0~50 오프셋데이터 지우기
{"partitions":[{"topic":"test","partition":0, "offset":50}], "version":1}
2. kafka-delete-records.sh --bootstrap-server localhost:9092 --offset-json-file delete-topic.json
'IT > WSL' 카테고리의 다른 글
[mongo] 샤딩 클러스터 실습(feat. docker-compose) (0) | 2025.01.14 |
---|---|
[redis] 클러스터 실습(feat. docker compose) (0) | 2025.01.12 |
도커 컨테이너 volume 권한에 대해서 (0) | 2024.12.03 |
오프라인 WSL / 우분투 / 도커 / 도커 컴포즈 설치기 (0) | 2024.11.22 |
[ubuntu] grep 명령어 정리 (0) | 2024.05.24 |
docker compose - jenkins, github 연동 (0) | 2024.03.31 |
docker compose - nginx 설치 및 설정 (0) | 2024.03.30 |
AWS EC2 인스턴스 생성 및 트러블 슈팅 (0) | 2024.03.30 |
WSL에 도커(Docker)를 설치하자. (0) | 2024.02.28 |
WSL 을 설치해보자 (0) | 2024.02.20 |