Kafka集群依赖ZK,需要先启动ZK集群
机器:hadop101,hadoop102, hadoop103
【1】在hadoop101解压:
tar -zxvf kafka_2.12-2.4.1.tgz -C ../module/
【2】在hadoop101修改server.properties配置:
#指定broker的id,类似zk的myid,去中心化的服务都有个id来标识自己
broker.id=1
#指定kafka绑定监听的地址,输入当前主机名
listeners=PLAINTEXT://hadoop101:9092
#指定kafka日志的存放路径
log.dirs=/data/kafka-data/
#配置ZK的节点
zookeeper.connect=hadoop101:2181,hadoop102:2181,hadoop103:2181
【3】在hadoop101上将kafka分发到hadoop102,hadoop103
scp -r kafka_2.12-2.4.1 hadoop102:`pwd`/
scp -r kafka_2.12-2.4.1 hadoop103:`pwd`/
【4】修改另外两台节点的server.properties
#hadoop102如下
broker.id=2
listeners=PLAINTEXT://hadoop102:9092
#hadoop103如下
broker.id=3
listeners=PLAINTEXT://hadoop103:9092
【5】配置Kafka环境变量(每台节点都要配置)
vim /etc/profile
添加
export KAFKA_HOME=/opt/module/kafka_2.12-2.4.1
export PATH=$PATH:$KAFKA_HOME/bin
生效
source /etc/profile
【6】启动kafka(每个节点都需要执行)
nohup /opt/module/kafka_2.12-2.4.1/bin/kafka-server-start.sh /opt/module/kafka_2.12-2.4.1/config/server.properties 2>&1 >> /opt/module/kafka_2.12-2.4.1/kafka-server.log &
【7】通过jps看到进程说明启动成功了
【8】kafka是绑定到9092端口,可以通过netstat -anp|grep 9092检查端口是否正常
如图,9092被进程2405(Kafka)监听了
【9】关闭kafka
/opt/module/kafka_2.12-2.4.1/bin/kafka-server-stop.sh
如果不正确关闭kafka,可能重启kafka的时候会造成异常
Kafka启动失败异常-InconsistentClusterIdException_Joieeee的博客-CSDN博客
测试的时候主要做法是,查看server.properties,看下Data的目录,直接删除即可。