zookeeper集群搭建

zookeeper可以实现统一的配置中心和分布式锁。      

先简单来说一下搭建一个zookeeper集群(本文简单描述使用一台服务器实现伪集群,测试机器多的话,可以拿3台或者更多来试验一下)

1.确保已经安装了java  ,没有的话,安装一下

 java -version

2.下载安装

cd /usr/local

mkdir zookeeper_cluster

cd zookeeper_cluster

创建zookeeper3个节点目录

mkdir zookeeper01

mkdir zookeeper02

mkdir zookeeper03

创建zookeeper3个节点数据目录

mkdir data01

mkdir data02

mkdir data03

创建zookeeper3个节点日志目录

mkdir log01

mkdir log02

mkdir log03

  下载地址见:https://zookeeper.apache.org/releases.html#download

节点01解压缩开始安装,其他两个节点一样

cd zookeeper01

wget https://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz

tar -zxvf apache-zookeeper-3.6.1-bin.tar.gz

修改配置文件

cd apache-zookeeper-3.6.1-bin.tar.gz/conf

 cp zoo_sample.cfg zoo.cfg

vim zoo.cfg

主要改这几个地方

dataDir=/usr/local/zookeeper/data01
dataLogDir=/usr/local/zookeeper/log01
clientPort=2181

server.1=localhost:2287:3387

server.2=localhost:2288:3388 

server.3=localhost:2289:3389 

本机采用一台服务器搭建伪集群,所以clientPort端口必须不同,选举端口和通信端口也不同,如果3台不同的机器,hosthost换成不同的Ip即可,其他一样,clientPort都可为2181,选举端口和通信端口都可以为2288:3388 

02,03节点则clientPort换成2182,2183,数据和日志文件夹换成02,03即可

创建myid在data目录下

cd /usr/local/zookeeper/data01

touch myid

vim myid

1

wq!

其他两台则写2,3

一台配置好了,其他两台复制一下,改下配置即可

cp -r zookeeper01 zookeeper02

cp -r zookeeper01 zookeeper03

3.依次启动3个节点

cd /usr/local/zookeeper_cluster/zookeeper01/bin

[root@VM_0_7_centos bin]# ./zkServer.sh start

启动后可以查看集群状态

[root@VM_0_7_centos bin]# ./zkServer.sh status

[root@VM_0_7_centos bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper_cluster/zookeeper-02/bin/../conf/zoo.cfg
Client port found: 2182. Client address: localhost.
Mode: leader

 

[root@VM_0_7_centos bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper_cluster/zookeeper-01/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower

 

[root@VM_0_7_centos bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper_cluster/zookeeper-03/bin/../conf/zoo.cfg
Client port found: 2183. Client address: localhost.
Mode: follower

可以看到02节点成了leader,01和03成了follower

4、通过任何一个节点访问zookeeper集群

cd /usr/local/zookeeper_cluster/zookeep01/bin

[root@VM_0_7_centos bin]# ./zkCli.sh  -server 127.0.0.1:2181

5.创建,获取,修改,删除节点数据

[zk: 127.0.0.1:2181(CONNECTED) 1] create /zknode01 hello,world
Node already exists: /zknode01
[zk: 127.0.0.1:2181(CONNECTED) 2] create /zknode_01 hello,world
Created /zknode_01
[zk: 127.0.0.1:2181(CONNECTED) 3] get /zknode_01
hello,world
[zk: 127.0.0.1:2181(CONNECTED) 4] set /zknode_01 abc
[zk: 127.0.0.1:2181(CONNECTED) 5] get /zknode_01
abc
[zk: 127.0.0.1:2181(CONNECTED) 6] delete /zknode_01
[zk: 127.0.0.1:2181(CONNECTED) 7] get /zknode_01

相关命令

ls path:查看某个节点下的所有子节点信息

ls / :列出根节点下所有的子节点信息

 

create [-s] [-e] path data acl

-s 表示是顺序节点

-e 标识是临时节点

path 节点路径

data 节点数据

acl 节点权限

 

quit 退出当前客户端

下篇文章写下如何使用zookeeper实现统一的配置中心。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值