반응형

2. 카프카를 설치해보자.


우선 카프카를 다운로드 받는다...


#wget http://apache.mirror.cdnetworks.com/kafka/2.1.1/kafka_2.11-2.1.1.tgz


그리고 압축을 푼다.


# tar zxvf http://apache.mirror.cdnetworks.com/kafka/2.1.1/kafka_2.11-2.1.1.tgz


그러면 kafka_2.11-2.1.1 이 디렉토리에 풀린다.


주키퍼처럼 링크를 걸어준다.


#ln -s kafka_2.11-2.1.1 kafka


카프카 디렉토리로 이동해서 디렉토리를 두개 만든다..


#cd kafka

#mkdir data1 data2


그리고 카프카 설정파일을 수정한다.


#vi /root/kafka/config/server.properties


파일을 열어서 3군데를 수정한다.


############################# Server Basics #############################
# The id of the broker. This must be set to a unique integer for each broker.
broker.id=1

############################# Log Basics #############################
# A comma separated list of directories under which to store log files
log.dirs=/root/kafka/data1,/root/kafka/data2

############################# Zookeeper #############################
# Zookeeper connection string (see zookeeper docs for details).
# This is a comma separated host:port pairs, each corresponding to a zk
# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
# You can also append an optional chroot string to the urls to specify the
# root directory for all kafka znodes.
zookeeper.connect=kafka1:2181,kafka2:2181,kafka3:2181



broker.id는 /data/myid 에 저장했던 그 숫자다. 서버가 여러대라면 각 서버마다 부여된 myid 숫자를 입력한다.

log.dirs는 조금전에 생성된 디렉토리 주소를 넣어준다. 데이타를 분산해서 저장하는 역할을 한다.

zookeeper.connect 는 커넥트 주소를 입력하면 된다. 총 3대를 한다고 해서 3개가 들어갔다.

hostname을 안바꿨다면 각 서버별 ip주소를 입력해 줘도 된다.

#/root/kafka/bin/kafka-server-start.sh /root/kafka/config/server.properties

설정한 파일을 뒤에 붙이고 스타트 시켜준다. 그러면 뭔가 굉장히 많은 글들이 올라가면서 멈춘다...

마지막 글자를 읽어보면 카프카가 started 됐다고 나온다...

그런데 이상태에서는 뭔가 할수가 없으니 백그라운드로 실행해보자...

#/root/kafka/bin/kafka-server-start.sh -daemon /root/kafka/config/server.properties

이렇게 실행한다. 그리고 ps로 확인해보자.

#ps -ef | grep kafka

그러면 굉장히 긴 글의 카프카 데몬이 떠있는걸 확인할 수 있다.

위와 같은 방식으로 2번째 3번째 서버를 준비한다.

단 hosts 파일 myid 값, broker.id 값에 신경을 쓰고 작업하자...

이제 설정은 다 끝났다....3탄에서는 이놈으로 대체 뭘할지 테스트해보자



반응형

+ Recent posts