zookeeper基础(笔记)
2017-06-20 12:35
106 查看
zookeeper是开源的分布式协调服务,由雅虎创建,google开源实现。
zookeeper是一个高性能的分布式数据一致性解决方案,它将复杂的、容易出错的分布式一致性服务封装起来,构成一个高可靠的原语集,并提供一系列简单易用的接口。
集群角色:
leader服务器是整个zookeeper集群工作机制的核心
follwer服务器是zookeeper集群状态的跟随者
observer服务器充当一个观察者的角色
会话
会话是指客户端和zookeeper服务器的连接,也叫session,客户端与服务器建立一个tcp的长连接来维持一个session,客户端能够通过心跳检测与服务器保持有效的会话,也能向zk服务器发送请求并获取响应。
数据节点
目录结构:
事件监听器
zookeeper允许用户在指定的节点上注册一些watcher,当数据节点发送变化,zookeeper服务器会将变化的通知发送给感兴趣的客户端。
ACL(Access Control List)权限控制
zookeeper采用ACL策略来进行权限控制:
zookeeper安装:
1.需要先安装jdk环境
2.然后在每个服务器zookeeper/conf目录下复制一份zoo_simple.cfg文件改名为zoo.cfg
3.
4.修改zoo.cfg文件,追加服务器地址:
第一个端口表示该服务器与集群中的leader交换的信息的端口。
第二个端口为选举端口,表示选举新leader时服务器间相互通信的端口(当leader挂掉时,其余服务器会相互通信,选择出新的leader)。
一般来说,集群中每个服务器的A端口都是一样,每个服务器的B端口也是一样
5.进入/zookeeper/bin目录下启动服务:
zookeeper集群只要有一半的服务器正常启动就能正常工作
四字命令
zookeeper是一个高性能的分布式数据一致性解决方案,它将复杂的、容易出错的分布式一致性服务封装起来,构成一个高可靠的原语集,并提供一系列简单易用的接口。
集群角色:
leader服务器是整个zookeeper集群工作机制的核心
follwer服务器是zookeeper集群状态的跟随者
observer服务器充当一个观察者的角色
会话
会话是指客户端和zookeeper服务器的连接,也叫session,客户端与服务器建立一个tcp的长连接来维持一个session,客户端能够通过心跳检测与服务器保持有效的会话,也能向zk服务器发送请求并获取响应。
数据节点
目录结构:
/ ——> /NameServer ——> /service1 ——> ——> /service2 ——> /Apps ——> /Configure
事件监听器
zookeeper允许用户在指定的节点上注册一些watcher,当数据节点发送变化,zookeeper服务器会将变化的通知发送给感兴趣的客户端。
ACL(Access Control List)权限控制
zookeeper采用ACL策略来进行权限控制:
CREATE:创建子节点的权限 READ:获取节点数据和子节点列表的权限 WRITE:更新节点数据的权限 DELETE:删除节点数据的权限 ADMIN:设置节点ACL的权限
zookeeper安装:
1.需要先安装jdk环境
2.然后在每个服务器zookeeper/conf目录下复制一份zoo_simple.cfg文件改名为zoo.cfg
3.
vim myid内容为当前服务器在zoo.cfg文件中的server的号数,如
server.1则写入1,myid文件放在配置的dataDir目录下
4.修改zoo.cfg文件,追加服务器地址:
server.1=192.168.0.3:2888:3888 server.2=192.168.0.2:2888:3888 ......
第一个端口表示该服务器与集群中的leader交换的信息的端口。
第二个端口为选举端口,表示选举新leader时服务器间相互通信的端口(当leader挂掉时,其余服务器会相互通信,选择出新的leader)。
一般来说,集群中每个服务器的A端口都是一样,每个服务器的B端口也是一样
5.进入/zookeeper/bin目录下启动服务:
./zkServer.sh start
zookeeper集群只要有一半的服务器正常启动就能正常工作
四字命令
echo stat | nc 192.168.0.3 2181显示指定zookeeper服务的状态
echo conf | nc 192.168.0.3 2181zookeeper服务器运行时的基本配置信息
echo cons | nc 192.168.0.3 2181zookeeper服务器上所有客户端连接的详细信息
echo dump | nc 192.168.0.3 2181输出当前集群的所有会话信息,包括会话id和每个会话创建的临时节点
echo envi | nc 192.168.0.3 2181zookeper所在服务器运行时的环境信息
echo ruok | nc 192.168.0.3 2181当前服务器是否正在运行
echo srvr | nc 192.168.0.3 2181当前服务器的自身信息
echo srst | nc 192.168.0.3 2181重置所有服务器统计信息
echo wchs | nc 192.168.0.3 2181当前服务器管理的watch的概要信息
echo wchc | nc 192.168.0.3 2181当前服务器管理的watch的详细信息,以会话为单位
echo wchp | nc 192.168.0.3 2181当前服务器管理的watch详细信息,以节点路径为单位
echo mntr | nc 192.168.0.3 2181用于输出比stat命令更详细的统计信息
相关文章推荐
- 大数据技术学习笔记之Hadoop框架基础4-MapReduceshuffer过程详解及zookeeper框架学习
- ASP.NET 学习笔记之一 ASP.NET基础
- UML基础笔记
- Win32 GDI基础(笔记)
- 《面向对象基础:C++实现》学习笔记之五
- 《面向对象基础:C++实现》学习笔记之六
- 培训笔记:SQL基础
- C#学习笔记之类型基础
- C++学习笔记——基础知识
- 《面向对象基础:C++实现》学习笔记之四
- 《Java Servlet编程》笔记(Http servlet基础)
- 2310学习笔记(二)--C#基础
- JAVA学习笔记(基础知识)
- Linux 学习笔记( LINUX运行的硬件基础1)
- UML基础学习笔记一
- J2ME基础笔记
- j2ee 笔记 --基础
- linux系统安全基础笔记之二
- C#学习笔记(二十一):使用文件基础
- Java2核心技术第七版的学习笔记(三) Fundamental Programming Structures in Java(Java语言的基础)(一)