without haste but without rest
로컬 환경에서 카프카 클러스터 구축 본문
OS: ubuntu 20.04 LTS
kafka: 2.5.0
broker: 3대
각 서버에 카프카 설치를 한다. 카프카 2.6버전 이후부터 주키퍼가 빠졌는데, 해당 테스트에서는 주키퍼를 사용하는 2.5버전을 사용했다. 주키퍼 설정, 카프카 설정은 기본옵션을 사용했으며 각 서버에 동일하고, 포트 설정 정도만 변경해준다.
1. kafka install
wget http://archive.apache.org/dist/kafka/2.5.0/kafka_2.13-2.5.0.tgz
tar -zxvf kafka
rm kafka_2.13-2.5.0.tgz
2. 주키퍼 설정
# 카프카 설치한 디렉토리 패스로 이동
vi config/zookeeper.properties
아래 설정이 주키퍼 기본 세팅
#zookeeper.properties
dataDir=/tmp/zookeeper
clientPort=2181
maxClientCnxns=0
initLimit=5
syncLimit=2
server.1=broker-server1:2888:3888
server.2=broker-server2:2888:3888
server.3=broker-server3:2888:3888
위에서 설정한 주키퍼 데이터 디렉토리 생성
mkdir /tmp/zookeeper
각 서버마다 주키퍼 id 부여
# broker가 3대이므로 1~3으로 id 부여
echo 1 > /tmp/zookeeper/myid
echo 1 > /tmp/zookeeper/myid
echo 1 > /tmp/zookeeper/myid
3. 카프카 설정
카프카 설정
vi config/server.properties
브로커 1~3까지 아이디 및 advertised.listeners 적절히 수정, 그 외에 나머지는 모두 동일함.
아래 옵션을 위에 추가해주고 주키퍼 및 카프카 옵션 주석처리하는 게 빠름
#server.properties
broker.id=1
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://broker-server1:9092
zookeeper.connect=broker-server1:2181,broker-server2:2181,broker-server3:2181
별도의 옵션은 카프카 및 주키퍼 설정을 검색해보면 쉽게 나온다. 클러스터 구축 포스팅이므로 생략함
4. 주키퍼 실행
반드시 주키퍼부터 실행해야 한다. 주키퍼가 카프카의 메타데이터를 관리하기 때문이다.
각 서버에서 아래 start 명령어 실행. 데몬으로 실행하지 않는 경우 connection refused 에러를 확인할 수 있는데, 다른 서버에서 주키퍼를 실행하지 않아서 발생한다. (종료는 stop 명령어)
# start
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
# stop
bin/zookeeper-server.stop.sh
5. 카프카 실행
각 서버에서 아래 start 명령어 실행 (종료는 stop 명령어)
# start
bin/kafka-server-start.sh -daemon config/server.properties
# stop
bin/kafka-server-stop.sh
6. 토픽 리스트 확인
# topic list
bin/kafka-topics.sh --list --bootstrap-server broker-server1:9092,broker-server2:9092,broker-server3:9092
7. 클러스터 브로커 리스트 확인
bin/kafka-broker-api-versions.sh --bootstrap-server broker1:9092 | grep 9092
8. 카프카 벤치마크 테스트
'Data Engineering & DataOps > Kafka' 카테고리의 다른 글
M1 confluent-kafka 설치 에러 - fatal error: 'librdkafka/rdkafka.h' file not found (0) | 2021.09.17 |
---|---|
카프카 성능 테스트 (0) | 2021.06.07 |
카프카 미러메이커 (0) | 2021.05.24 |
읽어보면 좋은 카프카 자료 (0) | 2021.05.21 |
카프카 컨테이너로 빠르게 구축하기 with. confluent cp-all-in-one image (0) | 2021.05.13 |
Comments