图 1 所示为一个包含两个节点的群集,显示了称为“无共享”结构的群集的基本实现方案。这里需要注意一个基本概念,即两台服务器都连接在同一个物理磁盘子系统上。但是在任何特定时间内,只有其中一台服务器能够“拥有”和控制磁盘存储。由两台服务器(节点)所共享的磁盘子系统部分称为共享存储。
图 1:无共享群集,服务器 A 处于主动状态
服务器 A 当前处于主动状态,也就是说它享有对共享存储的完全控制权。服务器 B 正在运行但处于被动状态,并且准备在另一个节点出现故障时接管共享存储。Microsoft SQL Server™ 的实例在主动节点上运行,并且(作为一项规定)始终在拥有共享存储的群集节点上运行。本例中,磁盘包含了支持 SQL Server 数据库所需的所有必要的物理文件,必须具备这些数据库,BizTalk Server 才能正常运行。该实现方案称为主动/被动 SQL Server 群集。
SQL Server 的实例和包含数据库的共享存储称为“虚拟”资源,因为它们并不永久属于任何特定服务器。这意味着其他计算机可以访问 SQL Server 数据库,而不必知道这两台服务器哪一台处于主动状态。群集服务将处理所有必要的进程以使此过程完全透明。要连接到数据库服务器,用户和应用程序需要使用一个“虚拟服务器”名称,该名称必须是唯一的并且要与群集中两个节点的服务器名称区分开来。
如果服务器 A 出现硬件故障,所有虚拟资源(即 SQL Server 实例和磁盘存储)将自动作为一个组转移到服务器 B 并继续运行。此过程不会导致数据丢失。图 2 所示为新配置,称为主动/被动。要在正常运行期间充分利用这两台服务器,一个经济而有效的方法是在每台服务器上运行不同的虚拟资源。在这种配置下,每台服务器都作为另一台服务器的故障转移节点。
图 2:主动/被动群集,服务器 B 处于主动状态
大多数经 Microsoft 认证其硬件与 Windows 2000 Advanced Server 操作系统兼容的主要硬件提供商都支持群集服务。如今,许多业务都实现了功能强大的企业级服务器的群集,使用 Windows 2000 Advanced Server 的服务器可以包含多达 8 个处理器,使用 Windows 2000 Datacenter Server 的服务器可以包含多达 32 个处理器。