zookeeper是什么
是一个开源的分布式协调服务,
是由雅虎创建的,基于google chubby,
是分布式数据一致性的解决方案。
zookeeper能做什么
数据的发布/订阅(配置中心)
负载均衡
命名服务(全局节点路径名称唯一)
master选举(kafka、hadoop、hbase)
分布式队列、分布式锁
zookeeper特性
从同一个客户端发起的事务请求,最终会严格按照顺序被应用到zookeeper中
所有的事务请求的处理结果在整个集群的所有机器上的应用情况是一致的
一旦服务器成功响应了客户端的数据,那么在整个集群中一定是同步并且保留下来的
一旦一个事务被成功应用,客户端就能够立即从服务器端读取到事务
变更后的最新数据状态;(zookeeper仅仅保证在一定时间内,近实时)
zookeeper安装
1.下载zookeeper的安装包
http://apache.fayea.com/zookeeper/stable
2.解压zookeeper
tar -zxvf zookeeper-3.4.10.tar.gz
3.cd到ZK_HOME/conf文件夹下, copy一份zoo.cfg
cp zoo_sample.cfg zoo.cfg
4.cd到到ZK_HOME/bin文件夹下
sh zkServer.sh start
{start|start-foreground|stop|restart|status|upgrade|print-cmd}
5.客户端访问
sh zkCli.sh -server ip:port
1.修改配置文件 zoo.cfg 添加 server.id=host:port:port
server.1=192.168.11.129:2888:3181
server.2=192.168.11.130:2888:3181
server.3=192.168.11.131:2888:3181
2.创建myid
在每一个服务器dataDir目录下创建一个myid的文件,
文件就一行数据,数据内容是每台机器对应的server ID的数字
3.启动zookeeper