zoukankan      html  css  js  c++  java
  • 搭建kafka及zookeeper集群

    要搭建一个kafka集群,但是kafka又是基于zookeeper的,所以需要先搭建一个zookeeper集群

    环境:centos 7(虚拟机)

    jdk :1.8(官网下载)

    zookeeper:3.4.9(官网下载即可)

    接下来:

    1. 解压 tar --zxvf zookeeper-3.4.9.tar.gz

    2. 重命名 mv zookeeper-3.4.9 zookeeper

    3. 创建文件夹

    cd zookeeper

    mkdir logs

    mkdir data

    4. 进入conf文件夹下,复制配置文件zoo_sample.cfg,并将新文件夹命令为zoo.cfg

    5. 修改zoo.cfg的内容:vi zoo.cfg

    clientPort=2181
    dataDir=/opt/zookeeper/data
    dataLogDir=/opt/zookeeper/logs

    server.1=192.168.56.72:2881:3881
    server.2=192.168.56.73:2881:3881
    server.3=192.168.56.74:2881:3881

    其中的data和logs文件夹就是之前创建的

     6. 创建myid文件,就是在data目录下创建即可

    值是面server后面的数字,我的三台虚拟机的myid文件的值分别是1,2,3,和上面的配置对应上了

     这样配置就可以了。

    验证一下效果:

    分别启动一下zookeeper,进入bin目录 ./zkServer.sh start

    通过jps查看:

    看到QuorumPeerMain就代表成功了,也可以执行./zkServer.sh status

    zookeeper已经安装完毕接下来进行kafka的安装:

    我用的kafak是 https://archive.apache.org/dist/kafka/0.8.1/kafka_2.9.2-0.8.1.tgz 

    1.解压:tar -zxvf kafka_2.9.2-0.8.1.tgz 并命名为kafka

    2.创建logs文件夹,后面配置会用到

    3.修改config文件下的server.properties文件

    broker.id=0 //这个值建议与zookeeper里面的myid保持一致

    host.name = 192.168.56.72 //本机ip,不要配置为localhost

    log.dir= /opt/kafka/logs  //刚才创建的logs文件夹

    zookeeper.connect = 192.168.56.72:2181,192.168.56.73:2181,192.168.56.74:2181

    message.max.byte=5048576     //kafka一条消息容纳的消息最大为多少

    default.replication.factor=2   //每个分区默认副本数量

    replica.fetch.max.bytes=5048576

    4.配置完成后启动kafka

    bin/kafak-server-start.sh ./config/server.properties (如需后台启动,加上参数-daemon)

    另外如果报错,需要加入slf4j-nop-1.7.6.jar(放置在kafak/lib下面)

    附链接:http://www.slf4j.org/dist/slf4j-1.7.6.zip

    如果还报错,尝试关闭防火墙,由于用的是centos 7:

    systemctl stop firewalld.service

    systemctl disable firewalld.service

    验证结果:

    创建topic

    ./kafak-topics.sh --create zookeeper 192.168.56.72:2181 --replication-factor 1 --partition --topic check

    查看topic列表

    ./kafka-topics.sh --lst --zookeeper 192.168.56.72:21281

    生产者发送消息

    ./kafak-console-producer.sh --broker-list 192.168.56.72:9092 --topic check

    消费者消费消息

    ./kafka-console-consumer.sh --zookeeper 192.168.56.72:2181 --topic check --from-beginning

    实例截图:

  • 相关阅读:
    2. Git基础命令
    1.Git基础配置
    demo_49 大结局
    demo_48 上传图片实现
    demo_47 反馈图片选择功能实现
    demo_46 问题反馈页面实现
    gitlab +jenkins
    面试分析
    面试基础 一文件操作和程序进程
    man 命令帮助文档的使用
  • 原文地址:https://www.cnblogs.com/telunike/p/10879067.html
Copyright © 2011-2022 走看看