kafka---- zookeeper集群搭建

shell 复制代码
1.准备工作:
##准备3个节点,要求配置好主机名称,服务器之间系统时间保持一致
##注意/etc/hostname 和/etc/hosts 配置主机名称(在这个里我准备Prac-zk-133, Prac-zk-134 , Prac-zk-135二节点)
vim  /etc/hosts #保证可以通过主机名互通 添加格式为IP  主机名称
## 比如
172.16.144.133 Prac-zk-133
172.16.144.134 Prac-zk-134
172.16.144.135 Prac-zk-135
## 测试
ping ip 
ping 主机名
##注意关闭防火墙
# 1. 启动防火墙
systemctl start firewalld
# 2.  关闭防火墙
systemctl stop firewalld
# 3. 重启防火墙
systemctl restart firewalld
# 4.查看防火墙状态
systemctl status firewalld
# 5. 开启禁用的防火墙
systemctl disable firewalld

##特别注意以下操作3个节点要同时进行操作哦!
2.上传zk到三台服务器节点
## 复制到其他机器 暂时测试不好用
#scp zookeeper-3.4. 6. tar.gz 192. 168.11.222: /usr/local /software/ 
## 上传到/usr/local/software
cd /usr/local/software
##注意我这里解压到/usr/local下
## 2.1进行解压: 
tar -zxvf  zookeeper-3.4.6.tar.gz -C /usr/local/
cd /usr/local/
# 2.2重命名: 
mv zookeeper-3.4.6 zookeeper
# 2.3修改环境变量:
vim ~/.bash_profile 

##这里要添加zookeeper的全局变量 jdk如果不会装,可以看之前文章
export JAVA_HOME=/usr/local/jdk1.8
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=.:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH

## 2.4刷新环境变量:
source  ~/.bash_profile  

# 2.5到zookeeper 下修改配置文件:
# 2.5.1首先到指定目录: 
cd /usr/local/zookeeper/conf
# 2.5.2然后复制zoo_sample.cfg文件, 复制后为zoo.cfg:
mv zoo_sample.cfg zoo.cfg
# 2.5.3然后修改两处地方,最后保存退出:
vim /usr/local/zookeeper/conf/zoo.cfg
# (1)修改数据的dir 存储数据的地方
dataDir=/usr/local/zookeeper/data

# (2) 修改集群地址
server.0=Prac-zk-133:2888:3888
server.1=Prac-zk-134:2888:3888
server.2=Prac-zk-135:2888:3888


## 2.5.4 增加服务器标识配置,需要2步骤,第一是创建文件夹和文件, 第二是添加配置内容:
# (1)创建文件夹: 
mkdir /usr/local/zookeeper/data
# (2)创建文件myid路径应该创建在/usr/local/zookeeper/data 下面,如下:
vim /usr/local/zookeeper/data/myid
# 注意这里每台服务 器的myid文件内容不同,分别修改里面的值为0, 1, 2;与我们之前的zoo.cfg配置文件里:
# server.0, server.1, server.2 顺序相对应,然后保存退出;
# 2.7到此为止,Zookeeper集群环境大功告成!启动zookeeper命令
启动路径: cd /usr/local/zookeeper/bin (也可在任意目录,因为配置了环境变量)
执行命令: zkServer.sh start (注意这里3台机器都要进行启动,启动之后可以查看状态)
./zkServer.sh start-foreground   # 有日志的打印的启动
查看状态: zkServer.sh status (在三个节点上检验zk的mode,会看到一个leader和俩个 follower)
关闭 : zkServer.sh stop
## zkCli.sh进入zookeeper客户端
Hostname Ip Root
Prac-zk-133 172.16.144.133 root
Prac-zk-134 172.16.144.134 root
Prac-zk-135 172.16.144.135 root

172.16.144.133 Prac-zk-133

172.16.144.134 Prac-zk-134

172.16.144.135 Prac-zk-135

zkServer.sh start-foreground 使用它启动会出现地址已在使用

Zookeeper启动失败(java.net.BindException: 地址已在使用

端口被占用了,把2181端口改成别的就可以

sh 复制代码
lsof -i:2181 #查到进程
kill -s 9 2715 #然后杀掉上面的进程

如果只是使用zkServer.sh stop会停不干净,后续继续研究,方法在上

zoo.cfg配置说明

tickTime : 时间单位

initLimit follower与leader 同步数据的时间(initLimit*tickTime))

Synclimit 心跳检测最大延迟时间。

dataDir 默认情况下,zookeeper的事务日志 和 数据快照 都会保存在 dataDir 目录下.

dataLogDir log日志存储目录,默认dataDir下

clientPort 客户端与服务端建立连接的端口号,默认2181

相关推荐
运维&陈同学10 小时前
【zookeeper03】消息队列与微服务之zookeeper集群部署
linux·微服务·zookeeper·云原生·消息队列·云计算·java-zookeeper
BestandW1shEs11 小时前
彻底理解消息队列的作用及如何选择
java·kafka·rabbitmq·rocketmq
天冬忘忧12 小时前
Kafka 生产者全面解析:从基础原理到高级实践
大数据·分布式·kafka
天冬忘忧13 小时前
Kafka 数据倾斜:原因、影响与解决方案
分布式·kafka
隔着天花板看星星13 小时前
Kafka-Consumer理论知识
大数据·分布式·中间件·kafka
holywangle13 小时前
解决Flink读取kafka主题数据无报错无数据打印的重大发现(问题已解决)
大数据·flink·kafka
隔着天花板看星星13 小时前
Kafka-副本分配策略
大数据·分布式·中间件·kafka
我一直在流浪13 小时前
Kafka - 消费者程序仅消费一半分区消息的问题
分布式·kafka
skywalk816314 小时前
树莓派2 安装raspberry os 并修改成固定ip
linux·服务器·网络·debian·树莓派·raspberry
量子网络15 小时前
debian 如何进入root
linux·服务器·debian