仲裁盘的另一种用法:高可用集群故障转移

仲裁盘的另一种用法:高可用集群故障转移,第1张

转自:集群故障转移的仲裁

Windows服务器故障转移集群(Windows Server Failover Cluster,简称WSFC)使用仲裁投票(Quorum Voting)决定集群的健康状况,或使故障自动转移,或使集群离线。 当集群中的结点发生故障时,会由其他结点接手继续提供服务 ,不过, 当结点之间通信出现问题,或大多数结点发生故障时,集群就会停止服务,可是集群可以容忍多少个结点发生故障呢? 这要由仲裁配置(Quorum Configuration)决定,仲裁配置采用少数服从多数(Majority)原则,只要集群中健康运行的结点数量达到仲裁规定的数量(多数结点投赞成票),集群就会继续提供服务,否则集群就停止提供服务。在停止提供服务期间,正常结点持续监控故障结点是否恢复正常,一旦正常结点的数量恢复到仲裁规定的数量,集群就恢复正常,继续提供服务。仲裁投票默认是启用的(Cluster Manged Voting:Enable)。

一,仲裁模式

仲裁模式是在WSFC 集群级别配置的,规定仲裁投票的方法,默认情况下,故障转移集群管理器会基于集群结点的数量,自动推荐一个仲裁模式。仲裁配置影响集群的可用性,在集群中,重组的集群结点必须在线,否则集群将由于仲裁不足而必须停止服务。

1,术语解释

仲裁(Quorum):法定数量,预先规定具有投票权的结点或见证(Witness)的数量;

仲裁投票(Quorum Voting)指法定数量的结点和见证进行投票,如果多数投赞成票,那么判断集群处于健康状态;

投票节点(Voting Node):在集群中,拥有投票权的结点称作投票结点,如果投票结点投赞成票,代表该结点认为集群是健康的;但是,单个结点不能决定集群整体的健康状态。

投票见证(Voting Witness):除了投票结点能够进行投票之外,共享的 File 和 Disk 也能投票,称作投票见证, 共享的File 投票见证,称作文件共享见证(File Share Witness);共享的Disk 投票见证,称作硬盘见证(Disk Witness) ;

仲裁结点集合(Quorum Node Set):拥有投票的结点和Witness统称仲裁结点集合;由仲裁结点集合的投票结果决定集群整体的健康状态。

2,仲裁模式

仲裁模式多数原则 是指所有投票结点进行投票,如果赞成票占比在50%以上,那么WSFC认为集群处于健康状态,执行故障转移,继续提供服务,否则,WSFC认为集群出现严重故障,WSFC使集群离线,停止提供服务。根据仲裁结点集合的组成类型,将仲裁模式分为以下四种类型:

结点多数 (Node Majority):在集群中,投票结点都是集群的结点服务器,如果一半以上的投票结点(Voting Node)投赞成票,那么WSFC判定集群是健康的;

结点和文件共享多数 (Node and File Share Majority):和Node Majority模式相似,除了将远程文件共享配置为一个投票见证(Voting Witness)之外,该共享文件称作仲裁文件,或见证文件。使用仲裁文件,远程文件拥有投票权,如果其他结点能够连接到该共享文件,那么认为该文件投一个赞成票。如果投票结点和文件共享投的赞成票占一半以上,那么WSFC判定集群是健康的。作为一个最佳实践,文件共享见证(File Share Witness)不要存储在集群中的任何一个结点服务器上,并且设置任何一个结点服务器都有权限访问。

结点和硬盘多数 (Node and Disk Majority):和Node Majority模式相似,除了将共享硬盘配置为一个投票见证(Voting Witness)之外,该共享硬盘称作仲裁硬盘,或见证硬盘。仲裁硬盘需要共享存储,集群中各个结点都需要挂载同一个共享硬盘。

只硬盘(Disk Only) :没有多数,仅仅把一个共享的硬盘作为唯一见证,集群中的任何一个结点能够访问该共享硬盘,这意味着,一旦仲裁硬盘脱机,集群就会停止提供服务。

常见的仲裁模式是结点多数(Node Majority) 和 结点和文件共享多数(Node and File Share Majority) ,如果集群结点数量是 奇数 ,那么使用结点多数仲裁模式;如果集群结点数量是 偶数 ,那么使用结点和文件共享多数仲裁模式,该模式需要配置一个共享文件夹,集群中的各个结点都有权限访问该共享文件夹,并且该共享文件夹不能创建是集群的结点上。

打开故障转移管理器(Failover Cluster Manager),右击集群结点,在上下文菜单中点击“More Actions”,在扩展菜单中选择“Configure Cluster Quorum Settings”,打开仲裁配置向导(Wizard),为该集群配置仲裁。

在任何时刻,从每一个的结点的角度来看,其他结点可能处于离线状态,或正在进行故障转移,或由于网络连接失败而处于不响应状态,仲裁投票的关键在于确定所有投票结点的真实状态。除了“Disk Only”仲裁模式之外,其他仲裁模式都依赖于投票结点之间周期性的心跳信号通信,一旦某个结点因为网络通信故障,系统宕机,硬件损坏,机房停电等异常而无法回应心跳信号,那么剩余的结点就认为该结点出现异常,把该结点从当前集群排除。WSFC统计所有投票结点的仲裁结果,决定集群的健康状态。

如果集群的结点位于不同的子网(Subnet)中,当一个结点在子网1中被认为是故障结点时,实际上,该结点可能是由于网络通信故障而不能被子网1的结点感知,但是该结点在子网2中是在线的,健康的 。如果投票结点在不同的子网中能够建立多个投票仲裁,那么将产生脑裂场景。在该场景中,位于不同仲裁的结点有不同的表现,使仲裁产生冲突,WSFC不能正确的执行故障转移,可能产生数据不同步。脑裂场景只可能在系统管理员手动执行强制仲裁(Forced  Quorum) *** 作时发生。

WSFC在集群的结点之间进行健康检测和仲裁投票,每一个结点通过周期性地发送心跳信号,检测其他其他结点的健康状态,并和其他结点共享健康数据,无法响应心跳信号的结点被认为处于异常状态,集群的所有健康结点都会很快知道该结点出现故障。

仲裁结点集合是投票结点和见证结点(Witness)结合,仲裁结果由多数(Majority)结点决定,集群整体的健康状态是由周期性的仲裁投票的结果决定的,WSFC根据仲裁投票的结果,执行自动故障转移或者使集群离线:如果仲裁结点集合(Quorum Node Set)的投票结果表明大多数结点是健康的,那么集群将进行故障转移,继续提供服务;如果投票结果是少数结点,那么集群将处于离线状态。

先打开iscsi存储服务器,创建2个磁盘,一个1G左右的仲裁盘,另一个1000G以上的集群共享磁盘,也可以只创建一个磁盘,反正下面会通过iscsi-target进行详细的虚拟盘创建。

通过iscsi-target程序,进行虚拟盘符的创建,也是创建2个磁盘,一个用于做冲裁盘1G左右,一个用于集群共享盘1000G以上。

注意:建议将磁盘设置为“集群共享卷”,如果你不设置集群共享卷的话,那么一个虚拟机就 要占用一个存储卷,还要占用一个LUN,而集群共享卷的话,就可以多个虚拟机同用一个LUN,且可以多个虚拟机公用一个存储卷。 另外还要创建一个Q仲裁盘2G左右,如果你要搭建SQL server群集的话还地建一个2G左右的DTC盘!默认windows2008的故障转移是没有“群集共享卷”,你必要在群集“xxx”上右键启用“群集共享卷”,然后再拉一个磁盘进去。

故障转移搭建的步骤:

先在存储上创建卷和LUN-----在节点上发现磁盘------在群集管理器上设置磁盘工作模式(普通还是磁盘共享卷)----在节点上创建虚拟机活着相应的服务。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11819830.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存