谨以此文纪念我学完马上就遗忘的知识。RIP。
Zookeeper是整个大数据框架中最简单的框架。
在学习Zookeeper之前,需要知道这玩意到底有什么用。
官方说辞:Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。
上面一段话简称一致性服务。
至于Zookeeper是如何做到这些的,从学完的体会来讲,是通过维护一个文件目录来达到目的的。
以下简单记录一下我学习到了(划水)了什么。
学习跟着某硅谷视频来,首先是一些原理学习。
然后分布式zookeeper安装。结果如下:三台启动server的机器中,hadoop2是leader,1、3是follower。
Zookeeper在Linux客户端的命令行操作。
然后是(eclipse下的)API应用。涉及到如何连接ZK,创建节点、检查节点状态、监听节点。JAVA代码,比HadoopMR简单很多。
服务器节点动态上下线案例:(可以看做维持服务器的一致性相关)案例中,通过zookeeper来维护服务器,让客户端、服务器端可以感知有多少台服务器在工作。通过client、server像ZK中注册节点,然后监听节点状态,可以实现。不难。
面试要点:ZK选举机制(半数)、监听原理、部署方式、集群角色、最少要几台机器、常用命令…(目前了解一下)