CMAK

CMAK 를 어떤 목적으로 사용하는지 정리하고, 설치하고 실행해본다.

CMAK

CMAK (Cluster Manager for Apache Kafka) 는, 야후에서 만든 Kafka Cluster 를 managing 하기 위한 tool 이다. CMAK 를 이용해서 다음과 같은 것들을 할 수 있다.

  1. Create, Delete topic
  2. Add partitions to existing topic
  3. Update config for existing topic
  4. Inspection of cluster state

Requirements

Kafka package 설치하고, Zookeeper 를 아래와 같이 start 한다.

1
bin/zookeeper-server-start.sh config/zookeeper.properties

Kafka 를 아래와 같이 start 한다.

1
bin/kafka-server-start.sh config/server01.properties

Install

CMAK 를 설치하자. yahoo github 에서 내려받아 설치할 수 있다.

1
wget https://github.com/yahoo/CMAK/archive/3.0.0.5.tar.gz

Configuration

CMAK 를 위와같이 설치하면, conf directory 에 application.conf 파일이 있다.

이 파일에 아래와 같이 Zookeeper host 를 명시해야한다.

1
2
kafka-manager.zkhosts="localhost:2181"
cmak.zkhosts="localhost:2181"

Run

service 를 시작한다.
이 때, Java 11+ version 이 필요하다.

1
./sbt run

localhost:9000 에 접속했을 때, 다음과 같이 정상적으로 접근이 된다.

다음과 같이 test-cluster 를 생성해보자.

정상적으로 cluster 가 생성이 되었다.

토픽을 생성해보자.

토픽이 정상적으로 생성이 되었다.

Conclusion

CMAK 를 이용해서 Kafka Cluster 를 managing 할 수 있다.
토픽을 새롭게 추가하거나, 삭제할 수 있을 뿐만 아니라 토픽에 파티션을 추가하거나 존재하는 토픽의 설정을 변경할 수 있다.
이 뿐만 아니라 다양한 managing 을 Kafka Server 에서 command 로 하는 것이 아니라, UI 를 통해 쉽게 할 수 있다는 것이 장점이다.

Kafka Cluster manging 은 CMAK 로,
consumer group lag 같은 metric monitoring 은 Grafana 나 Chronograf 같은 Dashboard 를 구성하여 운영하자.


https://github.com/yahoo/CMAK

Comments