1,仲裁配置的原理

  • 节点多数(推荐用于含有奇数个节点的群集)

    可以承受的故障节点数为节点数的一半(四舍五入)减去一。例如,七个节点的群集可以承受三个节点出现故障。

  • 节点和磁盘多数(推荐用于含有偶数个节点的群集)

    在见证磁盘保持联机时可以承受的故障节点数为节点数的一半(四舍五入)。例如,在见证磁盘联机时,六个节点的群集可以承受有三个节点出现故障。

    在见证磁盘脱机或出现故障时可以承受的故障节点数为节点数的一半(四舍五入)减去一。例如,见证磁盘有故障时,六个节点的群集可以承受两 (3-1=2) 个节点故障。

  • 节点和文件共享多数(适合有特殊配置的群集)

    与“节点和磁盘多数”的工作方式类似,但是此群集使用见证文件共享,而不是见证磁盘。

    请注意,如果使用“节点和文件共享多数”,则至少必须有一个可用的群集节点包含群集配置的最新副本,然后才能启动群集。否则,您必须通过特定节点来强制启动群集。有关详细信息,请参阅启动或停止群集节点上的群集服务中的“其他注意事项”。

  • 无多数:仅磁盘(不推荐)

    可以承受除一个节点外的所有节点出现故障(如果磁盘联机)但是,建议不使用此配置,因为磁盘可能成为单一故障点。

群集是否停止工作,取决于当前群集中活着的节点数是否占群集节点总数的大多数。群集节点之间每1.2秒发送UDP数据包的心跳,如果某个节点连续5次没有响应心跳数据包,群集中的其他节点认为这个节点发生故障并且发送regroup请求来更新群集中活着的节点列表。发生故障的节点上的资源会被切换到其他节点。

2,仲裁模式判断依据

(1)      
在使用“节点多数”配置的群集中,在计算多数时仅统计节点,例如,群集中含有3个节点时,只要有两个节点及以上节点在通信,群集就正常工作。反之群集则停止工作。

(2)      
在使用“节点和磁盘多数”配置的群集中,在计算多数时统计节点和见证磁盘。例如群集中含有4个节点时,

①,  4个节点中的两个节点以及见证磁盘在通信,群集运行

②,  4个节点中3个在通信,群集运行

③,  4个节点中只有一个节点以及见证磁盘在通信,群集停止。

(3)      
在使用“节点和文件共享多数”配置的群集中,在计算多数时统计节点和见证文件共享。这与前面插图中所示的“节点和磁盘多数”仲裁配置类似,只不过见证是群集中所有节点可以访问的文件共享,而不是群集存储中的磁盘。

①,  一个节点以及文件共享在通信,群集运行

②,所有节点都在通信,但没有与文件共享通信,群集停止

(4)      
在使用“仅磁盘”配置的群集中,节点数不影响如何实现仲裁。磁盘就是仲裁。但是,如果失去与磁盘的通信,群集将变得不可用。

3,分析总结:

对于奇数个节点:

(1)采用” 节点多数” 时所能承受的故障节点数为:节点数的一半(四舍五入)减去一,例如:7个节点,可以承受3个节点故障;

(2)如果采用” 节点和磁盘多数”,所能承受的故障节点数为节点数的一半7/2=3,尽管为7个节点1个仲裁盘,总数为8,由于8的多数是5,故承受的故障节点数还是3。换句话说,对于奇数个节点采用” 节点和磁盘多数”时,没有因为多添加了一块仲裁盘而带来什么效益。并且:此种情况用6个节点就可达成相同的目标。(6个节点+1个仲裁盘就可以承受3个节点故障)。

同理:对于偶数个节点采用” 节点多数”存在相似的问题。

对于用户仲裁模式选错的情况,只不过没能充分发错新增节点或仲裁盘的效能而已,对整个系统没有任何影响。Windows 2012与 2008类似,原理不变。

Hyper-v群集的仲裁模式配置依据的更多相关文章

  1. Hyper V NAT 网络设置 固定IP / DHCP

    Hyper V 默认的Default Switch同时支持了NAT网络以及DHCP,虚拟机能够访问外网. 但使用过程中发现这个IP网段经常变化,而且Hyper V没有提供管理其NAT网络与DHCP的图 ...

  2. LVS负载均衡群集部署——NAT模式

    LVS负载均衡群集部署--NAT模式 1.群集应用概述 2.NAT模式LVS负载均衡群集部署 1.群集应用概述: 存在的问题: 互联网应用中,随着站点对硬件性能.响应速度.服务稳定性.数据可靠性等要求 ...

  3. windows server 2008 r2 企业版 hyper v做虚拟化的相关问题处理

    windows server 2008 r2 企业版 hyper v做虚拟化的相关问题处理 今天在dell r710 上用windows server 2008 r2企业版hyper v 做虚拟化,添 ...

  4. 基于iSCSI的SQL Server 2012群集测试(二)--SQL群集安装后初始化配置测试

    4.群集安装后初始化配置测试 4.1 禁用full-text 服务和Browser服务 Full-text服务:公司目前暂不使用,需在两个节点上分别禁用 Browser服务:为保证安全,建议将Brow ...

  5. Puppet nginx+passenger模式配置

    Puppet nginx+passenger模式配置 一.简述:Puppet 运行在单台服务器上默认启动的是一个puppetmaster进程,当遇到client高并发的请求时,基于ruby的WEBRi ...

  6. Apache 工作模式配置优化

    Apahce 工作模式配置 1.查看当前MPM工作模式 /usr/local/apache2/bin/apachectl -V Server version: Apache/2.4.27 (Unix) ...

  7. Zookeeper 部署Zookeeper仲裁模式集群

    部署Zookeeper仲裁模式集群 本例在一台服务器上部署3个zk服务:z1.z2.z3. 1.下载Zookeeper https://zookeeper.apache.org/ 2.解压缩 .tar ...

  8. OGG19.1 oracle12c到oracle12c经典模式配置实施

    OGG19.1 oracle12c到oracle12c经典和集成模式配置实施 目的说明 本文提供Oracle GoldenGate在Oracle db到Oracle db的数据复制安装配置指导,适用于 ...

  9. LVS负载均衡群集部署——DR模式

    LVS负载均衡群集部署--DR模式 1.LVS-DR概述 2.部署实验 1.LVS-DR概述: LVS-DR(Linux Virtual Server Director Server)工作模式,是生产 ...

随机推荐

  1. unity3d-编辑器结构

    1.Porject视图 Project视图主要存放游戏中用到的所有资源文件,常见的资源包括: 游戏脚本.预设.材质.动画.自定义字体.纹理.物理材质和GUI皮肤.这些资源需要 赋予Hierarchy视 ...

  2. c++四种强制类型转化

    c++ 数据类型转换: static_cast dynamic_cast reinterpret_cast const_cast C++ 类型转换(C风格的强制转换): (1)将浮点型数据赋值给整型变 ...

  3. 为什么size_t重要?

    参见 http://en.cppreference.com/w/cpp/types/size_t size_t其实与uintptr_t一个道理.就是一个东西.指针其实就是寻址,与地址总线位数一致,编译 ...

  4. 2:2 strus2的配置文件

    strus2 的xml配置文件主要负责Action的管理,常放在WEB-INF/classes目录下,被自动加载 在strus-core jar包下找dtd文件,里面有xml的头信息.也有contan ...

  5. 5Lambda表达式

    C++11中的Lambda表达式用于定义并创建匿名的函数对象,以简化编程工作.首先看一下Lambda表达式的基本构成: [函数对象参数](操作符重载函数参数)mutable或exception -&g ...

  6. 24最小生成树之Prim算法

    最小生成树的Prim算法 思想:采用子树延伸法 将顶点分成两类: 生长点——已经在生成树上的顶点 非生长点——未长到生成树上的顶点 使用待选边表: 每个非生长点在待选边表中有一条待选边,一端连着非生长 ...

  7. 计算概论(A)/基础编程练习1(8题)/4:求一元二次方程的根

    #include<stdio.h> #include<math.h> int main() { // 待解方程数目 int n; scanf("%d", & ...

  8. Python3 matplotlib的绘图函数subplot()简介

    Python3 matplotlib的绘图函数subplot()简介 一.简介 matplotlib下, 一个 Figure 对象可以包含多个子图(Axes), 可以使用 subplot() 快速绘制 ...

  9. 04:sqlalchemy操作数据库

    目录: 1.1 ORM介绍(作用:不用原生SQL语句对数据库操作) 1.2 安装sqlalchemy并创建表 1.3 使用sqlalchemy对表基本操作 1.4 一对多外键关联 1.5 sqlalc ...

  10. "1130-host ... is not allowed to connect to this MySql server"登录失败

    原因: 该用户没有远程连接权限. 解决:授权! mysql>GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' ...