`
xiaoyu966
  • 浏览: 257907 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ZooKeeper集群高可用

阅读更多

今天按照zookeeper官网的文档配置了一套zookeeper集群。链接如下:

http://zookeeper.apache.org/doc/trunk/zookeeperAdmin.html#sc_systemReq

按照官网的建议,我配置了3台的测试环境,三台完全启动之后,查看状态,两台是follower,一台是leader.

 

./bin/zkServer.sh status
JMX enabled by default
Using config: /opt/yunfei/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: follower

./bin/zkServer.sh status
JMX enabled by default
Using config: /opt/yunfei/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: leader

 

下一步,开始测试高可用。

1. 运行kill -9 命令杀死三个zookeeper中的一个。集群运行正常。

2. 运行kill -9 命令杀死三个zookeeper中的两个。集群全部失效。

 

查看状态如下:

./bin/zkServer.sh status
JMX enabled by default
Using config: /opt/yunfei/zookeeper-3.4.6/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

 

也就是说三台服务器中,如果一台宕机,集群是可以继续正常运行的,但是两台宕机就不可以了。

查阅官网文档之后,发现如下的doc:

Cross Machine Requirements
For the ZooKeeper service to be active, there must be a majority of non-failing machines that can communicate with each other. To create a deployment that can tolerate the failure of F machines, you should count on deploying 2xF+1 machines. Thus, a deployment that consists of three machines can handle one failure, and a deployment of five machines can handle two failures. Note that a deployment of six machines can only handle two failures since three machines is not a majority. For this reason, ZooKeeper deployments are usually made up of an odd number of machines.
To achieve the highest probability of tolerating a failure you should try to make machine failures independent. For example, if most of the machines share the same switch, failure of that switch could cause a correlated failure and bring down the service. The same holds true of shared power circuits, cooling systems, etc.

 总结起来,就是如下几点:

 

1.设置zookeeper集群是一定要部署为2xF+1(即奇数)个server,这样可以允许F个Server出错(宕机或其他)。即:假设有三台server,则最多可以允许一台服务器宕机。集群继续正常工作。

2. 设计zookeeper集群时,为了尽量抬高可靠性、容错性。部署服务器的时候,尽量让服务器位于不同的机房、或者在同一个机房中连接不同的交换机。防止一台交换机出错时,导致整体不可用。

 

 

0
0
分享到:
评论

相关推荐

    高可用之ZooKeeper集群的安装、配置、高可用测试

    高可用之 ZooKeeper 集群的安装、配置、高可用测试 ZooKeeper 是一个广泛使用的分布式协调服务,提供了高可用、可靠的服务注册中心解决方案。高可用之 ZooKeeper 集群的安装、配置、高可用测试是分布式系统架构中...

    Mysql+haproxy+mycat+pxc+zookeeper实现高可用集群

    Mysql+haproxy+mycat+pxc+zookeeper实现高可用集群 本文将详细介绍如何使用Mysql、Haproxy、Mycat、PXC、Zookeeper实现高可用集群,涵盖了整个架构图、应用程序的访问流程、数据的读写分离、负载均衡、数据库节点的...

    Linux下Zookeeper集群的安装

    这种能力对于确保分布式系统的高可用性和容错性至关重要。 #### 二、Zookeeper集群安装步骤 ##### 安装前准备 在正式安装Zookeeper集群之前,需要完成以下准备工作: 1. **环境搭建**:确保所有节点上的操作系统...

    zookeeper集群安装.doc

    启动Zookeeper集群,需要在每台服务器上启动Zookeeper服务,Zookeeper集群将自动选举出Leader节点,并提供高可用性的分布式协调服务。 通过上述步骤,我们可以成功地安装和配置Zookeeper集群,提供高效、可靠、稳定...

    Zookeeper集群部署3.5.5.docx

    * 使用scp命令将Zookeeper集群拷贝到每个节点上,以便实现集群的高可用性和可靠性。 五、集群myid更改 * 进入到每个节点,修改myid文件的值,以便实现集群的高可用性和可靠性。 六、集群系统环境变量添加 * 添加...

    搭建zookeeper集群

    搭建ZooKeeper集群 ZooKeeper是一种基于Java的高性能协调服务,专门为分布式应用程序设计,提供了高可用性、可扩展性和高性能等特点...搭建ZooKeeper集群需要遵循正确的步骤和配置文件,确保集群的高可用性和稳定性。

    Zookeeper集群搭建.doc

    Zookeeper集群搭建是一个重要的任务,尤其在分布式系统中,它作为协调服务,为高可用性和数据一致性提供了基础。Zookeeper是Apache的一个开源项目,用于处理分布式应用中的命名服务、配置管理、集群同步、选举等功能...

    zookeeper集群.rar

    6. **故障转移和选举**: Zookeeper采用Paxos或ZAB协议实现强一致性,当某台服务器宕机时,其他服务器可以通过选举选出新的领导者,确保服务的高可用性。 7. **Zookeeper的应用**: Zookeeper常用于命名服务、配置...

    zookeeper linux集群搭建流程

    ZooKeeper 的高可用性和高性能使其成为分布式系统的优选解决方案。 ZooKeeper Linux 集群搭建流程可以分为四步:下载和解压 ZooKeeper、创建目录和 myid 文件、修改 ZooKeeper 启动配置文件、启动 ZooKeeper 节点。...

    kafka-zookeeper集群配置

    **Kafka-Zookeeper集群配置详解** 在大数据处理和实时流计算领域,Apache Kafka与Zookeeper是两个非常重要的组件。Kafka作为一个高吞吐量、分布式的消息发布与订阅系统,广泛用于数据管道和实时数据流处理;而...

    Zookeeper集群无状态平滑升级、迁移1

    在实际运营中,由于业务需求变化或技术迭代,我们可能会遇到对Zookeeper集群进行升级或迁移的情况。本文将详细介绍这两种操作,以及如何实现无状态平滑升级和迁移,确保服务的连续性和数据完整性。 首先,了解为何...

    kafka+zookeeper高可用集群搭建shell使用脚本

    【标题】"kafka+zookeeper高可用集群搭建shell使用脚本"所涉及的知识点主要集中在构建高可用的Kafka和Zookeeper集群上,以及如何利用Shell脚本来自动化这个过程。Kafka是一个分布式流处理平台,而Zookeeper是Apache...

    ZooKeeper集群的安装、配置、高可用测试.docx

    ZooKeeper集群的安装、配置、高可用测试 ZooKeeper是Apache软件基金会的一个开源项目,提供了一个分布式应用程序的协调服务。它可以提供可靠的分布式配置管理、命名服务、分布式同步和提供组服务等功能。下面是...

    Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

    Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase) 一、Hadoop HA高可用集群概述 在大数据处理中,高可用集群是非常重要的,Hadoop HA高可用集群可以提供高可靠性和高可用性,确保数据处理不中断。该集群由...

    面试官:Zookeeper集群怎么搭建?.doc

    * 高可用性:Zookeeper集群可以提供高可用的服务,节点之间可以相互通信和协调。 * 高扩展性:Zookeeper集群可以水平扩展,添加或删除节点以适应系统需求。 * 高灵活性:Zookeeper集群可以在不同的环境中运行,包括...

    zookeeper集群+配置手册

    Zookeeper集群是一个分布式协调服务,常用于管理大型分布式系统中的命名空间、配置管理、领导者选举等任务。在本文中,我们将深入探讨如何搭建一个由三个节点组成的Zookeeper集群,并了解其配置过程。 首先,...

    zookeeper+redis高可用完整实例.zip

    2. **配置Redis集群**:每个Redis节点都需要配置指向Zookeeper集群的连接信息,以便它们能够报告状态并接收故障转移指令。 3. **设置心跳监测**:Zookeeper会定期检查Redis节点的状态,如果发现主节点失去响应,则...

Global site tag (gtag.js) - Google Analytics