安装jdk
如果是centos7虚拟机,自带jdk1.8
搭建zookeeper集群
环境准备:3台centos ip分别是192.168.137.100、192.168.137.101、192.168.137.102
zookeeper版本:3.8.0
安装步骤:
1. 解压
tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz
2. 移动
mv apache-zookeeper-3.8.0-bin /usr/local/zookeeper
3. 生成配置文件
cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg
4. 编辑配置文件
vim /usr/local/zookeeper/conf/zoo.cfg
修改内容:dataDir=/usr/local/zookeeper/data
最下面添加
server.1=192.168.137.100:2888:3888
server.2=192.168.137.101:2888:3888
server.3=192.168.137.102:2888:3888
注:2888为服务器的同步端口,3888为服务器重新选举端口
5. 创建数据目录
mkdir /usr/local/zookeeper/data
6. 设置标记配置(分别在各个服务器在创建不同的标记)
echo 1 > /usr/local/zookeeper/data/myid
echo 2 > /usr/local/zookeeper/data/myid
echo 3 > /usr/local/zookeeper/data/myid
6. 添加环境变量
vim /etc/profile
在最下面增加一行:PATH=$PATH:/usr/local/zookeeper/bin
使配置生效
source /etc/profile
三天服务器分别执行上述操作
zookeeper命令
启动
zkServer.sh start
停止
zkServer.sh stop
重启
zkServer.sh restart
状态
zkServer.sh status
将三台服务器zookeeper都打开,kafka是基于zookeeper的
搭建kafka集群
本文使用的版本是kafka_2.13-3.1.0
1. 解压
tar -zxvf kafka_2.13-3.1.0.tgz
2. 移走
mv kafka_2.13-3.1.0 /usr/local/kafka
3. 修改配置文件
vim /usr/local/kafka/config/server.properties
修改内容
#每个节点唯一
broker.id=1
log.dirs=/usr/local/kafka/logs
listeners=PLAINTEXT://192.168.137.100:9092
advertised.listeners=PLAINTEXT://127.0.0.1:9092
#这里有几个成员就写几个
zookeeper.connect=192.168.137.100:192.168.137.101:192.168.137.102:2181/kafka
4. 创建日志目录
mkdir /usr/local/kafka/logs
三台服务器重复上述操作
5. kafka命令
启动
/usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties
停止
/usr/local/kafka/bin/kafka-server-stop.sh /usr/local/kafka/config/server.properties
如果启动报以下错误
则对meta.properties进行修改,该文件放我们放在了 /usr/local/kafka/logs文件夹下
修改其cluster.id等于Cluster ID即可。
6. 看是否成功
zkCli.sh
ls /kafka/brokers/ids
结果如下则表示成功