首页

关于如何配置kafka集群的详细操作教程(单机多broker和多机多broker两种不同集群方式)

标签:kafka集群,多机多broker,单机多broker     发布时间:2019-03-29   

一、集群说明

关于kafka常用的两种集群方式:1)单机多broker - 单台服务器配置多个broker  2) 多机多broker - 多台服务器配置多个broker(3个zookeeper、3个kafka)

二、单机多broker

1. 在单独服务器(192.168.1.7)上安装zookeeperkafka软件

2. 复制config/server.properties为server-1.propeties,并进行如下修改

[root@centos6 kafka]# cp  config/server.properties   config/server-1.properties@b@[root@centos6 kafka]# vi  config/server-1.properties@b@@b@#broker.id=0@b@broker.id=1@b@@b@#listeners=PLAINTEXT://:9092@b@listeners=PLAINTEXT://192.168.1.7:9093@b@@b@#host.name=localhost@b@host.name=192.168.1.7@b@@b@#log.dirs=/tmp/kafka-logs@b@log.dirs=/tmp/kafka-logs-1

3. 修改config/producer.properties

[root@centos6 kafka]# vi  config/producer.properties@b@#metadata.broker.list=localhost:9092@b@metadata.broker.list=192.168.1.7:9092,192.168.1.7:9093

4. 分别运行kafka基于不同配置启动进程

[root@centos6 kafka]# bin/kafka-server-start.sh    config/server.properties
[root@centos6 kafka]# bin/kafka-server-start.sh    config/server-1.properties

5. 通过项目示例进行测试验证 - 修改props.put("bootstrap.servers", "192.168.1.79092,192.168.1.7:9093");

三、多机多broker

1. 分别在三台服务器(192.168.1.7、192.168.1.8、192.168.1.9)上安装zookeeperkafka软件

2.  分别在三台服务器分别配置zk集群 - 修改zk配置文件conf/zoo.cfg 并增加如下配置

server.1=192.168.1.7:7008@b@server.2=192.168.1.8:7008@b@server.3=192.168.1.9:7008

3. 分别在三台服务器配置kafka的config/server.properties配置文件

#192.168.1.7/8/9  三台机器将broker.id分配配置为1、2、3@b@#broker.id=0@b@broker.id=1@b@#192.168.1.7/8/9  三台机器的host.name分配定义各自ip地址@b@#host.name=localhost@b@host.name=192.168.1.7@b@#zookeeper.connect=localhost:2181@b@zookeeper.connect=192.168.1.7:2181,192.168.1.8:2181,192.168.1.9:2181

4. 分别在三台服务器配置kafka的config/producer.properties配置文件

#metadata.broker.list=localhost:9092@b@metadata.broker.list=192.168.1.7:9092,192.168.1.8:9092,192.168.1.9:9092@b@#producer.type=sync@b@producer.type=async

5. 分别在三台服务器配置kafka的config/consumer.properties配置文件

#zookeeper.connect=127.0.0.1:2181@b@zookeeper.connect=192.168.1.7:2181,192.168.1.8:2181,192.168.1.9:2181

6. 对应步骤3中server.properties修改的broker.id,对/tmp/kafka-logs/meta.properties(server.properties中默认配置log.dirs=/tmp/kafka-logs)做对应的broker.id修改,需保持一致,否则会启动会报异常,造成启动失败,具体如下

[root@centos6 kafka]# vi  /tmp/kafka-logs/meta.properties@b@#192.168.1.7/8/9  三台机器将broker.id分配配置为1、2、3@b@#broker.id=0@b@broker.id=1

7. 配置完成后,分别在三台服务器启动kafka(bin/kafka-server-start.sh    config/server.properties启动命令)

8. 通过项目示例进行测试验证 - 修改props.put("bootstrap.servers", "192.168.1.7:9092,192.168.1.8:9092,192.168.1.9:9092");