本文为博主原创,未经允许不得转载:
如果搭建单机节点 kafka 可看我的这篇博客:
搭建 kafka 集群环境,只需要在搭建单机 kafka 环境的基础上,多增加几个kafka 服务实例即可。
多增加 kafka 服务实例,只需要多启动 几个kafka 服务。
1. 首先,我们需要建立好其他2个broker的配置文件:
cp config/server.properties config/server‐1.properties cp config/server.properties config/server‐2.properties
配置文件的内容分别如下:
config/server-1.properties:
#broker.id属性在kafka集群中必须要是唯一 broker.id=1 #kafka部署的机器ip和提供服务的端口号 listeners=PLAINTEXT://112.125.26.68:9093 log.dir=/usr/local/data/kafka‐logs‐1
config/server-2.properties:
broker.id=2 listeners=PLAINTEXT://192.168.0.60:9094 log.dir=/usr/local/data/kafka‐logs‐2
2. 启动 kafka 实例
bin/kafka‐server‐start.sh ‐daemon config/server.properties
bin/kafka‐server‐start.sh ‐daemon config/server‐1.properties
bin/kafka‐server‐start.sh ‐daemon config/server‐2.properties
3. 创建一个新的topic,副本数设置为3,分区数设置为2:
bin/kafka‐topics.sh ‐‐create ‐‐zookeeper 112.125.26.68:2181 ‐‐replication‐factor 3 ‐‐partitions 2 ‐‐topic my‐replicat ed‐topic
查看下topic的情况
bin/kafka‐topics.sh ‐‐describe ‐‐zookeeper 112.125.26.68:2181 ‐‐topic my‐replicated‐topic
第一行是所有分区的概要信息,之后的每一行表示每一个partition的信息。
leader节点负责给定partition的所有读写请求。
replicas 表示某个partition在哪几个broker上存在备份。不管这个几点是不是”leader“,甚至这个节点挂了,也会列出。
isr 是replicas的一个子集,它只列出当前还存活着的,并且已同步备份了该partition的节点。