天天看点

Linux环境下,zookeeper伪集群模式搭建实战

废话不多说,上来就干,Linux环境下,zk伪集群模式搭建

打开事先安装好的zk目录下,这里不在详解zk单实例的安装部署,可以参考

集群配置流程:

进入到zk目录下,进入conf,将zoo_sample.cfg复制并命名为zoo1.cfg(目的是为了不修改原始文件)

cp zoo_sample.cfg zoo1.cfg

Linux环境下,zookeeper伪集群模式搭建实战

分别创建3个data目录用于存储各节点数据

mkdir data

mkdir data/1

mkdir data/3

mkdir data/3

Linux环境下,zookeeper伪集群模式搭建实战

编写myid文件

echo 1 > data/1/myid

echo 3 > data/3/myid

echo 2 > data/2/myid

创建完后,检查下,确保正确,以免返工

ls datamyid

ls -R data

Linux环境下,zookeeper伪集群模式搭建实战

修改配置文件,zoo1.cfg

vim zoo1.cfg 

修改数据存储路径

dataDir=data/1

修改端口

clientPort=12181

添加监听端口

server.1=127.0.0.1:2887:3887

server.2=127.0.0.1:2888:3888

server.3=127.0.0.1:2889:3889

Linux环境下,zookeeper伪集群模式搭建实战

保存,并复制zoo1.cfg,为zoo2.cfg,zoo3.cfg

cp zoo1.cfg zoo2.cfg

cp zoo1.cfg zoo3.cfg

Linux环境下,zookeeper伪集群模式搭建实战

修改zoo2.cfg的数据存储目录,和端口

vim zoo2.cfg

Linux环境下,zookeeper伪集群模式搭建实战

修改zoo3.cfg的数据存储目录,和端口

vim zoo3.cfg

Linux环境下,zookeeper伪集群模式搭建实战

好了,现在配置已经修改完毕,开始启动,

cd ../

./bin/zkServer.sh start conf/zoo1.cfg 

./bin/zkServer.sh start conf/zoo2.cfg

./bin/zkServer.sh start conf/zoo3.cfg 

Linux环境下,zookeeper伪集群模式搭建实战

验证是否部署成功,

进入12181的客户端,添加一个节点

./bin/zkCli.sh -server localhost:12181

Linux环境下,zookeeper伪集群模式搭建实战

创建成功,去12182的客户端看看,是否存在,并更新数据

Linux环境下,zookeeper伪集群模式搭建实战

成功,去12183的客户端,检查数据是否正常

Linux环境下,zookeeper伪集群模式搭建实战

数据没问题,至此,linux环境下,zookeeper伪集群模式部署完成,

以下就相关知识点进行解释下

配置语法:

server.<节点ID>=<ip>:<数据同步端口>:<选举端口>

  1. 节点ID:服务id手动指定1至125之间的数字,并写到对应服务节点的 {dataDir}/myid 文件中。
  1. IP地址:节点的远程IP地址,可以相同。但生产环境就不能这么做了,因为在同一台机器就无法达到容错的目的。所以这种称作为伪集群。
  1. 数据同步端口:主从同时数据复制端口,(做伪集群时端口号不能重复)。
  1. 远举端口:主从节点选举端口,(做伪集群时端口号不能重复)。

必须配置在所有节点的zoo.cfg文件中,这是是zk的监听端口

server.1=zoo1:2888:3888

server.2=zoo2:2888:3888

server.3=zoo3:2888:3888

Linux环境下,zookeeper伪集群模式搭建实战