您的位置 首页 java

陪你一起学kafka(三)——集群篇

简介

微服务 的三高,高并发,高可用,高可靠,作为微服务中必不可少的MQ中间件, kafka 也必须要满足这三点。kafka如何如何保证高并发,高可用,高可靠,两个字——集群。

前置条件

  • 三台服务器,用来部署三个kafak
  • java环境, jdk 1.8+
  • kafka安装包版本kafka_2.13-3.0.0
  • zookeeper (非必须,可以使用kafka自带的)

zookeeper集群安装

kafka本身是没有调度能力,需要借助zookeeper来进行任务调度,所以需要安装zookeeper

单机安装

解压zookeeper安装包

 tar -zxvf  apache -zookeeper-3.7.0-bin.tar.gz
  

修改配置

 cp apache-zookeeper-3.7.0-bin/conf/zoo_sample.cfg apache-zookeeper-3.7.0-bin/conf/zoo.cfg
vi apache-zookeeper-3.7.0-bin/conf/zoo.cfg
  

末尾添加内容:

 #事务日志输出目录
dataDir=../zkdatas
#集群服务器配置,数字1/2/3需要与myid文件一致。右边两个端口,2888表示数据同步和通信端口;3888表示选举端口
server.1=server1:2888:3888
server.2=server2:2888:3888
server.3=server3:2888:3888
  

创建日志目录和myid文件

 #创建数据存储目录:
     mkdir  zkdatas 
#创建myid: 
  cd zkdatas 
  touch myid
  并编辑myid内容为1
  

启动

 apache-zookeeper-3.7.0-bin/bin/zkServer.sh start
  

复制到其他两台服务器并启动

将以上的步骤在其他两台服务器上一模一样的执行,其中注意myid文件的内容,三台服务器要分别是1,2,3

查看集群状态

 apache-zookeeper-3.7.0-bin/bin/zkServer.sh status
  

kafka集群安装

安装单机kafka

参考:

复制该kafka到其他服务器

复制该kafka到其他服务器

修改配置文件

修改server.properties,主要参数是:

  • broker.id,保证三台服务器都是唯一的
  • zookeeper.connect,zookeeper集群地址
  • log.dirs 日志目录
 vi kafka_2.13-3.0.0/config/server.properties
  

分别启动三台服务器上的kafka

kafka_2.13-3.0.0/bin/kafka-server-start.sh –daemon config/server.properties &

测试

创建主题

 ./kafka_2.13-3.0.0/bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic test --replication-factor 3 --partitions 2
  

发送消息

 ./kafka_2.13-3.0.0/kafka-console-producer.sh --broker-list localhost:9092 --topic test
  

消费消息

 ./kafka_2.13-3.0.0/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning  

需要交流学习可以关注公众号【温故知新之java】,互相学习,一起进步。

文章来源:智云一二三科技

文章标题:陪你一起学kafka(三)——集群篇

文章地址:https://www.zhihuclub.com/183925.shtml

关于作者: 智云科技

热门文章

网站地图