kafka 集群安装部署教程总结

本文详细介绍了如何在一机多实例环境下搭建Zookeeper集群及Kafka集群的过程,包括配置文件的修改、环境变量设置、启动步骤及验证方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近项目在用kafka,特此将步骤记录下来

搭建kafka需要先搭建zookeeper集群,由于机器有限,所以都在一台机器上完成

一、zookeeper搭建

1、zookeeper-3.4.10.tar.gz  版本

2、配置:

  (1)将安装包放到zookeeper1  、zookeeper2、zookeeper3三个文件夹中,分别解压

  解压: >tar -zxvf zookeeper-3.4.10.tar.gz

 (2)分别对三个文件夹做如下操作:

       1)在解压好的 zookeeper-3.4.10.文件夹下面新建zkdata文件夹和zkdatalog文件夹

       2)在conf目录下,复制zoo_sample.cfg文件,并命名为zoo.cfg,官方配置文件,打开zoo.cfg文件进行修改:

         tickTime=2000
          initLimit=10
          syncLimit=5
           clientPort=2181(针对于其他两台,分别为2182,2183, 三个要区别开)
        dataDir=/home/dmcl216/zookeeper1/zookeeper-3.4.10/zkdata
        dataLogDir=/home/dmcl216/zookeeper1/zookeeper-3.4.10/zkdatalog
       server.1=192.168.0.129:2887:3887
       server.2=192.168.0.129:2888:3888
       server.3=192.168.0.129:2889:3889

保存,其他两个也是这样配置,只不过需要将clientPort修改为2182和2183即可

    3)在zkdata文件夹中创建myid文件,并将内容分别置位1,或者2,或者3,根据 server.1,  server.2,server.3决定的(一定要记住往myid文件中写入机器数字,否则会出错)

(3)修改系统变量:

  >sudo vim /etc/profile

  添加zookeeper的系统变量

export ZOOKEEPER1_HOME=/home/dmcl216/zookeeper1/zookeeper-3.4.10
export PATH=${ZOOKEEPER1_HOME}/bin:$PATH

export ZOOKEEPER2_HOME=/home/dmcl216/zookeeper2/zookeeper-3.4.10
export PATH=${ZOOKEEPER2_HOME}/bin:$PATH

export ZOOKEEPER3_HOME=/home/dmcl216/zookeeper3/zookeeper-3.4.10

export PATH=${ZOOKEEPER3_HOME}/bin:$PATH

(4)可以启动

 分别进入bin目录

bin >./zkServer.sh start

查看启动状态:

bin > ./zkServer.sh status

ZooKeeper JMX enabled by default
Using config: /home/dmcl216/zookeeper1/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower

出现这个即表示启动成功,选举leader成功

二、kafka集群搭建:

1、kafka_2.11-1.1.0.tgz 版本

分别放到kafka1,kafka2,kafka3三个文件夹中进行解压

>tar -zxvf kafka_2.11-1.1.0.tgz

2、在三个文件夹的kafka_2.11-1.1.0下分别创建kafkaLog目录文件夹

3、在config下有配置文件server.properties进行配置:(三个差不多)

broker.id=0(另外两个为1和2,记得修改)
log.dirs =/opt/server/kafka/kafka1/kafkaLog(注意路径不同)
listeners=PLAINTEXT://172.16.2.15:9092
port=9092(另外连个为9093和9094,记得修改)
zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183
message.max.byte=5242880
default.replication.factor=2

replica.fetch.max.bytes=5242880

4、在config文件夹下修改consumer.properties

添加:

zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183

group.id=logGroup

5、启动三个节点

进入到bin目录下,分别启动:

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

三、验证

 1、创建topic来验证是否创建成功

    创建topic

    ./kafka-topics.sh --create --zookeeper 192.168.172.10:2181 --replication-factor 2 --partitions 1 --topic my-topic

参数解释:

    --replication-factor 2 // 复制两份
    --partitions 1 // 创建1个分区
    --topic // 主题为my-topic
    -- --zookeeper // 此处为为zookeeper监听的地址

    2、创建生产者producer

    ./kafka-console-producer.sh --broker-list 192.168.172.129:9092 (主机名即可)--topic my-topic //`这个IP地址可以写brokerlist中的任意一个

此时,console处于阻塞状态,可以直接输入数据。

  3、  创建消费者
    此时要切换到另一台虚拟机的shell界面输入以下命令:

    ./kafka-console-consumer.sh --bootstrap-server 192.168.172.129:9092 --topic my-topic --from-beginning

此时,一旦有数据生成,此处的console中就会显示数据。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值