兼容性问题
理论上小版本升级只是修改bug,不存在兼容性问题,但是涉及到线上应用难免有些担心。测试后证明是兼容的,已经将线上服务器从3.4.x统一升级到3.4.14。
本文所说的缩容是指减少选举节点数量,将选举节点改成观察者节点。
原则:
1、每次缩容的节点数必须是选举节点总数的一小半;
2、缩容操作时,修改顺序:
a 重启观察者节点。因为不影响选举,可以尽早改成最终配置,减少重启次数,但是不论何时修改,都一定要包含leader节点,否则没法同步数据。
b 重启普通选举节点(非缩容的目标节点、非leader节点)
c 重启被缩容的节点
d 重启leader节点
3、以上步骤能一次性解决问题最好,不行的话,多重复几次。
选举节点迁移
操作说明:是指用新的选举节点替换原来的选举节点,原来的选举节点变成观察者节点或停掉
方案:先加节点然后再删节点。加的节点数量要小于现有节点数量,否则加不进去。 加的操作比较简单,只是注意最后重启leader节点即可,缩容的步骤同上,缩的节点数小于等于加的节点数,也要小于当前选举节点总数的一小半。
重启原则:滚动重启,尽量少触发选主
重启顺序:新节点、观察者节点、普通选举节点、停掉或重启改变类型的选举节点、leader节点
小技巧:观察者节点因为不影响选举结果,所以可以在第二轮的时候提前改成最终配置,这样第三轮就能少重启一次。
参考:
5节点的迁移 | 3节点的迁移 | 备注 | |
第一轮 | 5+4 -> 9 | 3+2 -> 5 |
1、先修改观察者节点(下同) 2、新加入的节点数必须小于现有节点数 |
第二轮 | 9+1-3 -> 7 | 5+1-1 -> 5 | 选举节点改变。先变其他节点,再先加后减,最后变换leader |
第三轮 | 7-2 -> 5 | 5-2 -> 3 | 1、先变其他节点,再变缩容节点,最后变leader |
相关推荐
《Zookeeper 3.4.5:分布式协调服务的核心与实践》 Zookeeper,作为Apache的一个顶级项目,是分布式系统中的关键组件,尤其在大数据、云计算领域,它扮演着核心的协调者角色。Zookeeper 3.4.5是其稳定且广泛使用的...
Hadoop2.2+Zookeeper3.4.5+HBase0.96集群环境搭建 Hadoop2.2+Zookeeper3.4.5+HBase0.96集群环境搭建是大数据处理和存储的重要组件,本文档将指导用户从零开始搭建一个完整的Hadoop2.2+Zookeeper3.4.5+HBase0.96集群...
**ZooKeeper 3.4.5:服务治理与分布式部署的核心** ZooKeeper 是一个分布式的、开放源码的协调服务,它为分布式应用程序提供简单一致的命名服务、配置管理、分布式同步以及组服务。在Java编程环境中,ZooKeeper ...
在实际运营中,由于业务需求变化或技术迭代,我们可能会遇到对Zookeeper集群进行升级或迁移的情况。本文将详细介绍这两种操作,以及如何实现无状态平滑升级和迁移,确保服务的连续性和数据完整性。 首先,了解为何...
3. 在“Select root directory”中,导航到解压后的`zookeeper-3.4.5`目录,确保“Copy projects into workspace”选项未被选中,然后点击“Finish”。 现在,你可以在Eclipse的“Package Explorer”视图中看到...
1. **下载与解压**:首先,你需要从官方或镜像站点下载Zookeeper的tar.gz压缩包,即"zookeeper-3.4.5-cdh5.15.1.tar.gz"。下载完成后,使用`tar -zxvf zookeeper-3.4.5-cdh5.15.1.tar.gz`命令进行解压。 2. **配置...
2. **解压Zookeeper**:将下载的`zookeeper-3.4.5`压缩包解压到指定目录,例如`C:\zookeeper-3.4.5`。 3. **配置环境变量**:在系统环境变量中添加`ZOOKEEPER_HOME`指向Zookeeper的安装目录,并在`PATH`变量中添加`...
在Java项目中,通常通过Maven或Gradle等构建工具引入Zookeeper的依赖,添加对应的jar包到类路径中,然后在代码中实例化ZooKeeper对象,进行相关操作。同时,需要注意的是,Zookeeper的操作是异步的,因此开发者需要...
《Zookeeper-3.4.5-cdh5.16.2:分布式协调服务的核心解析》 Apache ZooKeeper,一个高度可靠的分布式协调系统,是大数据生态中的重要组件。本资源包"zookeeper-3.4.5-cdh5.16.2.tar.gz"包含了Zookeeper的3.4.5版本...
1. **下载安装包**:首先,你需要从Apache官网或其他可信源下载Zookeeper 3.4.5的tgz文件到Linux服务器上,一般放在 `/home/user/Downloads` 或者 `/tmp` 目录下。 2. **解压文件**:使用`tar`命令解压下载的tgz...
下载的压缩包"zookeeper-3.4.5.tar.gz"是一个标准的GNU tar格式的压缩文件,通常在Linux上用于打包和归档多个文件或目录。 解压这个文件,你可以使用以下命令: ```bash tar -zxvf zookeeper-3.4.5.tar.gz ``` 这将...
4. **集群管理**:它可以监控各个节点的状态,当节点状态发生变化时,可以通知到相关的服务。 5. **分发及锁服务**:Zookeeper支持分布式同步和队列,可以实现分布式锁和分布式队列的功能。 Zookeeper的架构由三...
Zookeeper作为Hadoop的资源调度中心,应用十分广泛,有需要的自行下载 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为...
在实际使用中,我们可以通过`zookeeper-3.4.5.tar.gz`这个压缩包获取到Zookeeper的源代码、文档以及相关的配置文件。`zookeeper.docx`可能包含更详细的Zookeeper使用指南、配置教程或案例分析,供开发者学习参考。 ...
《Zookeeper-3.4.5:分布式协调服务的核心与应用》 Zookeeper,作为Apache的一个顶级项目,是分布式应用程序协调服务的开源实现,它提供了一种简单有效的原语集,使得分布式系统的开发者能够处理命名服务、配置管理...
标题“zookeeper-3.4.14.zip”暗示了我们正在探讨的是Zookeeper的一个具体版本,即3.4.14,这个版本是Kafka广泛使用的稳定版本。本文将深入解析Zookeeper在Kafka中的应用以及其实现原理。 Kafka是一个高吞吐量、...
zookeeper-3.4.5.jar; zookeeper-3.4.5.jar; zookeeper-3.4.5.jar;