본문

Kafka Manager (CMAK)

반응형

A. Kafka Manager (CMAK) 소개

CMAK; Cluster Manager for Apache Kafka, previously known as Kafka Manager

Kafka Manager는 yahoo에서 제작한 GUI 기반 카프카 관리 도구로, 웹 환경에서 클러스터, 토픽 등의 생성 및 변경, consumer group 확인 등의 작업을 웹 환경에서 확인하고 진행할 수 있다. 사실 CLI 환경에서도 Kafka를 관리할 수 있으나 편의적인 측면에서 많은 기업들이 kafka-manager 를 도입하여 운용중이다.


💡 주요기능

a) Kafka Cluster 관리(모니터링)
b) Consumer Lag 관리(모니터링)
c) 파티션 Rebalance: 파티션 추가
d) 토픽 관리: 리스트 조회, 생성&삭제
+Details: https://github.com/yahoo/CMAK#deployment


B. Kafka Manager 설치

Requirements
a) Kafka 0.8.. or 0.9.. or 0.10.. or 0.11.. (http://kafka.apache.org/downloads.html)
b) java 11+, java 환경변수(JAVA_HOME)가 등록되어 있어야한다

 

1. 소스 다운로드
브랜치로 빌드를 하면 가끔 안되는 경우도 있으니 가급적 release 버전을 활용하도록 한다.

- URL: https://github.com/yahoo/CMAK/releases

 


2. 압축해제
다운을 받아 적당한 곳에 압축을 풀어 놓은 뒤 해당 디렉토리로 이동한다.

wget https://github.com/yahoo/kafka-manager/archive/1.3.3.18.tar.gz

tar -zxvf 1.3.3.18.tar.gz

cd CMAK-1.3.3.23

 


3. 빌드
이후 sbt(Simple Build Tool)를 이용하여 빌드한다 (생각보다 오랜시간이 소요된다)

./sbt clean dist

 

- sbt 설치: https://jdm.kr/blog/90

 


4. 환경설정
conf/application.conf 설정파일에 zookeeper 호스트 주소(kafka-manager.zkhosts)를 설정한다.

...

#kafka-manager.zkhosts="kafka-manager-zookeeper:2181"

kafka-manager.zkhosts="192.168.7.17:2181,192.168.7.18:2181,192.168.7.52:2181"

kafka-manager.zkhosts=${?ZK_HOSTS}

...

 


5. 실행

./sbt run

 

- 데몬등록

a) https://cyuu.tistory.com/151

b) https://louisdev.tistory.com/12

 

 


6. 클러스터 등록 및 모니터링
run으로 실행하면 application.conf와 9000 포트로 접근하는 기본 세팅으로 실행된다.

a) http://localhost:9000/접속 → Add Cluster

b) Cluster 생성

 

💡 JMX_PORT
아래와 같이 kafka-server-start.sh 파일에 export JMX_PORT=9999 추가


C. CMAK 주요기능  

1. Cluster Management

 

2. Topic List

 

3. Topic View

 

4. Consumer List View

 

5. Consumed Topic View - kafka lag 모니터링

 

6. Broker List

7. Broker View

 

 


💡 참고
https://log-laboratory.tistory.com/180
https://github.com/yahoo/CMAK#deployment

https://cyuu.tistory.com/151

https://louisdev.tistory.com/12

https://program-error-review.tistory.com/27

 

반응형

공유

댓글