ZooKeeper安装运行
来源:互联网 发布:js弹出div窗口 编辑:程序博客网 时间:2024/06/03 23:43
ZooKeeper介绍
ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
Zookeeper是Google的Chubby一个开源的实现.是高有效和可靠的协同工作系统.Zookeeper能够用来leader选举,配置信息维护等.在一个分布式的环境中,我们需要一个Master实例或存储一些配置信息,确保文件写入的一致性等.Zookeeper能够保证如下3点:
- Watches are ordered with respect to other events, other watches, and
asynchronous replies. The ZooKeeper client libraries ensures that
everything is dispatched in order. - A client will see a watch event for a znode it is watching before seeing the new data that corresponds to that znode.
- The order of watch events from ZooKeeper corresponds to the order of the updates as seen by the ZooKeeper service.
在Zookeeper中,znode是一个跟Unix文件系统路径相似的节点,可以往这个节点存储或获取数据.如果在创建znode时Flag设置 为EPHEMERAL,那么当这个创建这个znode的节点和Zookeeper失去连接后,这个znode将不再存在在Zookeeper 里.Zookeeper使用Watcher察觉事件信息,当客户端接收到事件信息,比如连接超时,节点数据改变,子节点改变,可以调用相应的行为来处理数 据.Zookeeper的Wiki页面展示了如何使用Zookeeper来处理事件通知,队列,优先队列,锁,共享锁,可撤销的共享锁,两阶段提交.
ZooKeeper官网
Zookeeper官网
ZooKeeper安装
首先下载最新版 zookeeper-3.4.5.tar.gz
然后解压
tar zxvf zookeeper-3.4.5.tar.gz
然后进入conf目录修改zoo_sample.cfg为zoo.cfg
然后vi zoo.cfg
更改为:
# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial # synchronization phase can takeinitLimit=10# The number of ticks that can pass between # sending a request and getting an acknowledgementsyncLimit=5# the directory where the snapshot is stored.# do not use /tmp for storage, /tmp here is just # example sakes.dataDir=/tmp/zookeeper# the port at which the clients will connectclientPort=2181## Be sure to read the maintenance section of the # administrator guide before turning on autopurge.## http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance## The number of snapshots to retain in dataDir#autopurge.snapRetainCount=3# Purge task interval in hours# Set to "0" to disable auto purge feature#autopurge.purgeInterval=1
编辑保存后进入bin目录执行
./zkServer.sh start
ZooKeeper测试
[root@localhost bin]# ./zkCli.shConnecting to localhost:21812013-01-16 14:36:22,484 [myid:] - INFO [main:Environment@100] - Client environment:zookeeper.version=3.4.5-1392090, built on 09/30/2012 17:52 GMT2013-01-16 14:36:22,488 [myid:] - INFO [main:Environment@100] - Client environment:host.name=localhost.localdomain2013-01-16 14:36:22,489 [myid:] - INFO [main:Environment@100] - Client environment:java.version=1.6.0_292013-01-16 14:36:22,489 [myid:] - INFO [main:Environment@100] - Client environment:java.vendor=Sun Microsystems Inc.2013-01-16 14:36:22,490 [myid:] - INFO [main:Environment@100] - Client environment:java.home=/usr/java/jdk1.6.0_29/jre2013-01-16 14:36:22,490 [myid:] - INFO [main:Environment@100] - Client environment:java.class.path=/usr/local/zookeeper-3.4.5/bin/../build/classes:/usr/local/zookeeper-3.4.5/bin/../build/lib/*.jar:/usr/local/zookeeper-3.4.5/bin/../lib/slf4j-log4j12-1.6.1.jar:/usr/local/zookeeper-3.4.5/bin/../lib/slf4j-api-1.6.1.jar:/usr/local/zookeeper-3.4.5/bin/../lib/netty-3.2.2.Final.jar:/usr/local/zookeeper-3.4.5/bin/../lib/log4j-1.2.15.jar:/usr/local/zookeeper-3.4.5/bin/../lib/jline-0.9.94.jar:/usr/local/zookeeper-3.4.5/bin/../zookeeper-3.4.5.jar:/usr/local/zookeeper-3.4.5/bin/../src/java/lib/*.jar:/usr/local/zookeeper-3.4.5/bin/../conf:./:/usr/java/jdk1.6.0_29/lib:/usr/java/jdk1.6.0_29/jre/lib2013-01-16 14:36:22,491 [myid:] - INFO [main:Environment@100] - Client environment:java.library.path=/usr/java/jdk1.6.0_29/jre/lib/i386/client:/usr/java/jdk1.6.0_29/jre/lib/i386:/usr/java/jdk1.6.0_29/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib2013-01-16 14:36:22,491 [myid:] - INFO [main:Environment@100] - Client environment:java.io.tmpdir=/tmp2013-01-16 14:36:22,491 [myid:] - INFO [main:Environment@100] - Client environment:java.compiler=<NA>2013-01-16 14:36:22,492 [myid:] - INFO [main:Environment@100] - Client environment:os.name=Linux2013-01-16 14:36:22,492 [myid:] - INFO [main:Environment@100] - Client environment:os.arch=i3862013-01-16 14:36:22,493 [myid:] - INFO [main:Environment@100] - Client environment:os.version=2.6.18-308.24.1.el52013-01-16 14:36:22,493 [myid:] - INFO [main:Environment@100] - Client environment:user.name=root2013-01-16 14:36:22,493 [myid:] - INFO [main:Environment@100] - Client environment:user.home=/root2013-01-16 14:36:22,494 [myid:] - INFO [main:Environment@100] - Client environment:user.dir=/usr/local/zookeeper-3.4.5/bin2013-01-16 14:36:22,496 [myid:] - INFO [main:ZooKeeper@438] - Initiating client connection, connectString=localhost:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@5ffb18Welcome to ZooKeeper!2013-01-16 14:36:22,592 [myid:] - INFO [main-SendThread(localhost.localdomain:2181):ClientCnxn$SendThread@966] - Opening socket connection to server localhost.localdomain/127.0.0.1:2181. Will not attempt to authenticate using SASL (无法定位登录配置)2013-01-16 14:36:22,601 [myid:] - INFO [main-SendThread(localhost.localdomain:2181):ClientCnxn$SendThread@849] - Socket connection established to localhost.localdomain/127.0.0.1:2181, initiating sessionJLine support is enabled2013-01-16 14:36:22,693 [myid:] - INFO [main-SendThread(localhost.localdomain:2181):ClientCnxn$SendThread@1207] - Session establishment complete on server localhost.localdomain/127.0.0.1:2181, sessionid = 0x13c3c5224cc0000, negotiated timeout = 30000WATCHER::WatchedEvent state:SyncConnected type:None path:null[zk: localhost:2181(CONNECTED) 0] helpZooKeeper -server host:port cmd args connect host:port get path [watch] ls path [watch] set path data [version] rmr path delquota [-n|-b] path quit printwatches on|off create [-s] [-e] path data acl stat path [watch] close ls2 path [watch] history listquota path setAcl path acl getAcl path sync path redo cmdno addauth scheme auth delete path [version] setquota -n|-b val path[zk: localhost:2181(CONNECTED) 1] create /my_data "data.ch.com"Created /my_data[zk: localhost:2181(CONNECTED) 2] get /my_data"data.ch.com"cZxid = 0x2ctime = Wed Jan 16 14:38:20 CST 2013mZxid = 0x2mtime = Wed Jan 16 14:38:20 CST 2013pZxid = 0x2cversion = 0dataVersion = 0aclVersion = 0ephemeralOwner = 0x0dataLength = 13numChildren = 0[zk: localhost:2181(CONNECTED) 3] set /my_date "123456.com"Node does not exist: /my_date[zk: localhost:2181(CONNECTED) 4] set /my_data "123456.com"cZxid = 0x2ctime = Wed Jan 16 14:38:20 CST 2013mZxid = 0x4mtime = Wed Jan 16 14:38:58 CST 2013pZxid = 0x2cversion = 0dataVersion = 1aclVersion = 0ephemeralOwner = 0x0dataLength = 12numChildren = 0[zk: localhost:2181(CONNECTED) 5] get /my_data"123456.com"cZxid = 0x2ctime = Wed Jan 16 14:38:20 CST 2013mZxid = 0x4mtime = Wed Jan 16 14:38:58 CST 2013pZxid = 0x2cversion = 0dataVersion = 1aclVersion = 0ephemeralOwner = 0x0dataLength = 12numChildren = 0[zk: localhost:2181(CONNECTED) 6] create /mytemp "你好吗"Created /mytemp[zk: localhost:2181(CONNECTED) 7] get /mytNode does not exist: /myt[zk: localhost:2181(CONNECTED) 8] get /mytemp"你好吗"cZxid = 0x5ctime = Wed Jan 16 14:40:44 CST 2013mZxid = 0x5mtime = Wed Jan 16 14:40:44 CST 2013pZxid = 0x5cversion = 0dataVersion = 0aclVersion = 0ephemeralOwner = 0x0dataLength = 11numChildren = 0[zk: localhost:2181(CONNECTED) 9] get /mytemp"你好吗"cZxid = 0x5ctime = Wed Jan 16 14:40:44 CST 2013mZxid = 0x5mtime = Wed Jan 16 14:40:44 CST 2013pZxid = 0x5cversion = 0dataVersion = 0aclVersion = 0ephemeralOwner = 0x0dataLength = 11numChildren = 0[zk: localhost:2181(CONNECTED) 10] get /my_data"123456.com"cZxid = 0x2ctime = Wed Jan 16 14:38:20 CST 2013mZxid = 0x4mtime = Wed Jan 16 14:38:58 CST 2013pZxid = 0x2cversion = 0dataVersion = 1aclVersion = 0ephemeralOwner = 0x0dataLength = 12numChildren = 0[zk: localhost:2181(CONNECTED) 11] lsZooKeeper -server host:port cmd args connect host:port get path [watch] ls path [watch] set path data [version] rmr path delquota [-n|-b] path quit printwatches on|off create [-s] [-e] path data acl stat path [watch] close ls2 path [watch] history listquota path setAcl path acl getAcl path sync path redo cmdno addauth scheme auth delete path [version] setquota -n|-b val path[zk: localhost:2181(CONNECTED) 12]
- ZooKeeper安装运行
- ZooKeeper安装运行
- zookeeper安装与运行
- ZooKeeper安装与运行
- zookeeper学习-1-zookeeper的安装与运行
- Zookeeper以Windows服务安装运行
- 【Dubbo之基本配置和运行(1)】zookeeper安装
- window7环境下ZooKeeper的安装及运行
- zookeeper运行环境1:Zookeeper集群环境安装过程详解(改进版)
- zookeeper安装
- Zookeeper安装
- zookeeper安装
- zookeeper安装
- zookeeper安装
- zookeeper安装
- zookeeper安装
- zookeeper安装
- zookeeper安装
- JAVA处理CSV文件里中文的处理
- IOException的简单处理
- MySQL数据库存储引擎详解
- iwconfig参数详解
- unix进程
- ZooKeeper安装运行
- Eclipse editor does not contain a main type的解决方案
- C#中调用Windows API的要点
- cs文件中不能继承System.Web.UI.Page问题的解决方法
- Qt____在信号和槽中使用自己定义的结构体____操作
- 让宝贝爱上听故事——《故事口袋听听》安卓版V2.4上线
- Activity 的生命週期
- 使用游标的方式删除表中相同的记录,并只留下其中一条
- vlan