Kafkactl 소개

Bonjugi·2022년 8월 25일
0

AWS MKS (managed kafka) 를 쓰고있다.
Terraform 으로 토픽 생성 등이 관리되고 있는데, 요청한대로 만들어졌는지 확인하기 어려웠다.
kafkactl 툴을 소개받았는데, kafkacli 보다 유용한 점이 많아서 정리해 본다.

소개

아래영상을 보면 알겠지만 context 를 변경 한다던지, 자동완성이라던지 기능이 편리하다. (bootstrap 입력 안하는것만 해도 엄청나다)
asciicast

좀더 자세한 사항은 공식 github 참고.

설치

sentOS 기반 인스턴스인데, yum 설치가 잘 안돼서 그냥 pre-compiled bianary 를 다운받았다. (가능하면 brew나 yum 같은 패키지관리자로 설치하자)

$ cd ~/  
$ mkdir temp
$ cd temp
$ wget https://github.com/deviceinsight/kafkactl/releases/download/v2.5.0/kafkactl_2.5.0_linux_386.tar.gz
$ tar xvf {.tar}

./kafkactl 실행파일이 보이지만, 실행전에 context 등 미리 config 를 설정해둬야 한다.

$ vi ~/.config/kafkactl/config.yml

config.yml 파일 수정 한다. (없으면 만들면 된다)

contexts:
  default:
    brokers:
    - localhost:9092
  dev1-cluster:
    brokers:
    - b-3.~~:9092
    - b-2.~~:9092
    - b-1.~~:9092
  prod:
    brokers:
    - b-3.~~:9092
    - b-2.~~:9092
    - b-1.~~:9092
current-context: prod

여러 컨텍스트를 미리 저장해두고 스위칭할수있는게 장점이다.

실행

토픽에 replica 라던지 정보를 확인하고 싶으면 다음 명령어를 수행한다.

$ ./kafkactl describe topic {topic name}

실행 결과

PARTITION     OLDEST_OFFSET     NEWEST_OFFSET     EMPTY     LEADER          REPLICAS     IN_SYNC_REPLICAS
0             0                 0                 true      b-1.~~:9092     1,2,3        1,2,3
1             0                 0                 true      b-3.~~:9092     1,2,3        1,2,3
2             0                 0                 true      b-2.~~:9092     1,2,3        1,2,3

0개의 댓글