kafka2.5.0集群架构搭建及验证
1)kafka的集群架构搭建特别简单:
先修改kafka的 config/server.properties配置文件,每一个kafka Server都连接到相同的zookeeper地址,如果zookeeper是集群,则用逗号隔开多个地址,集群就搭建好了。
这里贴出server.properties的关键几个配置:
broker.id=0 // broker ID, 集群模式下该ID必须唯一。重点:每新启动一个Kafka Server加入Kafka集群,该id必须且只能+1,否则会报错 id不在指定范围之内。 zookeeper.connect=localhost:2181,192.168.2.60:2181 // 多个kafka Server只要连接到相同的zookeeper,即被认为kafka集群 listeners=PLAINTEXT://localhost:9092 // kafka Server端启动端口,如果是同一台机器启动多个Kafka Server,则需要改此端口号 log.dirs=/tmp/kafka-logs,/directory2,/directory3 // kafka日志数据存储目录,就是存储你的数据,包括topic分区都会存储在这里
其他配置参考《kafka2.5.0详解核心配置文件server.properties》
再修改zookeeper的配置文件: conf/zoo.cfg (从zoo_sample.cfg拷贝出来命名为zoo.cfg,因为zoo.cfg是默认zookeeper启动配置文件名)
dataDir=/tmp/zookeeper // 这里重新定义你自己的zookeeper数据存储目录
2) 先启动zookeeper,再启动 Kafka Server
必须先启动zookeeper,因为zookeeper相当于kafka Server的管理中心
[joyce@192 zookeeper-3.6.1]$ bin/zkServer.sh start ZooKeeper JMX enabled by default Using config: /home/joyce/soft/zookeeper-3.6.1/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
启动kafka:
bin/kafka-server-start.sh config/server.properties
多个Kafka Server 挨个启动就行了。
3)Kafka集群验证:
zookeeper工具: 下载ZooInspector工具,连接到Zookeeper,查看节点中的数据验证Kafka集群。
在cluster目录下,controller文件就是zookeeper里存储的kafka控制器,里面的brokerid 值就是当前哪个broker成为kafka的控制器,一般为第一个连上zookeeper的kafka Server。
在brokers目录下,ids文件夹下存储的就是各个broker.id,组合成kafka集群
4)Topic验证
新建一个Topic名叫abc,查看该Topic的所有分区,以及每个分区的leader所在位置。
比如在ZooInspector里选择路径: brokers --> topics --> partitions --> 1 --> state,可得知 分区1所在的leader是broker 2 :
end.