|
看了些关于zookeeper的文章,有个问题一直没有得到解决比如我要配置一个文件/root/test.txt 每当这个文件更改后都会自动同步到其他机器上去
我以实现的为成功搭建了zookeeper的分布式集群,并都启动ok
[hadoop@hadoop3 bin]$ ./zkServer.sh status
JMX enabled by default
Using config: /home/hadoop/ADH3.1/zookeeper/bin/../conf/zoo.cfg
Mode: follower
[hadoop@hadoop1 bin]$ ./zkServer.sh status
JMX enabled by default
Using config: /home/hadoop/ADH3.1/zookeeper/bin/../conf/zoo.cfg
Mode: follower
[hadoop@hadoop2 bin]$ ./zkServer.sh status
JMX enabled by default
Using config: /home/hadoop/ADH3.1/zookeeper/bin/../conf/zoo.cfg
Mode: leader
在服务端我要如何配置呢?才能实现上述的要求?(有没有类似puppet的设置。还是要写代码什么的?)
在服务端配置ok,那在client要如何去同步呢?
[hadoop@hadoop3 bin]$ zkCli.sh -server hadoop1
[zk: hadoop1(CONNECTED) 0] ls /
[consumers, config, hbase, brokers, admin, zookeeper, controller_epoch]
[zk: hadoop1(CONNECTED) 5] get /config/topics/page_visits
{"version":1,"config":{}}
cZxid = 0x100000146
ctime = Mon Oct 26 13:34:01 CST 2015
mZxid = 0x100000146
mtime = Mon Oct 26 13:34:01 CST 2015
pZxid = 0x100000146
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 25
numChildren = 0
如上,我通过client看到了一些文件信息,也可以通过create创建节点目录,但是要如何同步文件呢?get获得的信息时是否有同步呢?同步的文件放到哪里去了呢?
或者,在server端设置的时候指定了同步位置? 以及这个client只能手动执行吗 可不可以让他一后台守护进程的方式执行并设定自动多长时间去检查同步一次(或者server端检查到变更自动通知client去同步?)查了些文章,完全没找到自己想要的东西,比如server端如何定义要同步的文件 、client端要如何运行?
如上3台机器都有运行zkserver ,那这几台机器还需要去启动client去同步文件吗?
|
|
|