Kafka 3nodes集群部署步骤

一. 准备工作:

    1. 准备3台机器,IP地址分别为:

          192.168.3.230(master)
          192.168.3.233(slave1)
          192.168.3.234(slave2)

    2. 下载kafka稳定版本,我的版本为:Scala 2.11  - kafka_2.11-0.9.0.0.tgz

        http://kafka.apache.org/downloads.html

    3. 分别解压放入到想安装的目录下,我的目录为:/home/rasa 解压命令为:

        tar -xzf *.tgz


二、搭建zookeeper集群

    1. 分别修改三台机器的hosts,加入

     192.168.3.230 master

     192.168.3.233 slave1

     192.168.3.234 slave2

    2. 进入解压后的目录/home/rasa/kafka_2.11-0.9.0.0

    2. 进入config目录下,修改zookeeper.properties文件(所有机器相同)

        tickTime =2000

        dataDir =/data/zookeeper/

        clientPort =2181

        initLimit =5

        syncLimit =2

        server.1 =master:2888:3888

        server.2 =slave1:2888:3888

        server.3 =slave2:2888:3888


    3.在dataDir目录/data/zookeeper/下写一个myid文件,命令如下:

        echo 1 >myid

        注意:这个id是zookeeper的主机标示,每个主机id不同第二台是2 第三台是3。


    4.逐次启动3台机器的zookeeper 构成一个集群:

        > bin/zookeeper-server-start.sh config/zookeeper.properties &

        由于ZooKeeper集群启动的时候,每个结点都试图去连接集群中的其它结点,先启动的肯定连不上后面还没启动的,所以打印出来的部分的异常是可以忽略的。集群在选出一个Leader后,最后稳定了。其他结点可能也出现类似问题,属于正常。


三、搭建kafka集群

    1.进入config目录,修改server.properties(逐个机器修改)

        broker.id =1(其他机器为 2/3)

        port =9092

        zookeeper.connect=master:2181,slave1:2181,slave2:2181

        log.dirs =/home/rasa/kafka-logs

        host.name =192.168.3.230

        advertised.host.name =192.168.3.230

    2.启动每台服务器的kafka:

        > bin/kafka-server-start.sh config/server.properties &


四、测试集群

    1.创建一个topic

        > bin/kafka-topics.sh --create --zookeeper 192.168.3.230:2181 --replication-factor 3 --partitions 1

            --topic test-topic


    2.查看创建的topic

        > bin/kafka-topics.sh --describe --zookeeper 192.168.3.230:2181 --topic test-topic

            Topic:test-replicated-topic    PartitionCount:1    ReplicationFactor:3    Configs:

            Topic: test-replicated-topic    Partition: 0    Leader: 1    Replicas: 1,2,0    Isr: 1,2,0


     3.查看topic列表

          > bin/kafka-topics.sh --list --zookeeper 192.168.3.230 :2181 

    test

    test-topic

    查看列表及具体信息

          > bin/kafka-topics.sh --zookeeper localhost --describe


    4.查看集群情况:

        >bin/kafka-topics.sh --describe --zookeeper 192.168.3.233:2181 --topic test-topic

        >bin/kafka-topics.sh --describe --zookeeper 192.168.3.234:2181 --topic test-topic

        发现都能看到test-topic。


     5.生产消息

          > bin/kafka-console-producer.sh --broker-list 192.168.3.234:9092 -topic test-topic

     6.消费消息

          > bin/kafka-console-consumer.sh --zookeeper 192.168.3.234:2181 --from-beginning --topic test-topic

你可能感兴趣的:(Kafka 3nodes集群部署步骤)