基于 Windows 平台的故障转移群集在管制综合信息系统中的应用
王剑鸣
民航河南空管分局 河南省中牟县 451100
0. 引言
管制综合信息系统为空中交通管制提供航班信息处理、飞行计划集中处理、塔台运行管理、自动化报文前置处理、航行数据协同(决策)管理的功能。在日常的运行工作中需要保持管制综合信息系统的高效可用,基于 Windows 平台的故障转移群集技术很好的解决了这个问题,保证了面对突发故障时设备的可用性,显著减少了计划外停机时间,极大提高了航空管制等关键业务的安全性和可靠性。
1.相关概念
基于 Windows 平台的故障转移群集(WSFC)技术是一种高可用性解决方案,旨在确保关键应用程序和服务在硬件故障、软件故障或其他意外中断情况下仍能持续运行。其核心原理是通过将多个服务器(节点)组合成一个群集,并利用共享存储和网络资源,实现自动故障检测和故障转移。
WSFC 架构的核心组件包括:(1)节点:群集中运行 Windows Server操作系统的每个独立服务器,可以是物理服务器或虚拟机;(2)共享存储:所有节点都可以访问的存储设备(如SAN、iSCSI 或 SMB 3.0),用于存储群集配置、应用程序数据(如数据库文件)和仲裁信息;(3)群集网络:用于节点之间的通信(心跳网络)和客户端访问(客户端网络),通常配置多个网络以提高可靠性;(4)群集服务:运行在每个节点上的软件组件,负责管理群集操作。监控节点和资源的健康状况,协调故障转移。(5)资源组:将应用程序、服务和相关资源(如 IP 地址、网络名称、磁盘)组合在一起。资源组是故障转移的基本单位。
2.管制综合信息系统的基本架构
河南空管分局管制综合信息系统使用 DellM1000E 刀框服务器,搭配VMware vSphere 企业级虚拟化平台,支持高可用性(HA)、动态迁移(vMotion)、分布式资源调度(DRS)等高级功能。
DellM1000E 刀框服务器使用多块 PowerEdge 服务板卡分别安装ESXi-6.0,并创建和运行了多个虚拟服务器,各虚拟服务器操作系统均为Windows Server 2012。虽然通过 vSphere Client 可以直接管理单台 ESXi 服务器,但是管理有限,也不能进行 vMotion 等操作,因此,我们通过安装vCenter 套件,使用 vSphere Client 连接 vCenter Server 服务器来管理 ESXi服务器以及其中安装的 vm 虚拟机。
3.故障转移群集的配置过程
3.1 准备工作
首先我们在 vSphere Client 中创建两台相同配置的虚拟服务器,操作系统为 Microsoft Windows Server2012(64 位),保证每台虚拟服务器具备至少2 个 vCPU 以及4G 内存。除此之外,还需要为每台虚拟机添加至少两个虚拟网卡,一个网卡连接公共网络用于客户端访问,另一个网卡连接专用网络用于节点间的心跳检测。
3.2 网络配置
登录服务器节点,打开服务器管理器,点击本地服务器,选择以太网选项,将适配器分别重命名为”Public”和”Private”以便区分。配置 ”Public” 网 络 , 设 置 节 点 1 ( 192.168.1.101/24 ) 和 节 点 2(192.168.1.102/24)为同一网段,并分别配置其网关(192.168.1.1)和 DNS;配置”Private”网络作为心跳网络,节点 1(10.0.0.1/24)和节点 2(10.0.0.2/24),无需配置网关和 DNS。禁用 NetBIOS 仅保留心跳网络,通过修改网络适配器属性,禁用“Microsoft 网络的文件和打印机共享”功能,并在 TCP/IP 设置中勾选“禁用 TCP/IP 上的 NetBIOS”,以此来减少网络攻击风险,提升网络的安全性。
3.3 共享存储配置
配置 iSCSI 共享存储,在两台服务器上启用 iSCSI Initiator 服务,在存储服务器上创建两个虚拟磁盘作为仲裁磁盘和数据磁盘,打开节点服务器的服务器管理器工具中的 iSCSI 发起程序,输入存储服务器的 IP 地址连接共享磁盘,将共享磁盘初始化并创建NTFS 分区。
3.4 安装故障转移群集功能
分别在两台服务器上安装故障转移群集功能。打开服务器管理器,在左侧面板”管理”中点击”添加角色和功能”,选择"基于角色或基于功能的安装";下一步中选择当前服务器,再在下一步“角色和功能向导”中,选择“功能”选项卡,在列表中找到并选中“故障转移群集”功能,勾选"故障转移群集",点击"添加功能",然后按照提示点击下一步完成安装过程。
验证群集配置。在配置群集之前,我们先进行验证测试,首先在节点1 上,打开"故障转移群集管理器",右键点击"故障转移群集管理器",选择"验证配置...",输入两个节点名称(Node1 和 Node2)并"添加",然后选择"运行所有测试",查看测试报告确保所有测试通过。期间可能出现网络和存储告警,检查心跳网络是否用于客户端通信或节点是否均正常连接到共享磁盘。
3.5 创建故障转移群集
分别在两个节点上进行配置,打开"故障转移群集管理器",右键点击"故障转移群集管理器",选择"创建群集",输入两个节点名称(Node1 和Node2)进行添加,在"用于管理群集的访问点"页面设置群集名称及 IP 地址(192.168.1.100),并将适合的存储添加到群集,创建完成后查看摘要无告警信息。
配置群集仲裁和群集网络。群集仲裁需要根据环境选择适当的仲裁模式,有以下3 种模式:1. 节点多数(推荐用于奇数节点);2.节点和磁盘多数(偶数节点 + 共享磁盘);3.节点和文件共享多数(无共享磁盘时)。我们这里选择"节点和磁盘多数"并选择之前创建好的仲裁磁盘。配置群集网络的过程中,我们将”Public”网络命名为公共网络,”Private”为心跳网络,设置公共网络的优先级高于心跳网络且心跳网络不允许客户端连接。
3.6 配置群集资源
添加存储到群集。在"故障转移群集管理器"中,选择可用的共享磁盘进行添加,并在新添加的磁盘属性中修改磁盘名称,确认磁盘状态显示为"可用存储",然后对于需要依赖磁盘的资源,为其配置磁盘依赖关系。
创建高可用性角色。首先创建一个通用服务角色,为其添加ip 地址、网络名称、存储等必要的依赖资源,然后在角色属性中进行配置:1.首选所有者(指定首选运行此角色的节点);2.可能的所有者(指定可以运行此角色的所有节点);3.故障转移阈值和周期。
3.7 测试故障转移
在所有配置完成之后,我们从手动和自动两方面分别去验证故障转移的有效性。一方面,我们在"故障转移群集管理器"中打开配置好的故障转移群集,右键点击当前活动节点上的角色,选择移动到另一节点,查看当前角色能够成功转移为另一个节点,并在客户端上去尝试访问群集服务,以此来验证数据完整性和服务可用性。另一方面,我们模拟其中一个节点故障,在 vSphere Client 中直接强制关闭当前的活动节点,观察故障转移能够自动顺利的完成,然后重新启动关闭的节点,其能够自动加入群集。
4.总结
通过以上步骤,我们成功在两台 Windows Server 2012 虚拟服务器上配置了故障转移群集,并验证了其有效性。故障转移群集提供了高可用性解决方案,确保当一台服务器发生故障时,关键服务和应用程序可以自动转移到另一台服务器上继续运行,从而最大限度地减少停机时间。