Zookeeper
为分布式程序提供协调服务。作为第三方管理一些共享数据,zookeeper本身非常可靠,本身就是一个分布式集群提供服务(死不掉)。
zookeeper最主要的功能:
1、保管客户端提交的数据(极少量的数据):每一份数据在zookeeper叫做一个znode,znode之间形成一种树状结构
zookeeper集群安装:
1、解压
2、conf修改 vim zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/solrcloud/zookeeper/data
clientPort=2181
server.1=x01:2888:3888
server.2=x02:2888:3888
server.3=x03:2888:3888
3、创建/data/solrcloud/zookeeper/data 目录
mkdir /data/solrcloud/zookeeper/data
4、创建文件myid文件,内容是server的编号
echo 1 > myid
4、把zookeeper复制到另外两台机器上去(x02和x03)
在各自的机器上,要修改myid的内容,如x02要改成 echo 2 > myid
5、启动
分别启动三台机器上的zookeeper
./zkServer.sh start
6、查看三台机器的zookeeper是不是集群
./zkServer.sh status
/**结果
JMX enabled by default
Using config: /data/solrcloud/zookeeper/bin/../conf/zoo.cfg
Mode: leader
*/
//说明这台zookeeper是leader的角色
7、连上服务端进行测试
./zkCli.sh //连本机
//创建文件
[zk: localhost:2181(CONNECTED) 2] create /zooktest 80
Created /zooktest
//查看目录
[zk: localhost:2181(CONNECTED) 3] ls /
[ zooktest ]
//查看文件内容
[zk: localhost:2181(CONNECTED) 4] get /zooktest
80
cZxid = 0x220000086a
ctime = Fri Sep 02 17:12:40 CST 2016
mZxid = 0x220000086a
mtime = Fri Sep 02 17:12:40 CST 2016
pZxid = 0x220000086a
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 2
numChildren = 0
//修改文件内容
[zk: localhost:2181(CONNECTED) 5] set /zooktest 90
[zk: localhost:2181(CONNECTED) 6] get /zooktest
90
cZxid = 0x220000086a
ctime = Fri Sep 02 17:12:40 CST 2016
mZxid = 0x220000086b
mtime = Fri Sep 02 17:18:09 CST 2016
pZxid = 0x220000086a
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 2
numChildren = 0