文章目录
- 前言
- 一、Zookeeper集群搭建
- 1、软件环境
- 2、下载zk
- 3、配置集群
- 3.2、更改zk的conf下的zoo_sample.cfg为zoo.cfg
- 3.3、3台服务器的配置文件
- 3.4、创建zk的数据存放目录和myid文件
- 3.5、重要配置说明
- zk的操做命令
- 4.1、启动
- 4.2、 查看运行状态
- 4.3、查看zk版本
- 单节点搭建
- 集群显示:
- 总结
前言
提示:这里可以添加本文要记录的大概内容:
例如:。
提示:以下是本篇文章正文内容,下面案例可供参考
一、Zookeeper集群搭建
1、软件环境
- 我的集群环境为三台centos7版本的机器
IP | 系统 |
10.5.4.106 | centos7.6 |
10.5.4.43 | centos7.6 |
10.5.2.76 | centos7.6 |
2、下载zk
- 下载地址:http://archive.apache.org/dist/zookeeper/
- 我下下载的是3.4.1
3、配置集群
- zk上传到上台服务器的目录后解压
- 我的安装目录为/opt/server/下
- zk的目录
3.2、更改zk的conf下的zoo_sample.cfg为zoo.cfg
- 进入到解压好的目录里面的conf目录中,查看
-rw-rw-r--. 1 1000 1000 535 Feb 20 2014 configuration.xsl
-rw-rw-r--. 1 1000 1000 2161 Feb 20 2014 log4j.properties
-rw-rw-r--. 1 1000 1000 922 Feb 20 2014 zoo_sample.cfg
- 将配置文件复制一份进行更改
cd /opt/server/zookeeper/conf/
cp zoo_sample.cfg zoo.cgf
- zoo_sample.cfg 这个文件是官方给我们的zookeeper的样板文件,给他复制一份命名为zoo.cfg,zoo.cfg是官方指定的文件命名规则。
3.3、3台服务器的配置文件
- 三台服务器的配置都是如下
- 其中节点一为主节点
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/data/zookeeper/ # zk的数据存放目录
dataLogDir=/opt/logs/zookeeper/log # zk的日志存放目录
clientPort=2181
server.1=10.5.4.106:2888:3888
server.2=10.5.4.43:2888:3888
server.3=10.5.2.76:2888:3888
- 如果你的 目录结构也可能是这个,data和log指定你的zk的目录
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/data/zookeeper/zookeeper-3.4.10/
dataLogDir=/opt/logs/zookeeper/zookeeper-3.4.10/log
clientPort=2181
server.1=10.4.2.173:2888:3888
server.2=10.4.2.151:2888:3888
server.3=10.4.8.70:2888:3888
3.4、创建zk的数据存放目录和myid文件
- 上面再配置文件内指定了zk的数据存放目录,所以我们要 创建zk的数据存放目录
- 并且创建zk标识本台服务器的文件myid在数据存放目录下
mkdir -p /opt/data/zookeeper/
- 然后每个节点分别执行对应的命令
#server1
echo "1" > /opt/data/zookeeper/myid
#server2
echo "2" > /opt/data/zookeeper/myid
#server3
echo "3" > /opt/data/zookeeper/myid
示例:myid文件缺失导致zookeeper无法启动(myid file is missing)
myid文件缺失导致zookeeper无法启动(myid file is missing)
- myid文件缺失
现象 :zookeeper无法启动;
异常 :$dataDir/myid file is missing;
原因 :zk集群中的节点需要获取myid文件内容来标识该节点,缺失则无法启动;
解决 :在zk数据文件存放目录下(见 $ZK/conf/zoo.cfg,dataDir属性),创建myid文件并写入一个数字用来标识本节点(类似这个节点的身份证)。
- 处理过程
- 在data文件夹中创建myid文件,在里面设置一个数字(每个节点的这个数字不能一样)
3.5、重要配置说明
- 1、myid文件和server.myid 在快照目录下存放的标识本台服务器的文件,他是整个zk集群用来发现彼此的一个重要标识。
- 2、zoo.cfg 文件是zookeeper配置文件 在conf目录里。
- 3、log4j.properties文件是zk的日志输出文件 在conf目录里用java写的程序基本上有个共同点日志都用log4j,来进行管理。
- 4、zkEnv.sh和zkServer.sh文件
- zkServer.sh 主的管理程序文件
- zkEnv.sh 是主要配置,zookeeper集群启动时配置环境变量的文件
zk的操做命令
4.1、启动
- 进入道zk的安装目录下的bin目录下用zkServer.sh start
/opt/server/zookeeper/bin/zkServer.sh start # 启动
/opt/server/zookeeper/bin/zkServer.sh restart #重启
- 启动
4.2、 查看运行状态
/opt/server/zookeeper/bin/zkServer.sh status
- 状态
4.3、查看zk版本
- 方式一进入到zk的目录下可以看到它的jar包
- 方式二:进入到zk安装目录下的bin目录执行以下命令
echo stat|nc 127.0.0.1 2181
- 查看日志:
在启动后会在启动目录下生成一个 zookeeper.out 文件,例如我的启动是在/opt/server/zookeeper/bin/启动日志就存放其中
/opt/server/zookeeper/bin/zookeeper.out
单节点搭建
- 单点启动成功后使用status 查看显示的是standalone
集群显示:
- 集群启动成功后使用status 查看显示的是:Mode: follower
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了zookeeper的安装。