Kafka集群搭建

kafka版本:

kafka_2.12-2.2.0.tgz
百度网盘链接:https://pan.baidu.com/s/1LAfXpdVg9IKZNGe8OgBgcQ
提取码:sb71

zookeeper配置

vi /usr/local/kafka/config/zookeeper.properties

配置内容:
dataDir=/usr/local/kafka/my_dir/zookeeper/data
clientPort=2181
initLimit=10
syncLimit=5
maxClientCnxns=0
server.1=192.168.1.4:2888:3888
server.2=192.168.1.5:2888:3888
server.3=192.168.1.6:2888:3888
注意:1 dataLogDir路径未配置(可以尝试配置),下面启动命令指定了日志输出路径 2 initLimit如果未配置,启动会提示该参数未配置 3 myid文件需要写在dataDir目录下面,里面存储的id和server.x这里的x相对应。

踩坑:自己搭建zookeeper集群未能成功(brokerIds未写入zookeeper节点),使用kafka目录的zookeeper配置zookeeper集群,成功了。自己搭建的zookeeper集群,用dubbo连接是可以正常使用的。但是./zkServer.sh status命令查看时,提示service可能没启动

启动zookeeper

nohup /usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties >> /usr/local/kafka/my_dir/zookeeper/log/my.file 2>&1 &

查看zookeeper日志

tail -100f /usr/local/kafka/my_dir/zookeeper/log/my.file

kafka配置

vi /usr/local/kafka/config/server.properties

配置内容(主要列出):
//每台机器上的id必须不同
broker.id=0
//日志目录
log.dirs=/usr/local/kafka/my_dir/kafka/log
//本机ip和端口
listeners=PLAINTEXT://192.168.1.5:9092
//zookeeper地址
zookeeper.connect=192.168.1.4:2181,192.168.1.5:2181,192.168.1.6:2181

启动kafka

nohup /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties >> /usr/local/kafka/my_dir/kafka/log/ka.file 2>&1 &

nohup /usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties

查看kafka日志

tail -100f /usr/local/kafka/my_dir/kafka/log/ka.file

创建topic

./kafka-topics.sh --create --zookeeper 192.168.1.6:2181 --replication-factor 2 --partitions 2 --topic myTopic

测试关闭第二台机器kafka

结果:节点内容正确为0,2,全部启动为0,1,2
在这里插入图片描述

发送消息、接收消息

jar包部署到云服务器,消息收发成功。

最后说明

机器时云上的3台机器(同一局域网,每台机器双网卡,一个外网的ip、一个内网的ip)。
我在家里可以调用部署在云上的zookeeper集群(zookeeper集群部署方法基本和上面(kafka内部的zookeeper集群)类似,不同的就是单独下载zookeeper包)。
我本机启动的dubbo服务是可以使用云上搭建的zookeeper集群(节点写入、调用正常)。但是,kafka就是无法写入brokerIds信息到zk的节点上。kafka启动未发现明显异常。
配置kafka内部的zookeeper.properties搭建集群,是成功的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值