分布式安装部署
思路:先搞定一台服务器,再克隆出两台,形成集群。
安装Zookeeper
点我传送
配置服务器编号
- 在
/opt/zookeeper/zkData 目录下新建一个myid 文件 - 在文件中添加与server对应的编号:1(整个文件的内容就是1)
- 其余两台服务器分别对应2和3
配置zoo.cfg文件
打开zoo.cfg 文件,增加以下配置:
server.1=192.168.204.141:2888:3888
server.2=192.168.204.142:2888:3888
server.3=192.168.204.143:2888:3888
配置参数解读:server.A=B:C:D
- A:一个数字,表示第几号服务器,集群模式下配置的
/opt/zookeeper/zkData/myid 文件里面的数据就是A的值。 - B:服务器的ip地址。
- C:与集群中
Leader 服务器交换信息的端口。 - D:选举时的专用端口,万一集群中的
Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader ,而这个端口就是用来执行选举时服务器相互通信的端口。
配置其余两台服务器
- 复制虚拟机:点我传送
- 进入系统后,修改linux中的ip地址,修改
/opt/zookeeper/zkData/myid 中的数值为2
集群操作
[root@localhost bin] systemctl stop firewalld.service
[root@localhost bin] ./zkServer.sh start
[root@localhost bin] ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Error contacting service. It is probably not running.
Mode: follower
Mode: leader
客户端命令行操作
[root@localhost bin] ./zkCli.sh
help
ls /
ls -s /
cZxid
ctime
mZxid
mtime
pZxid
cversion
dataVersion
aclVersion
ephemeralOwner
dataLength
numChildren
create /节点名
create /父节点/子节点
create -e /节点名
create -s /节点名
create /节点名 "数据内容"
get /节点名
set /节点名 "数据内容"
addWatch /节点名
delete /节点名
deleteall /节点名
|