文档详情

存储双活仲裁机制.pdf

发布:2020-03-22约3.09千字共5页下载文档
文本预览下载声明
1.1.1.1 仲裁防脑裂 当提供双活LUN 的两套阵列之间的链路故障时,阵列已经无法实时镜像同 步,此时只能由其中一套阵列继续提供服务。为了保证数据一致性,HyperMetro 通过仲裁机制决定由哪套存储继续提供服务。 HyperMetro 支持按双活Pair 或双活一致性组为单位进行仲裁。当多个双活 Pair提供的业务相互依赖时,用户需要把这些双活Pair配置为一个双活一致性组。 仲裁完成后,一个双活一致性组只会在其中一套存储阵列继续提供服务。例如, Oracle数据库的数据文件、日志文件可能分别存放在不同的LUN 上,访问Oracle 数据库的应用系统存放在另一些LUN 上,相互之间存在依赖关系。配置双活时, 建议数据LUN、日志LUN 和应用LUN 分别配置双活pair,并且加入同一个一 致性组。 HyperMetro 提供了两种仲裁模式:静态优先级模式和仲裁服务器模式。 配置双活Pair 前,需要配置双活域,双活域为逻辑概念,包括需要创建双 活关系的两套存储阵列和仲裁服务器。每个双活Pair 创建时均要选择双活域, 每个双活域只能同时应用一种仲裁模式。 仲裁服务器模式比静态优级模式具备更高的可靠性,可保证在各种单点故障 场景下,业务连续运行。因此,华为双活方案推荐采用仲裁服务器模式。 静态优先级模式 静态优先级模式主要应用在无第三方仲裁服务器的场景。用户可以按双活 Pair 或一致性组为单位,设置其中一端阵列为优先站点,另一端为非优先站点。 如图3-7所示,不需要额外部署仲裁服务器。 该模式下,阵列间心跳中断时,优先站点仲裁胜利。 1. 当发生阵列间链路故障,或者非优先站点故障时,优先站点上的LUN 继续提供服务,非优先站点的LUN 停止提供服务。 2. 当优先站点阵列故障时,非优先站点不能自动接管双活业务,双活业务 停止,需要人工强制启动非优先站点服务 有一种情况除外,当优先站点阵列主动下电维护时,非优先站点阵列立即接管所有双活业务, 业务不会中断。 该模式的缺点是:两阵列之间的心跳丢失时,可能是站点间链路丢失或其中 一个阵列故障,系统无法区分这两种情况。表3-2 为静态优先级模式下的仲裁策 略。 编号 示意图 仲裁结果 1 故障类型:链路故障 仲裁结果:H1继续运行业务,H2 停止业务 2 故障类型:非优先故障 仲裁结果:H1继续运行业务,H2 失效 3 故障类型:优先故障 仲裁结果:H1失效;H2 停止业务,需要人工启动 仲裁服务器模式 使用独立的物理服务器或者虚拟机作为仲裁设备,仲裁服务器建议部署在第 三方站点。这样可以避免单数据中心整体发生灾难时,仲裁设备也同时故障。 仲裁服务器模式下,当存储阵列间心跳中断时,两端阵列向仲裁服务器发起 仲裁请求,由仲裁服务器综合判断哪端获胜。仲裁获胜的一方继续提供服务,另 一方停止服务。 仲裁服务器模式下如果有优先获得仲裁的要求,也可以配置站点优先级。优 先阵列端具有仲裁获胜的优先权,心跳中断但其它正常时,优先阵列将获得仲裁 胜利。 仲裁过程如图3-9所示: 图1-1 仲裁机制 1. 数据中心之间的链路断开时,跨站点阵列集群分裂为两个小集群。 2. 小集群分别抢占仲裁,优先阵列将优先抢占仲裁,抢占成功的小集群“获 胜”,将继续对外提供服务,为应用提供存储访问空间;抢占失败的小 集群则停止对外服务。 3. 中间链路恢复时,两个子集群检测到中间链路恢复正常,经过握手通信 将两个小集群自动组成一个跨站点集群,双活关系恢复,以Active-Active 模式提供服务。 下表列出了仲裁服务器模式下,各种故障场景下双活业务表现。 编 示意图 仲裁结果 号 1 故障类型:仲裁失效 仲裁结果:H1、H2 继续运行业务 2
显示全部
相似文档