kafka单机和集群安装。
kafka_2.12-2.4.1的下载地址载链接如下: https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.4.1/kafka_2.12-2.4.1.tgz
[root@master tools]# tar -xvf kafka_2.12-2.4.1.tgz -C /usr/local
[root@master tools]# cd /usr/local
[root@master local]# mv kafka_2.12-2.4.1 kafka
#修改profile文件
echo '#配置kafka环境变量' >> /etc/profile
echo 'export KAFKA_HOME=/usr/local/kafka' >> /etc/profile
echo 'export PATH=$PATH:$KAFKA_HOME/bin' >> /etc/profile
#主要修改以下几个属性
...
broker.id=0
log.dirs=/usr/local/kafka/kafka-logs
zookeeper.connect=master:2181
主要参数含义如下:
broker.id:集群节点id编号,单机模式不用修改
listeners:默认监听9092端口
log.dirs:注意:这个目录不是存储日志的,是存储Kafka中核心数据的目录,这个目录默认是指向的tmp目录,所以建议修改一下
zookeeper.connect:kafka依赖的zookeeper
#启动kafka
cd $KAFKA_HOME
bin/kafka-server-start.sh -daemon config/server.properties
#关闭kafka
cd $KAFKA_HOME
bin/kafka-server-stop.sh
启动成功之后会产生一个kafka进程。
[root@master bin]# jps
2230 QuorumPeerMain
3117 Kafka
3182 Jps
注意:启动kafka之前必须先启动zookeeper
集群节点规划,使用三个节点搭建一个kafka集群:
master //192.168.128.128
slave1 //192.168.128.129
slave2 //192.168.128.130
注意:针对Kafka集群而言,没有主从之分,所有节点都是一样的。
修改config/server.properties
broker.id=0
log.dirs=/usr/local/kafka/kafka-logs
zookeeper.connect=master:2181,slave1:2181,slave2:2181
将修改好配置的kafka安装包拷贝到其它两个节点。
[root@master local]# scp -rp kafka slave1:/usr/local/
[root@master local]# scp -rp kafka slave2:/usr/local/
修改slave1和slave2上kafka中config/server.properties文件里的broker.id的值。
#slave1
broker.id=1
log.dirs=/usr/local/kafka/kafka-logs
zookeeper.connect=master:2181,slave1:2181,slave2:2181
#slave2
broker.id=2
log.dirs=/usr/local/kafka/kafka-logs
zookeeper.connect=master:2181,slave1:2181,slave2:2181
注意:slave1和slave2的kafka是从master拷贝过去的,所以必须把/usr/local/kafka/kafka-logs里的数据全部清除后再启动。
分别在master、slave1、slave2上启动kafka进程。
#启动kafka
cd $KAFKA_HOME
bin/kafka-server-start.sh -daemon config/server.properties
分别在master、slave1、slave2上执行jps命令验证是否有kafka进程。
#master主机进程
[root@master kafka]# jps
101064 Jps
30794 QuorumPeerMain
94364 Kafka
#slave1主机进程
[root@slave1 kafka]# jps
98243 Kafka
30195 QuorumPeerMain
100473 Jps
#slave2主机进程
[root@slave2 kafka]# jps
30144 QuorumPeerMain
97651 Kafka
99525 Jps
如果都有就说明kafka集群启动成功了!