카프카 컨슈머랙 확인을 위한 오픈소스 Burrow 설치하는법을 알아보자.
1. Go 언어가 필요하다. Go 언어를 설치하자.
# A. /usr/local/go 폴더에 설치 (정확히는 압축 해제)해야한다. root 권한 필요
$ sudo su
$ cd /usr/local
$ wget --no-check-certificate https://go.dev/dl/go1.17.5.linux-amd64.tar.gz
$ rm -rf /usr/local/go && tar -C /usr/local -xzf go1.17.5.linux-amd64.tar.gz
# B. GO 명령어를 쉽게 쓰기 위해 PATH 등록 해야한다.
$ export PATH=$PATH:/usr/local/go/bin
# C. 설치 확인 ( go version go1.17.5 linux/amd64 나오면 설치가 된 것임. )
$ go version
2. Burrow를 설치하자.
# A. Burrow 다운로드 받는다. 위치는 go를 설치한 폴더의 상위 디렉터리다.
# 다운받는 다양한 방법이 있다. github (https://github.com/linkedin/Burrow) 에서 다운받을 것이므로 여기선 git clone을 사용하겠다.
$ cd /usr/local
$ git clone https://github.com/linkedin/Burrow.git
$ cd /usr/local/Burrow
$ go mod tidy
$ go install
3. Burrow 실행
# A. Burrow 실행을 위해서는 Burrow 설정을 먼저 진행해야한다.
# 설정파일은 /usr/local/Burrow/config/burrow.toml 이다.
$ cd /usr/local/Burrow/config/
$ vim burrow.toml
# burrow.toml
# 로컬에 zookeeper 와 kafka server client 가 있다는 전제다.
[general]
[logging]
filename="logs/burrow.log"
level="info"
maxsize=100
maxbackups=30
maxage=10
use-localtime=false
use-compression=true
[zookeeper]
servers=[ "localhost:2181" ]
timeout=6
root-path="/burrow"
[client-profile.local]
client-id="burrow-local"
kafka-version="2.5.0"
[cluster.local]
class-name="kafka"
servers=[ "localhost:9092" ]
client-profile="local"
topic-refresh=120
offset-refresh=30
[consumer.local]
class-name="kafka"
cluster="local"
servers=[ "localhost:9092" ]
client-profile="local"
group-denylist="^(console-consumer-|python-kafka-consumer-|quick-).*$"
group-allowlist=""
[httpserver.default]
address=":8000"
[storage.default]
class-name="inmemory"
workers=20
intervals=15
expire-group=604800
min-distance=1
# --config-dir 뒤에는 burrow.toml 파일이 있는 '디렉토리' 를 지정해야한다.
$ export GOPATH=/usr/local
$ $GOPATH/bin/Burrow --config-dir /usr/local/Burrow/config/
# Reading configuration from /home/admin/kafka_burrow/Burrow/config/
# 다른 터미널이나 포스트맨을 이용해 GET 방식으로 http://localhost:8000/burrow/admin 을 조회하면
# GOOD 응답을 받으면 성공이다.
댓글