搭建 Kafka 集群 (v2.12-2.3.0)

服务器:10.20.32.121,10.20.32.122,10.20.32.123 

三台服务器都需要安装jdk、配置zookeeper、配置kafka

1、安装配置jdk1.8

[root@localhost ~]# cat /etc/profile
export JAVA_HOME=/opt/jdk1.8.0_101
export PATH=$JAVA_HOME/bin:$PATH

2、安装配置zookeeper集群

3、安装配置kafka集群(以10.20.32.121配置为例)

3.1、下载解压文件

[root@node3 cluster]# cd /opt && wget https://www-eu.apache.org/dist/kafka/2.3.0/kafka_2.12-2.3.0.tgz 
[root@node3 cluster]# tar zxvf kafka_2.12-2.3.0.tgz

3.2、编辑配置文件/opt//kafka_2.12-2.3.0/config/server.properties,以下是需要修改的部分

broker.id=121
listeners=PLAINTEXT://10.20.32.121:9092
log.dirs=/opt/kafka_2.12-2.3.0/kafkalogs
zookeeper.connect=10.20.32.121:2181,10.20.32.122:2181,10.20.32.123:2181
# Timeout in ms for connecting to zookeeper需修改,不然报超时
zookeeper.connection.timeout.ms=60000
#group.initial.rebalance.delay.ms=0

注意:

如果是单机版的话,使用默认配置即可。

如果是配置集群,下面信息必须修改:

(1)、broker.id:同一个集群中,每台机器均不能一样

(2)、zookeeper.connect:因为我有3台zookeeper服务器,所以在这里zookeeper.connect设置为3台,必须全部加进去

(3)、listeners:在配置集群的时候,必须设置,不然以后的操作会报找不到leader的错误
10.20.32.122与10.20.32.123服务器只需要修改broker.id、listeners值,broker.id=122 listeners=PLAINTEXT://10.20.32.122:9092,broker.id=123 listeners=PLAINTEXT://10.20.32.123:9092

4、启动zookeeper、kafka

/opt/zookeeper-3.4.10/bin/zkServer.sh start

/opt/kafka_2.12-2.3.0/bin/kafka-server-start.sh -daemon /opt/kafka_2.12-2.3.0/config/server.properties

5、测试

10.20.32.121上创建test主题:
/opt/kafka_2.12-2.3.0/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
10.20.32.122、10.20.32.123上查看topic:
/opt/kafka_2.12-2.3.0/bin/kafka-topics.sh --list --zookeeper localhost:2181

原文地址:https://www.cnblogs.com/zhangmingcheng/p/11270986.html