Linux搭建Zookeeper集群与Kafka集群

一、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.idlisteners 参数。

创建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

你可能感兴趣的:(Linux学习,kafka,java-zookeeper,linux)