【IT168 技术文档】服务器群集允许您连接许多物理服务器(或节点),用作彼此的故障转移合作伙伴。群集所提供的冗余性为您的关键操作带来了更多的正常运行时间。在使用SQL Server的13年期间,我实现了许多群集,每个群集都有其自己的一系列问题。这些经历使我积累了许多技巧,它们会帮助您轻松成功地实现群集。
服务器群集利用了Windows Server系列的Enterprise Edition中的内置群集功能。实际上,对于群集,使用Windows Server 2003要比Windows 2000 Advanced Server 好得多。要想使您从群集中获得的好处最大化,您需要合适的硬件,而这涉及到一些费用。只是利用共享磁盘将几个服务器拼凑在一起是不够的,您不能依赖这样的事实,即单独的硬件组件可能存在于 Windows® 目录(以前称为硬件兼容性列表)中。系统作为整体必须存在于Windows目录中。但不要担心,还有其他一些经过认可的、低成本群集解决方案可用。图 1 显示了一种典型的群集配置。

Figure 1 A typical cluster
当然,群集比硬件需要更多的条件 - 您还需要选择合适版本的SQL Server 2005。Enterprise Edition 支持群集功能以及其他一些有用功能,如能够利用更多CPU、分布式和可更新已分区视图、内置日志传送、自动使用索引视图。如果已经拥有Enterprise Edition 许可证,则应考虑群集:您是否有构成传统群集所必需的两到八台服务器(我们马上会讨论单节点群集)。如果拥有SQL Server 2005 Standard Edition,则可以安装两节点群集。
Windows Server 2003 Enterprise Edition和Datacenter Edition 附带内置群集功能。安装群集只需运行群集管理器。您可以同时添加所有节点,也可以每次添加一个节点。类似地,在安装 SQL Server 时,您可以选择安装在单独的非群集服务器上,也可以选择将虚拟实例安装在群集上。如果选择安装虚拟实例,可以安装在群集的所有节点上,也可以安装在一部分节点上,甚至仅安装在一个节点上。
最后,为了达到群集的真正目标,即高可用性,需要为您提供合格的人员以及在出现问题时所遵循的预先演练好的过程。尽管群集是防止出现硬件故障的有力保障,但它无法阻止用户出错。例如,午夜时分,一位睡眼朦胧的DBA删除了一份重要的表。
单节点群集
尽管您在此刻只拥有一台服务器,也可以考虑创建一个单节点群集。如果这样做,您可以在以后选择升级到群集,从而无需重建。但是,请务必确保您所选择的硬件位于 Windows目录的群集部分。
这样做不仅仅只是为了实现能够在以后添加节点这个高可用性。如果您发现您的服务器恰好没有必需的功能,那么您猜会发生什么事情。这意味着您需要迁移 - 既费时又费力。如果您有一个单节点群集,则迁移过程就会变得很容易,停机时间也少得多。您需要向群集中添加新节点,将SQL Server二进制文件和服务包添加到该新节点,然后故障转移到该新节点。接下来,添加任何服务包之后的更新程序,最后删除旧节点。停机时间只是故障转移时间与添加更新程序(如果有)时间之和。