CentOS7 Zookeeper 安装

 集群部署

192.168.38.6  zk01
192.168.38.7  zk02
192.168.38.8  zk03

 

安装zookeeper,必须安装jdk。

 

1.下载

1
2
$ cd /usr/local
$ wget http://111.0.93.35/mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

 

2.解压并重命名
1
2
$ tar -zxvf zookeeper-3.4.14.tar.gz
$ mv /usr/local/zookeeper-3.4.14 /usr/local/zookeeper

 

3.文件配置
 
(1)在每个节点都创建data目录和logs目录
1
2
$ mkdir /home/zookeeper/data
$ mkdir /home/zookeeper/logs

 

(2)在每个节点的 data目录下创建 myid文件,并输入内容 1/2/3 ;节点zk01的内容为1,节点zk02的内容为2,节点zk03的内容为3
 
myid(节点zk01)
#这里只有一个数字1
1 
myid(节点zk02)
#这里只有一个数字2
2
myid(节点zk03)
#这里只有一个数字3
3

 

 
(3)复制zoo_sample.cfg,并编辑zoo.cfg文件
 
1
2
$ cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg
$ vim /usr/local/conf/zoo.cfg
 
zoo.cfg(节点zk01)
dataDir=/home/zookeeper/data
dataLogDir=/home/zookeeper/logs

clientPort=2181

server.1=192.168.38.6:2881:3881
server.2=192.168.38.7:2881:3881
server.3=192.168.38.8:2881:3881
zoo.cfg(节点zk02)
dataDir=/home/zookeeper/data
dataLogDir=/home/zookeeper/logs

clientPort=2182

server.1=192.168.38.6:2881:3881
server.2=192.168.38.7:2881:3881
server.3=192.168.38.8:2881:3881
zoo.cfg(节点zk03)
dataDir=/home/zookeeper/data
dataLogDir=/home/zookeeper/logs

clientPort=2183

server.1=192.168.38.6:2881:3881
server.2=192.168.38.7:2881:3881
server.3=192.168.38.8:2881:3881

说明:

  • 上面的myid 1 2 3 分别对应 配置文件server.1 server.2 server.3,并且不能有空格或空行;
  • serverid的范围为1~255,且不可以重复;也就是说zookeeper集群中最多可安装255个节点;
  • 2881为“选主端口”,3881为“通信端口”;
  • zookeeper 集群中节点并不是越多越好,越多性能越低。生产环境中最佳集群节点个数为 7~15 个

 

 

4.关闭防火墙
1
$ systemctl stop firewalld

 

5.启动zookeeper
 在每一个节点上执行如下命令:
1
$ /usr/local/zookeeper/bin/zkServer.sh start

 

6.查看zookeeper状态
1
2
3
4
$ /usr/local/zookeeper/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

leader:主

follower:从 

 

常见错误:

Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg

Error contacting service. It is probably not running.  

可能有以下几个原因:

第一,zoo.cfg文件配置出错:dataLogDir指定的目录未被创建;
第二,myid文件中的整数格式不对,或者与zoo.cfg中的server整数不对应
第三,防火墙未关闭;
第四,2181端口被占用;
第五,zoo.cfg文件中主机名出错;
第六,hosts文件中,本机的主机名有两个对应,只需保留主机名和ip地址的映射

 

 

 

posted @   cao_xiaobo  阅读(1608)  评论(0编辑  收藏  举报
编辑推荐:
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
阅读排行:
· 《HelloGitHub》第 106 期
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用
点击右上角即可分享
微信分享提示