ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • kafka 클러스터 구축
    기타 2015. 10. 19. 09:00
    반응형
    OS : Ubuntu 14.04

    클러스터 1대 실행해서 테스트해보기

    kafka 다운받기
    wget http://apache.tt.co.kr/kafka/0.8.2.0/kafka_2.10-0.8.2.0.tgz
    tar -xzf kafka_2.10-0.8.2.0.tgz
    cd kafka_2.10-0.8.2.0/

    zookeeper 구동
    자바 먼저 설치
    sudo apt-get install openjdk-7-jdk

    zookeeper 실행
    bin/zookeeper-server-start.sh config/zookeeper.properties

    kafka 실행
    bin/kafka-server-start.sh config/server.properties

    Topic 생성하기
    bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

    Topic 확인하기
    bin/kafka-topics.sh --list --zookeeper localhost:2181

    Topic에 메세지 보내기
    bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test 
    This is a message
    This is another message

    Comsumer로 메세지 가져오기
    bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning


    클러스터 3대로 확장해 보기
    각서버에서 kafaka 다운받고, 자바 설치

    zookeeper 설정 수정
    config/zookeeper.properties 파일 내용 수정

    dataDir=/tmp/zookeeper    #zookeeper가 사용할 데이터 디렉토리
    clientPort=2181                  #zookeeper가 사용할 포트
    maxClientCnxns=0             #하나의 클라이언트에서 동시접속하는 개수 제한. 기본은 60. 0으로 두면 무제한.

    initLimit=5                           #하나의 zookeeper 리더에 연결해서 동기화하는 시간
    syncLimit=2                        #리더가 아닌 zookeeper 노드가 리더와 동기화하는 시간

    server.1=kafka01:2888:3888   #server.id=host:port:port
    server.2=kafka02:2888:3888   #server.id=host:port:port
    server.3=kafka03:2888:3888   #server.id=host:port:port

    노드별로 /tmp/zookeper/myid에 자신의 id 정보를 입력해서 자신이 어떤 노드인지 구분
    echo 1 > /tmp/zookeeper/myid

    각 노드에서 zookeeper 실행
    bin/zookeeper-server-start.sh config/zookeeper.properties

    kafka 설정 수정
    config/server.properties 파일 내용 수정

    broker.id=0       #각 노드별로 ID 지정
    zookeeper.connect=kafka01:2182,kafka02:2182,kafka03:2182     #zookeeper 서버 설정

    kafka 실행
    bin/kafka-server-start.sh config/server.properties

    Topic 생성
    bin/kafka-topics.sh --create --zookeeper kafka01:2181 --replication-factor 3 --partitions 10 --topic test01

    Topic 리스트 확인
    bin/kafka-topics.sh --list --zookeeper kafka01:2181

    Topic 상세정보 확인
    bin/kafka-topics.sh --describe --zookeeper kafka01:2181 --topic test01

    Topic에 메세지 보내기
    bin/kafka-console-producer.sh --broker-list kafka01:9092 --topic test01
    test
    test01

    Topic에서 메세지 받기
    bin/kafka-console-consumer.sh --zookeeper kafka01:2181 --topic test01 --from-beginning


    참고


    반응형

    '기타' 카테고리의 다른 글

    Fleet 사용하기  (0) 2015.10.23
    etcd 클러스터  (0) 2015.10.21
    Docker를 이용한 Jenkins 설정  (0) 2015.09.16
    chef cookbook 구조  (0) 2015.03.26
    Ansible 설치 & 기본사용하기  (0) 2014.08.29

    댓글

Designed by Tistory.