Zookeeper+Kafka集群部署
1.下载zookeeper和kafka:
zk下载地址:http://archive.apache.org/dist/zookeeper/
kafka下载地址:https://kafka.apache.org/downloads.html
本次搭建下载的zk和kafka版本是(zookeeper-3.4.14.tar.gz/kafka_2.11-0.11.0.0.tgz)
服务器环境->准备三台服务器集群
在Hosts文件中建立域名和IP的映射配置(方便解析): vim /etc/hosts
192.168.0.1 master
192.168.0.2 slave1
192.168.0.3 slave2
1.每台服务器配置环境变量
配置zk和kafka环境变量
[root@kafka-master module]# vim /etc/profile
配置zk环境
zookeeper config
export ZK_HOME=/opt/module/zookeeper
export PATH=$ZK_HOME/bin:$PATH
配置kafka环境
kafka config
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin
使环境变量立即生效
[root@kafka-master module]# source /etc/profile
本次把zookeeper和kafka的安装目录统一为:/opt/module
Zookeeper搭建集群:
解压zookeeper:
[root@kafka-master module]# tar -zxvf zookeeper-3.4.14.tar.gz
重命名zookeeper-3.4.14为zookeeper
[root@kafka-master module]# mv zookeeper-3.4.14 zookeeper
[root@kafka-master module]# cd zookeeper
重命名zoo_sample.cfg为zoo.cfg
[root@kafka-master zookeeper]# mv conf/zoo_sample.cfg zoo.cfg
[root@kafka-master zookeeper]# vim conf/zoo.cfg
修改zoo.cfg配置:
the directory where the snapshot is stored.
do not use /tmp for storage, /tmp here is just
example sakes.
修改zk数据存储路径
dataDir=/opt/module/zookeeper/data/
在文件末尾追加以下配置项
zk cluster
server.0=master:2888:3888
server.1=slave1:2888:3888
server.2=slave2:2888:3888
新建刚配置的zk存储路径
[root@kafka-master zookeeper]# mkdir data
新建myid文件并写入[master(0),slave1(1),slave2(2)]并保存
[root@kafka-master zookeeper]# vim data/myid
配置其他两个服务器,然后依次启动三台机器 master,slave1,slave2
zk启动命令分别为:zkServer.sh start/stop/restart/status
启动完成分别查看三台zk状态:
[root@kafka-master zookeeper]# bin/zkServer.sh status
[root@kafka-slave-1 zookeeper]# bin/zkServer.sh status
[root@kafka-slave-2 zookeeper]# bin/zkServer.sh status
slave1被选举称为leader,master和slave2被选为follower。
三台分别显示leader或follower则搭建成功。
zookeeper搭建常见问题:https://chenxitag.com/zookeeper/problem
centos firewalld防火墙:https://chenxitag.com/centos/firewalld
Kafka搭建集群:
解压kafka:
[root@kafka-master module]# tar -zxvf kafka_2.11-0.11.0.0.tgz
重命名kafka_2.11-0.11.0.0为kafka
[root@kafka-master module]# mv kafka_2.11-0.11.0.0 kafka
[root@kafka-master module]# cd kafka
修改kafka启动配置文件
[root@kafka-master kafka]# vim config/server.properties
broker.id不可重复
master:broker.id = 0
slave1:broker.id = 1
slave2:broker.id = 2
启动Kafka
[root@kafka-master kafka]# bin/kafka-server-start.sh -daemon config/server.properties
slave1,slave2机器亦是如此
kafka常用命令:https://chenxitag.com/kafka/cmd