服務器: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