zookeeper部署集群
环境:
Os:Centos 7
zookeeper :3.7.0
集群节点信息
192.168.1.134
192.168.1.135
192.168.1.113
1.下载 apache-zookeeper-3.7.0-bin.tar.gz 安装包
注意这里下载的是带bin的安装包
下载地址:http://archive.apache.org/dist/zookeeper/
2.进入到/opt/目录下,解压tar包
[root@localhost soft]# cd /soft
[root@localhost soft]# tar -xvf apache-zookeeper-3.7.0-bin.tar.gz
[root@localhost soft]# mv apache-zookeeper-3.7.0-bin /opt/zookeeper-3.7.0
3.创建数据目录
mkdir -p /opt/zookeeper-3.7.0/data
4.准备zoo.cfg文件
[root@localhost soft]# cd /opt/zookeeper-3.7.0/conf
[root@localhost conf]# cp zoo_sample.cfg zoo.cfg
将原来配置文件内容全部删除掉,添加如下参数:
vi zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir= /opt/zookeeper-3.7.0/data
clientPort=2182
autopurge.purgeInterval=0
globalOutstandingLimit=200
server.1=192.168.1.134:2888:3888
server.2=192.168.1.135:2888:3888
server.3=192.168.1.113:2888:3888
注意红色数字需要与所在机器的myid内容进行一一对应
5.设置myid
[root@localhost data]#vi /opt/zookeeper-3.7.0/data/myid
该文件的内容为:
#192.168.1.118为1,192.168.1.135为2,192.168.1.136为3
6.其他节点安装,将已经部署好的节点安装目录拷贝到另外2个节点
整个目录拷贝到另外的节点
scp -r /opt/zookeeper-3.7.0 root@192.168.1.135:/opt/
scp -r /opt/zookeeper-3.7.0 root@192.168.1.113:/opt/
注意拷贝过去要修改对应的myid文件的值
7.进入zookeeper的bin目录,启动zookeeper服务,每个节点都需要启动
[root@localhost bin]# cd /opt/zookeeper-3.7.0/bin
[root@localhost bin]# ./zkServer.sh start
8.启动之后查看每个节点的状态
192.168.1.134
[root@localhost bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.7.0/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@localhost bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.7.0/bin/../conf/zoo.cfg
Client port found: 2182. Client address: localhost. Client SSL: false.
Mode: follower
192.168.1.135
[root@host135 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.7.0/bin/../conf/zoo.cfg
Client port found: 2182. Client address: localhost. Client SSL: false.
Mode: leader
192.168.1.113
[root@host113 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.7.0/bin/../conf/zoo.cfg
Client port found: 2182. Client address: localhost. Client SSL: false.
Mode: follower
其中有一个节点是leader,有两个节点是follower,证明zookeeper集群是部署成功的
9.测试zookeeper
连接本机
[root@localhost bin]# /opt/zookeeper-3.7.0/bin/zkCli.sh -server 192.168.1.134:2182
连接集群
/opt/zookeeper-3.7.0/bin/zkCli.sh -server 192.168.1.134:2182,192.168.1.135:2182,192.168.1.113:2182
# 1. 查看根节点
[zk: 192.168.1.134:2182,192.168.1.135:2182,192.168.1.113:2182(CONNECTED) 1] ls /
[zookeeper]
# 2. 创建持久节点(写入数据)
[zk: 192.168.1.134:2182,192.168.1.135:2182,192.168.1.113:2182(CONNECTED) 2] create /test_zk "hello zk 2026"
Created /test_zk
# 3. 读取节点数据(get -s 同时看元信息:版本、zxid等)
[zk: 192.168.1.134:2182,192.168.1.135:2182,192.168.1.113:2182(CONNECTED) 4] get -s /test_zk
hello zk 2026
cZxid = 0x100000008
ctime = Thu Oct 29 10:49:56 CST 2026
mZxid = 0x100000008
mtime = Thu Oct 29 10:49:56 CST 2026
pZxid = 0x100000008
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 13
numChildren = 0
# 4. 修改节点数据(更新写入)
set /test_zk "update data 123"
# 5. 再次读取,验证修改生效
get /test_zk
# 6. 删除节点
delete /test_zk
# 7. 退出客户端
quit
8. -R列出所有的目录和子目录文件
[zk: 192.168.1.134:2182,192.168.1.135:2182,192.168.1.113:2182(CONNECTED) 7] ls -R /flink
/flink
/flink/default
/flink/default/jobgraphs
/flink/default/leader
/flink/default/leader/dispatcher
/flink/default/leader/latch
/flink/default/leader/resource_manager
/flink/default/leader/rest_server
/flink/default/leader/dispatcher/connection_info
/flink/default/leader/latch/_c_0bb7f474-a496-4839-8921-78a5d813d3f9-latch-0000000001
/flink/default/leader/latch/_c_21563967-7ce2-423f-8964-b1a2e8ada128-latch-0000000000
/flink/default/leader/resource_manager/connection_info
/flink/default/leader/rest_server/connection_info
浙公网安备 33010602011771号