Search
moon
sun

아파치 카프카 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