【IT168 专稿】服务器群集功能最早是为 Microsoft Windows NT® Server 4.0 操作系统设计的,这一功能在 Microsoft Windows Server 2003 Enterprise Edition 和 Windows Server 2003 Datacenter Edition 操作系统中得到重大改进。用户可以借助服务器群集功能将多台服务器连接在一起,从而为在该群集中运行的数据和程序提供高可用性和易管理性。在Windows Server 2008 中,故障转移群集技术又一次做出了很大的改进,这些改进的目的在于使这项技术变得更加简单,同时更加安全,具有更强的可用性。改良的群集安装与迁移(Improved cluster setup and migration )使得群集的安装与管理变得更加容易;新的验证特性(New validation feature)更好的帮助用户检查他们现有的系统,存储以及网络配置是否完全适合群集的要求;简化过的配置界面(Simplified configuration interface)可以让用户的注意力更多的集中在管理他们的应用程序,而不是管理群集本身;而安全以及稳定性上的增强,最终提升了群集的可用性。
发展背景
计算机群集的出现和使用已经有十几年的历史。作为最早的群集技术设计师之一,G. Pfister 对群集的定义是,“一种并行或分布式的系统,由全面互连的计算机集合组成,可作为一个统一的计算资源使用”。
将数台服务器计算机组合成一个统一的群集,多台服务器将可以在用户或管理员不必了解细节的情况下分担计算负载。例如,如果服务器群集中的任何资源发生了故障,则不论发生故障的组件是硬件还是软件资源,作为一个整体的群集都可以使用群集中其它服务器上的资源来继续向用户提供服务。
Microsoft 市场调查显示,随着中小型商业机构的日常运作已越来越离不开数据库和电子邮件,因此它们对高可用系统的需求很大,而且这种需求日趋旺盛。易于安装和管理,被认为是这种规模的机构最关键的要求。Microsoft 的调查同时显示,那些对高性能和高可用性具有很高要求的大企业对基于 Windows 的服务器也日益感兴趣。
作为 Windows基础操作系统的集成化扩展而开发的服务器群集服务,正是源于此次市场调查。该服务同其设计目标保持了一致,通过它可将多台服务器和数据存储组件连接成一个易于管理的单元,即服务器群集。对于大型和小型企业中运行基于 Windows Server的应用程序的系统,服务器群集功能将可以赋予它们高可用性和易管理性。服务器群集功能还提供了开发可利用服务器群集的高可用功能并且具有群集意识的新应用程序所必需的应用程序接口和工具。
全新以及改进的故障转移群集特性
Windows Server 2008故障转移群集中改进的技术点几乎包括了群集运行的每个方面,下面我们就来一一列举:
1)安装和迁移
2)群集管理及操作
3)最大可用性
4)存储工作
5)网络通讯及网络安全性
安装和迁移的改进
与之前的群集相比,在Windows Server 2008中的服务器群集上,我们可以更加简捷的执行下面的安装及迁移任务:
1) 群集安装前验证配置:用户可以在执行群集安装操作前检查自己的系统,存储以及网络配置是否适合于群集的要求。这些测试包括群集活动的特定模拟, 具体拆分为下面三个范畴中:
a)节点测试: 这个测试分析的是所选服务器是否可以满足特定的要求,例如是否要求服务器必须运行在相同的操作系统版本或者软件升级版本上。
b)网络测试: 这个测试则是用来分析规划的群集网络是否满足特定的需求,例如是否需要至少两个独立的子网,一个用于内网(node-to-node ),一个混和网络(node-to-node 和 client-to-node) 。
c)存储测试:这个测试分析的是存储方面是否满足用户的要求,例如存储是否可以正确的支持所需的SCSI 指令,是否可以正确的处理模拟的群集操作。
2)设置群集: 群集配置向导可以帮助用户非常简便的配置好群集,同时这些设置还全部是脚本化的,以方便用户实现全自动的部署操作。
3) 迁移群集的配置信息:群集设置可以从某一个群集上完全捕获,然后应用到另一个群集上。用户可以使用迁移兼容性工具在多种场景下完成迁移。最常见的一种场景就是从Microsoft Windows® 2000 或者Microsoft Windows Server 2003群集上的升级操作。另一种场景则是当你需要复制现有的一个工作中的群集,然后用它作为模板再创建一个相同的或者类似的群集。
群集管理及操作的改进
像安装的改进一样,在基本的维护操作方面,Windows Server 2008中的故障转移群集技术也有了很大的改进:
1)快速添加群集资源: 新的管理界面更加的简捷也更加的直观,用户感觉操作简单的就好像共享一个文件夹一样,这样最大限度的将用户的注意力集中在应用程序本身。
2)使用命令行或者 WMI 来操作群集: 在Windows Server 2008中,用户可以使用命令行以及WMI工具完成比之前版本更多的任务。
3) 群集排错: 相比读取枯燥无味的群集日志,在Windows Server 2008的群集中,用户可以使用Windows的事件跟踪器来更加简便的汇集,管理,报告群集所发生事件的信息。
4)使用卷影副本服务来获取备份: 与卷影副本服务的完全整合使得备份,还原群集的配置变得更加的方便。
5) 控制查看共享文件夹的途径:用户可以控制或是限定共享文件夹的范围,这样就可以方便的知道那些共享文件夹在群集中,哪些文件夹可用。
帮助实现最大可用性的群集基础架构的增强
在Windows Server 2008的故障转移群集技术中,基础架构的增强可以帮助用户实现群集服务的最大可用性。在Windows Server 2008中用户可以进行配置,以非单一故障点的仲裁资源模块来设定群集。
每个群集都有一种特定资源,即所谓的仲裁资源。仲裁资源可能是提供一种旨在实现成员身份和群集状态决定的仲裁机制的资源,也可以是提供物理性存储空间以存储配置信息的资源。仲裁日志是一种用于服务器群集化功能的配置数据库。它保存了多种配置信息,比如群集的成员服务器都有哪些、群集中安装了哪些资源以及这些资源处于何种状态(例如,是联机还是脱机)。默认情况下,该仲裁日志位于 \MSCS\quolog.log。仲裁在群集中非常重要,其主要原因有两个。
第一是保持一致性。
由于群集的基本设计理念就是多台物理服务器充当一个虚拟服务器的作用,因此每个物理服务器在群集配置方式上是否具有一致的状态,将显得非常关键。对所有同群集有关的配置信息而言,仲裁充当了最具权威性的仓库。如果群集服务无法读取仲裁日志,它将不会启动,因为它无法保证群集是否处于一致性的状态,而这又是群集最主要的要求之一。
第二是斡旋作用。
仲裁提供的斡旋作用可以避免“各自为政”的情况。当两个或多个群集节点之间的所有网络通讯链路都失效时,会发生“各自为政”的局面。此时,群集可能分成两个或更多个在彼此之间无法交流的“派别”。使用仲裁后,可以保证任何群集资源只会在某一个节点上进入联机状态。这是通过仅允许“拥有”仲裁的一派继续存在,同时将其它派别逐出群集来实现的。
在Windows Server 2008的故障转移群集中,用户可以使用之前存在的两种模式,仲裁资源模式及主要节点集模式—或者是两者的混和模式。例如在一个双节点群集下,你可以指定仲裁资源是否变为无效,只要两个节点上群集配置数据库持续有效,那么群集就会一直运行。同时群集架构本身的改进还帮助用户在执行故障转移操作时更加的稳定,有效。例如软件的架构可将无法正确执行动作的动态链接库 (DLLs) 隔离,从而将对群集的影响降至最小。另外一个例子是,群集可使用增强的方法以确保群集组数据库复本间的一致性。
存储方面的增强
在Windows Server 2008的故障转移群集技术中,用户可以在存储方面得到更好的性能:
用户可以在资源在线的情况下修改资源的依赖关系,这意味着用户可以在不中断应用程序访问的前提下利用额外的可用磁盘。而当故障转移群集与用户的SAN或者DAS通讯时,将使用最小分裂指令(avoiding SCSI bus resets)。磁盘绝不会处于一个未保护状态,这样就降低了卷故障的风险。故障转移群集技术同时还支持改进后的磁盘发现和修复方法。故障转移群集技术支持的存储连接包括串行连接 SCSI (SAS)、iSCSI 和光纤通道。同时新的群集还支持GPT磁盘,利用这种磁盘可以增加磁盘的大小和健壮性,使用GPT磁盘,可以支持大于2TB的磁盘分区,并且内建了磁盘信息存储冗余,这写特性在MBR磁盘中是无法企及的,在Windows Server 2008的故障转移群集中,用户可以自由的选择任一种磁盘。最后群集的“维护模式”也得到了增强,用户可以更加无缝的,更加便捷的运行工具完成检查,修复,备份,还原等操作。
网络及安全性的增强
安全性问题一直是一个不可忽视的方面,在Windows Server 2008的故障转移技术中首先就在节点对节点以及节点对用户的通讯中全面的支持了IPv6技术,同时新的群集技术中不再支持之前的NetBIOS解析,改进后的SMB传输意味着用户不用再使用WINS以及NetBIOS名称解析广播的方式完成解析。安全方面的改进同样增加了群集的可靠性,例如调整网络名与关联IP地址的依赖关系,从而确定在哪个IP地址可用时,网络名有效;而“心跳线”的通讯也改为使用TCP协议而不再是UDP。群集技术的安全改进还增强了授权和加密。此外,用户还可以使用审核机制去捕获谁在什么时间访问了群集的信息。
同基于 Windows 的产品一样,服务器群集的未来发展方向也主要立足于以下主要环节:首先就是更加方便地安装和检查群集配置,包括对新型硬件的支持,并且继续支持地理位置分散的群集,实现能冗余灾难的配置。其次就是继续对基于群集的应用程序进行更简单、更有效的管理,包括继续关注脚本化、远程和快捷管理。同时将群集的可用性和可扩展性优点扩展到更多的系统服务身上。将基础设施和所有基于 Windows 的群集技术的接口进行更为紧密的集成,以增强性能、灵活性以及可管理性。最后就是继续支持第三方 ISV 和公司的开发人员,使他们可以简化群集感知应用程序的开发、安装和支持,从而实现更高的可用性和更高的可扩展性。相信有了以上的几点,基于Windows系统的群集服务必将越来越多的走入企业环境。