logo资料库

06_尚硅谷大数据技术之Zookeeper.docx

第1页 / 共21页
第2页 / 共21页
第3页 / 共21页
第4页 / 共21页
第5页 / 共21页
第6页 / 共21页
第7页 / 共21页
第8页 / 共21页
资料共21页,剩余部分请下载后查看
第1章 Zookeeper入门
1.1 概述
1.2 特点
1.3 数据结构
1.4 应用场景
1.5 下载地址
第2章 Zookeeper安装
2.1 本地模式安装部署
2.2 配置参数解读
第3章 Zookeeper内部原理
3.1 选举机制(面试重点)
3.2 节点类型
3.3 Stat结构体
3.4 监听器原理(面试重点)
3.5 写数据流程
第4章 Zookeeper实战(开发重点)
4.1 分布式安装部署
4.2 客户端命令行操作
4.3 API应用
4.3.1 Eclipse环境搭建
4.3.2 创建ZooKeeper客户端
4.3.3 创建子节点
4.3.4 获取子节点并监听节点变化
4.3.5 判断Znode是否存在
4.4 监听服务器节点动态上下线案例
第5章 企业面试真题
5.1 请简述ZooKeeper的选举机制
5.2 ZooKeeper的监听原理是什么?
5.3 ZooKeeper的部署方式有哪几种?集群中的角色有哪些?集群最少需要几台机器?
5.4 ZooKeeper的常用命令
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— 尚硅谷大数据技术之 Zookeeper (作者:尚硅谷大数据研发部) 版本:V2.0 第 1 章 Zookeeper 入门 1.1 概述 Zookeeper 是一个开源的分布式的,为分布式应用提供协调服务的 Apache 项目。 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— 1.2 特点 1.3 数据结构 1.4 应用场景 提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下 线、软负载均衡等。 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— 1.5 下载地址 1.官网首页: https://zookeeper.apache.org/ 2.下载截图,如图 5-5,5-6,5-7 所示 图 5-5 Zookeeper 下载(一) 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— 图 5-6 Zookeeper 下载(二) 图 5-7 Zookeeper 下载(三) 第 2 章 Zookeeper 安装 2.1 本地模式安装部署 1.安装前准备 (1)安装 Jdk (2)拷贝 Zookeeper 安装包到 Linux 系统下 (3)解压到指定目录 [atguigu@hadoop102 software]$ tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/ 2.配置修改 (1)将/opt/module/zookeeper-3.4.10/conf 这个路径下的 zoo_sample.cfg 修改为 zoo.cfg; 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— [atguigu@hadoop102 conf]$ mv zoo_sample.cfg zoo.cfg (2)打开 zoo.cfg 文件,修改 dataDir 路径: [atguigu@hadoop102 zookeeper-3.4.10]$ vim zoo.cfg 修改如下内容: dataDir=/opt/module/zookeeper-3.4.10/zkData (3)在/opt/module/zookeeper-3.4.10/这个目录上创建 zkData 文件夹 [atguigu@hadoop102 zookeeper-3.4.10]$ mkdir zkData 3.操作 Zookeeper (1)启动 Zookeeper [atguigu@hadoop102 zookeeper-3.4.10]$ bin/zkServer.sh start (2)查看进程是否启动 [atguigu@hadoop102 zookeeper-3.4.10]$ jps 4020 Jps 4001 QuorumPeerMain (3)查看状态: [atguigu@hadoop102 zookeeper-3.4.10]$ bin/zkServer.sh status ZooKeeper JMX enabled by default Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg Mode: standalone (4)启动客户端: [atguigu@hadoop102 zookeeper-3.4.10]$ bin/zkCli.sh (5)退出客户端: [zk: localhost:2181(CONNECTED) 0] quit (6)停止 Zookeeper [atguigu@hadoop102 zookeeper-3.4.10]$ bin/zkServer.sh stop 2.2 配置参数解读 Zookeeper中的配置文件zoo.cfg中参数含义解读如下: 1.tickTime =2000:通信心跳数,Zookeeper 服务器与客户端心跳时间,单位毫 秒 Zookeeper使用的基本时间,服务器之间或客户端与服务器之间维持心跳的时间间隔, 也就是每个tickTime时间就会发送一个心跳,时间单位为毫秒。 它用于心跳机制,并且设置最小的session超时时间为两倍心跳时间。(session的最小超 时时间是2*tickTime) 2.initLimit =10:LF 初始通信时限 集群中的Follower跟随者服务器与Leader领导者服务器之间初始连接时能容忍的最多心 跳数(tickTime的数量),用它来限定集群中的Zookeeper服务器连接到Leader的时限。 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Zookeeper ——————————————————————————— —— 3.syncLimit =5:LF 同步通信时限 集群中Leader与Follower之间的最大响应时间单位,假如响应超过syncLimit * tickTime, Leader认为Follwer死掉,从服务器列表中删除Follwer。 4.dataDir:数据文件目录+数据持久化路径 主要用于保存 Zookeeper 中的数据。 5.clientPort =2181:客户端连接端口 监听客户端连接的端口。 第 3 章 Zookeeper 内部原理 3.1 选举机制(面试重点) 1)半数机制:集群中半数以上机器存活,集群可用。所以 Zookeeper 适合安装奇数台 服务器。 2)Zookeeper 虽然在配置文件中并没有指定 Master 和 Slave。但是,Zookeeper 工作时, 是有一个节点为 Leader,其他则为 Follower,Leader 是通过内部的选举机制临时产生的。 3)以一个简单的例子来说明整个选举的过程。 假设有五台服务器组成的 Zookeeper 集群,它们的 id 从 1-5,同时它们都是最新启动的, 也就是没有历史数据,在存放数据量这一点上,都是一样的。假设这些服务器依序启动,来 看看会发生什么,如图 5-8 所示。 图 5-8 Zookeeper 的选举机制 (1)服务器 1 启动,此时只有它一台服务器启动了,它发出去的报文没有任何响应, 所以它的选举状态一直是 LOOKING 状态。 (2)服务器 2 启动,它与最开始启动的服务器 1 进行通信,互相交换自己的选举结果, 由于两者都没有历史数据,所以 id 值较大的服务器 2 胜出,但是由于没有达到超过半数以 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
分享到:
收藏