本文为博主原创,未经允许不得转载:

  如果搭建单机节点 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

kafka 集群环境搭建_zookeeper

  第一行是所有分区的概要信息,之后的每一行表示每一个partition的信息。

    leader节点负责给定partition的所有读写请求。

    replicas 表示某个partition在哪几个broker上存在备份。不管这个几点是不是”leader“,甚至这个节点挂了,也会列出。

    isr 是replicas的一个子集,它只列出当前还存活着的,并且已同步备份了该partition的节点。