1、环境准备
- centos7系统,VM安装centos可参考还不会使用linux?快来通过VMware安装centos系统吧~
- zookeeper安装包
- SecureCRT
2、zookeeper简介
zookeeper也被人打趣为动物管理员,是分布式应用程序的高性能协调服务。它在一个简单的界面中公开了常用服务,例如命名、配置管理、同步和分组服务。您可以现成地使用它来实现数据一致性、集群管理和master选举,可以根据自己的特定需求在此基础上进行构建。
这是zookeeper官网,有兴趣的兄弟可以去看一下,里面的东西比较全,有利于更深层次的学习
3、zookeeper下载
- 官网的下载页面apache-zookeeper-3.8.0
- 官网直接下载地址点击下载apache-zookeeper-3.8.0
- CSDN快速下载地址apache-zookeeper-3.8.0
4、伪分布式安装
4.1 上传zookeeper安装包
首先使用rz命令上传安装包至centos服务器
rz
tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz
mv apache-zookeeper-3.8.0-bin /var/zookeeper
4.2 配置zookeeper伪分布式启动文件
因为需要做伪分布式部署,所以需要配置3个不同的启动文件,相当于分别对应3个zookeeper节点。
创建环境目录
mkdir /var/zookeeper/zk1
mkdir /var/zookeeper/zk2
mkdir /var/zookeeper/zk3
新建myid文件
echo "1" > /var/zookeeper/zk1/myid
echo "2" > /var/zookeeper/zk2/myid
echo "3" > /var/zookeeper/zk3/myid
- 配置zoo1.cfg文件
vim /var/zookeeper/zk1/zoo1.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/zookeeper/zk1
clientPort=2181
server.1=192.168.10.11:2888:3888
server.2=192.168.10.11:2889:3889
server.3=192.168.10.11:2890:3890
- 配置zoo2.cfg文件
vim /var/zookeeper/zk2/zoo2.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/zookeeper/zk2
clientPort=2182
server.1=192.168.10.11:2888:3888
server.2=192.168.10.11:2889:3889
server.3=192.168.10.11:2890:3890
- 配置zoo3.cfg文件
vim /var/zookeeper/zk3/zoo3.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/zookeeper/zk3
clientPort=2183
server.1=192.168.10.11:2888:3888
server.2=192.168.10.11:2889:3889
server.3=192.168.10.11:2890:3890
这三个文件的主要区别是端口号(clientPort)不一样,分别是2181、2182、2183
需要把server里面的ip(==192.168.10.11==)换成自己的服务器ip
4.3 启动zookeeper服务端
- 后台启动zoo1.cfg服务端
/var/zookeeper/bin/zkServer.sh start /var/zookeeper/zk1/zoo1.cfg &
- 后台启动zoo2.cfg服务端
/var/zookeeper/bin/zkServer.sh start /var/zookeeper/zk2/zoo2.cfg &
- 后台启动zoo3.cfg服务端
/var/zookeeper/bin/zkServer.sh start /var/zookeeper/zk3/zoo3.cfg &
==特别注意==:myid文件一定要在dataDir的文件目录下,否则启动会报myid文件缺失异常!!!
最后通过jps命令看3台zookeeper实例是否启动成功:
jps
出现三个QuorumPeerMain进程说明咱们的zookeeper伪分布式集群已经部署成功了
4.4 客户端连接测试
- 连接zoo1
/var/zookeeper/bin/zkCli.sh -server 127.0.0.1:2181
- 连接zoo2
/var/zookeeper/bin/zkCli.sh -server 127.0.0.1:2182
- 连接zoo3
/var/zookeeper/bin/zkCli.sh -server 127.0.0.1:2183