赞
踩
Apache ZooKeeper是一种高可用性服务,用于维护少量协调数据,通知客户端该数据的更改以及监视客户端的故障。自动HDFS故障转移的实现依赖于ZooKeeper来实现以下功能:
a.故障检测:集群中的每个NameNode计算机都在ZooKeeper中维护一个持久会话。如果计算机崩溃,ZooKeeper会话将过期,通知另一个NameNode应该触发故障转移。
b.active活跃节点的选举:ZooKeeper提供了一种简单的机制,可以将节点专门选为活动节点。如果当前活动的NameNode崩溃,则另一个节点可能在ZooKeeper中采用特殊的独占锁,指示它应该成为下一个活动的。
搭建HA的 时候,在该模式下,即使活动节点发生故障,系统也不会自动触发从活动状态到备用NameNode的故障转移,
本文是关于如何配置和部署故障转义。
1.下载zookeeper-3.4.6版本,根据自己需求;
2.解压至~/soft/ 下
tar -zxvf zookeeper-3.4.6.tar.gz ~/soft/
3.创建软链接:ln -s zookpeer-3.4.6 zookeeper
4.添加zookeeper的环境变量:(并生效)
~/.bash_profile
修改: ~$> gedit .bash_profile (gedit 相当于vi/vim)
添加:
#---zookeeper install
export ZOOKEEPER_HOME=/home/hyxy/soft/zookeeper
export PATH=$ZOOKEEPER_HOME/bin:$PATH
生效: source .bash_profile //使之生效
测试是否好使:cd $ZOOKEEPER_HOME
此时,要启动一个zookeeper,需要一个配置文件:zoo.cfg ,如下
5. 进入安装目录下:复制得zoo.cfg
zookeeper$> cd conf
conf$> cp zoo_sample.cfg zoo.cfg
6. 修改上述的zoo.cfg ,只需要修改dataDir日志信息即可
tickTime=2000 //滚动的毫秒数
initLimit=10
syncLimit=5
dataDir=home/hyxy/tmp/zookeeper //存储zookeeper的日志信息
clientPort=2181 //监听客户端连接 端口
现在,你也创建配置文件,您可以启动Zookeeper:
7.开启zookeeper Server
[hyxy@master conf]$ zkServer.sh start //就会开启zookeeper Server 的守护进程
[hyxy@master conf]$ jps
13331 Jps
13316 ZookeeperMain //zookeeper Server 的服务器
8.客户端去连接它:
conf$> zkCli.sh //开启客户端的时候,要是zkServer.sh服务端没开启,会报:
// java.net.ConnectException: 拒绝连接
也可以连接 mster:2181 : $> zkCli.sh -server master:2181 命令即可
连接上zooKeeper之后, 最后一行显示:
[zk: localhost:2181(CONNECTED) 0]
说明客户端已经连接到localhost:2181端口
[zk: localhost:2181(CONNECTED) 0] help
- [zk: localhost:2181(CONNECTED) 0] help
- ZooKeeper -server host:port cmd args
- stat path [watch]
- set path data [version]
- ls path [watch]
- delquota [-n|-b] path
- ls2 path [watch]
- setAcl path acl
- setquota -n|-b val path
- history
- redo cmdno
- printwatches on|off
- delete path [version]
- sync path
- listquota path
- rmr path
- get path [watch]
- create [-s] [-e] path data acl
- addauth scheme auth
- quit
- getAcl path
- close
- connect host:port
- [zk: localhost:2181(CONNECTED) 1]
-

- [zk: localhost:2181(CONNECTED) 6] get /zookeeper
-
- cZxid = 0x0
- ctime = Thu Jan 01 08:00:00 CST 1970
- mZxid = 0x0
- mtime = Thu Jan 01 08:00:00 CST 1970
- pZxid = 0x0
- cversion = -1
- dataVersion = 0
- aclVersion = 0
- ephemeralOwner = 0x0
- dataLength = 0
- numChildren = 1
- [zk: localhost:2181(CONNECTED) 7]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。