Search
Duplicate

아파치 카프카 CLI 활용

저자
최원영
점수
⭐️⭐️⭐️
완료일
2024/02/12
상태
보는 중
유형
인강

카프카 커맨드 라인 툴(command-line-tool)

커맨드 라인 툴을 통해 카프카 브로커 운영에 필요한 다양한 명령어를 내린다.
토픽이나 파티션 개수 변경과 같은 명령을 실행해야 하는 경우도 발생 → 카프카 커맨드 라인툴과 각 툴별 옵션에 대해 알고 있어야 된다.
커맨드 라인 툴을 통해 토픽 관련 명령을 실행할 때 필수 옵션과 선택 옵션이 있다.
선택옵션은 지정하지 않을시 브로커에 설정된 기본 설정값 또는 커맨드 라인 툴의 기본 값으로 대체되어 설정된다.
만약 브로커에 설정된 기본 파티션 값이 10이라면, 내가 원하는 토픽에 5개의 파티션을 만들고자 한다면 토필생성시 커맨드 라인 툴을 통해 5개의 파티션을 만들게 지정해줘야된다.

로컬 카프카 설치 및 실행

카프카 바이너리 파일 다운로드
https://kafka.apache.org/downloads
카프카 바이너리 압축 해제
주키퍼 실행
카프카 바이너리 실행

카프카 바이너리 압축 해제

bin : 실행항 바이너리랑 쉘 스크립트
config : 설정에 필요한 server.properties 및 여러 설정파일 존재
libs : 브로커를 실행할 때 필요한 라이브러리 존재
log.dirs : 파일 시스템을 지정하는 부분, 프로듀서 → 카프카 브로커로 데이터를 보내면 데이터는 파일 시스템으로 저장하게 된다.
num.partitions : 기본적으로 토픽을 만들때 만들어지는 파티션의 개수
log.retention.hours : 168시간이 지나면 삭제
listeners : 카프카 브로커가 통신을 통해 우리가 받을 IP를 뜻함
advertiesed.listeners

로컬에서 카프카 브로커 실행

server.properties의 환경설정 값을 수정해야됨
로컬호스트로 브로커가 통신을 할 수 있게 설정해야됨
listeners=PLAINTEXT://localhost:9092
advertised.listeners=PLAINTEXT://localhost:9092
파일 시스템을 내가 원하는 위치로 저장할 수 있게 설정해야됨
log.dirs=/Users/coby/Downloads/kafka_2.12-2.5.0/data
로컬에서 카프카 브로커 실행 순서
1.
주키퍼를 실행한다
a.
bin/zookeeper-server-start.sh config/zookeeper.properties
2.
브로커를 실행한다.
a.
bin/kafka-server-start.sh config/server.properties
3.
잘 동작 되는지 확인한다
a.
bin/kafka-broker-api-versions.sh --bootstrap-server localhost:9092
b.
bin/kafka-topics.sh --bootstrap-server localhost:9092 --list