른록노트

[Kfaka/Zookeeper] 설치 - 1 본문

Server,OS/[Linux]

[Kfaka/Zookeeper] 설치 - 1

른록 2020. 9. 28. 18:01

@ 시작하기전

Window PC에서 VMware로 Linux서버 3대로 클러스터 구성할 계획입니다.

서버사양

OS : CentOS7.4

CPU : 3 core

Memory : 4 GB

주키퍼 주키퍼 버전 : zookeeper-3.5.8

설치할 카프카 버전 : kafka 2.13-2.6.0

 

@ 최종목표

카프카/주키퍼를 설치하고 카프카커넥터로 데이터를 받아 토픽을 만들어서 저장하고

스파크를 이용하여 consumer 만들어서 elastic에 데이터 저장

 

@ 방법

(zookeeper.apache.org/doc/r3.5.8/zookeeperStarted.html)

(kafka.apache.org/quickstart)

 

[모든서버]

> curl apache.mirror.cdnetworks.com/kafka/2.6.0/kafka_2.13-2.6.0.tgz -O

> tar -xvf kafka_2.13-2.6.0.tgz

> vim config/zookeeper.properties (주키퍼 설정)

dataDir=/data/zookeeper_data
clientPort=2181
maxClientCnxns=0
tickTime=2000
initLimit=5  // 처음 시작시 다른서버들 기다리는 시간 제한
syncLimit=2  // 서버들간의 시간 차이 제한
server.1=server-1:2888:3888
server.2=server-2:2888:3888
server.3=server-3:2888:3888

zookeeper dataDir에 myid 파일이 있어야함

[서버1] > echo 1 > /data/myid

[서버2] > echo 2 > /data/myid

[서버2] > echo 2 > /data/myid

 

> bin/zookeeper-server-start.sh config/zookeeper.properties (주키퍼 실행)

 

[새로운 터미널]

> vim config/server.properties (카프카 설정)

#각 서버의 broker.id가 달라야함
[서버1] broker.id=1
[서버2] broker.id=2
[서버3] broker.id=3

#토픽 만들어질때 디폴트 값 설정
num.partitions=3
offsets.topic.replication.factor=3
# 주키퍼 설정
zookeeper.connect=server-1:2181,server-2:2181,server-3:2181

> 카프카 실행

 

[1번서버]

> bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092 --replication-factor 3 ( 토픽생성 )

* > bin/kafka-topics.sh --help ( 도움말 )

> bin/kafka-topics.sh --describe --topic quickstart-events --bootstrap-server localhost:9092 (토픽확인)

> bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092 (토픽에 데이터 저장)

> bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092 (확인)

 

반응형
Comments