zookeeper 半数可用/选举机制
1.半数可用机制,半数可用指的是zk集群中一半以上的机器正常时集群才能正常工作
已经启动了hadoop002(follower),hadoop003(leader)
下面停止hadoop002

在hadoop003上查看zk状态发现已经不能提供服务,因为2的半数以上至少是2,1不满足条件

2.选举机制
选举机制其实就是集群内部进行投票,只要选出了leader,后期即使加入新的服务器也不会重新选举具体如何选举呢?之前在讲启动zk的时候提到了一个文件myid,其值越大获得的票数约多,假设现在有两台机器hadoop002,hadoop003,myid分别为2和3,这样myid较大的hadoop003获得两票(自己投自己一票加上hadoop002的一票),顺利成为他们中的leader,这样即使后续加入新的hadoop004也不会改变hadoop003是leader的事实,除非leader崩溃,重新进行选举
zookeeper 半数可用/选举机制的更多相关文章
- MongoDB复制集高可用选举机制(三)
		复制集高可用选举机制 在上一章介绍了MongoDB的架构,复制集的架构直接影响着故障切换时的结果.为了能够有效的故障切换,请确保至少有一个节点能够顺利升职为主节点.保证在拥有核心业务系统的数据中心中拥 ... 
- 面试官:说一说Zookeeper中Leader选举机制
		哈喽!大家好,我是小奇,一位不靠谱的程序员 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 文章持续更新 一.前言 今天又是一个阳光明媚的一天,我又 ... 
- 温故知新-快速理解zookeeper功能&应用&选举机制
		文章目录 zookeeper简介 什么是zookeeper zookeeper应用场景 zookeeper特点 zookeeper的角色 zookeeper的数据模型 节点数据结构 节点类型 zook ... 
- Zookeeper中的选举机制
		Zookeeper虽然在配置文件中并没有指定master和slave,但是,zookeeper工作时,是有一个节点为leader,其他则为follower.leader是通过内部的选举机制临时产生的. ... 
- 8.8.ZooKeeper 原理和选举机制
		1.ZooKeeper原理 Zookeeper虽然在配置文件中并没有指定master和slave但是,zookeeper工作时,是有一个节点为leader,其他则为follower,Leader是通 ... 
- zookeeper的leader选举机制个人总结
		第一步:每个服务器都首先投自己,格式为<sid,zxid>: 第二步:然后将自己的投票以<sid,zxid>形式发送给其他服务器,这样每个服务器除了自己的投票,还有集群中除了自 ... 
- zookeeper选举机制
		在上一篇文章中我们大致浏览了zookeeper的启动过程,并且提到在Zookeeper的启动过程中leader选举是非常重要而且最复杂的一个环节.那么什么是leader选举呢?zookeeper为什么 ... 
- zookeeper的选举机制
		1)半数机制:集群中半数以上机器存活,集群可用.所以zookeeper适合装在奇数台机器上. 2)Zookeeper虽然在配置文件中并没有指定master和slave.但是,zookeeper工作时, ... 
- java架构之路-(分布式zookeeper)zookeeper集群配置和选举机制详解
		上次博客我们说了一下zookeeper的配置文件,以及命令的使用https://www.cnblogs.com/cxiaocai/p/11597465.html.我们这次来说一下我们的zookeepe ... 
随机推荐
- 洛谷 P1657 选书
			P1657 选书 题目描述 学校放寒假时,信息学奥赛辅导老师有1,2,3……x本书,要分给参加培训的x个人,每人只能选一本书,但是每人有两本喜欢的书.老师事先让每个人将自己喜欢的书填写在一张表上.然后 ... 
- OC中对于属性的总结(@property)
			在没有属性之前: 对成员变量进行改动都要用到设置器:setter来改动 Person *per =[[Person alloc] init]; 对象通过设置器对成员变量内容进行修该 [per setN ... 
- 驱动学习3-make
			在向内核中添加驱动的时候要完成3项工作 (1)在Kconfig中添加新代码对应项目的编译条件(下面Makefile文件中需要用到它定义的的宏变量) (2)将驱动源码添加到对应的目录中 (3)在目录Ma ... 
- c++智能指针使用笔记
			1. c++智能指针中,c++的memory文件中,有auto_ptr等各种关于智能指针的东西,shared_ptr,weak_ptr在C++11中已经成为标准. 也看了ogs的智能指针,每次引用起来 ... 
- Spring Boot系列二 Spring @Async异步线程池用法总结
			1. TaskExecutor Spring异步线程池的接口类,其实质是java.util.concurrent.Executor Spring 已经实现的异常线程池: 1. SimpleAsyncT ... 
- SDWebImage使用
			SDWebImage这个类库提供一个UIImageView类别以支持加载来自网络的远程图片.具有缓存管理.异步下载.同一个URL下载次数控制和优化等特征. 将SDWebImage类库添加入工程时,一定 ... 
- thinkphp模型事件(钩子函数:模型中在增删改等操作前后自动执行的事件)
			thinkphp模型事件(钩子函数:模型中在增删改等操作前后自动执行的事件) 一.总结 1.通过模型事件(钩子函数),可以在插入更新删除等前后执行一些特定的功能 2.模型事件是写在模型里面的,控制器中 ... 
- Linux下搭建Memcached缓存系统
			首先说下抱歉,博主近期单位经常加班.博客更新有点慢.希望大家理解,草稿箱里存了不少内容,等不忙时候一点点填坑~ 在一般的站点开发学习时候.都会把数据存放在RDBMS(关系型数据库系统(Relation ... 
- Giraph源代码分析(六)——Edge 分析
			HamaWhite 原创,转载请注明出处.欢迎大家增加Giraph 技术交流群: 228591158 欢迎訪问: 西北工业大学 - 大数据与知识管理研究室 (Northwestern Polytech ... 
- 最小生成树(MST)求解旅行商问题
			从当前位置开始(也可以不指定起始位置),访问完所有未访问的端点后返回起始点的最短路径就是连接所有端点的生成树.最小生成树需保证: 每条边最多只能被选 1 次: 抹掉所有未被选择的边时,图形不能分为上下 ... 
