一、Zookeeper集群
三台服务器
192.168.154.133
192.168.154.134
192.168.154.135
相同操作
下载
https://archive.apache.org/dist/zookeeper/zookeeper-3.4.10/
上传解压缩
新增mkdir /opt/module/zookeeper/conf/data
第一台
# 配置文件保存退出后,进入data目录
# 生成myid文件,指定myid服务号
echo "1" > myid
第二台
# 配置文件保存退出后,进入data目录
# 生成myid文件,指定myid服务号
echo "2" > myid
第三台
# 配置文件保存退出后,进入data目录
# 生成myid文件,指定myid服务号
echo "3" > myid
创建文件
编辑配置文件/opt/module/zookeeper/conf/zoo.cfg
2181为组成zookeeper服务器之间的通信端口,2182为用来选举leader的端口,server后面的数字与后面的myid相对应
# 添加如下内容
server.1=192.168.154.133:2181:2182
server.2=192.168.154.134:2181:2182
server.3=192.168.154.135:2181:2182
# 修改dataDir
dataDir=/opt/module/zookeeper/conf/data
添加环境变量vim /etc/profile
#zookeeper
export ZK_HOME=/opt/module/zookeeper
export PATH=$PATH:$ZK_HOME/bin
分别启动
./zkServer.sh start
产看状态
./zkServer.sh status
二、Kafka集群
下载kafka压缩包
wget https://archive.apache.org/dist/kafka/2.6.0/kafka_2.13-2.6.0.tgz
解压缩、新建log文件mkdir kafka-logs
修改配置文件vim /opt/module/kafka/config/server.properties
# 修改如下参数
broker.id=0
listeners=PLAINTEXT://192.168.154.133:9092
log.dirs=/opt/module/kafka/kafka-logs
zookeeper.connect=192.168.154.133:2181,192.168.154.134:21815192.168.154.135:2181
参数说明:
broker.id : 集群内全局唯一标识,每个节点上需要设置不同的值
listeners:这个IP地址也是与本机相关的,每个节点上设置为自己的IP地址
log.dirs :存放kafka消息的
zookeeper.connect : 配置的是zookeeper集群地址
分发kafka安装目录给其他集群节点
scp -r /opt/module/kafka/ 192.168.154.134:/opt/module
scp -r /opt/module/kafka/ 192.168.154.135:/opt/module
分发完成后,其他集群节点都需要修改配置文件server.properties
中的 broker.id
和listeners
参数。
创建kafka 集群脚本
cd /opt/module/kafka/bin
vim kafka-cluster.sh
# 创建kafka启动脚本
# 添加如下内容
#!/bin/bash
case $1 in
"start"){
for i in 192.168.154.133 192.168.154.134 192.168.154.135
do
echo -------------------------------- $i kafka 启动 ---------------------------
ssh $i "source /etc/profile;/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
done
}
;;
"stop"){
for i in 192.168.154.133 192.168.154.134 192.168.154.135
do
echo -------------------------------- $i kafka 停止 ---------------------------
ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh"
done
}
;;
esac
# 保存退出后,修改执行权限
chmod +x ./kafka-cluster.sh
启动kafka集群命令
./kafka-cluster.sh start
停止kafka集群命令
./kafka-cluster.sh stop