作者: Joseph Sack 技术审阅人: Burzin Patel, Juergen Thomas, Lindsey Allen, Justin Erickson 译者:Daniel_Zhen 摘要:SQL Server 2008的故障转移集群功能在可支持性、可靠性、可用性等方面进行了改进。下文将详细阐述迁移至SQL Server 2008的故障转移集群的益处。 1.可靠的安装
SQL Server 2008的故障转移集群的安装过程有了显著的改变,特别是你将有两个安装选项:集成安装(integrated)或高级/企业安装(advanced/enterprise)。集成安装将会安装单节点的SQL Server 2008故障转移集群实例。如果你想让该实例能够与其它节点实现故障转移功能,你需要在每个节点分别执行“增加节点”操作。
高级/企业安装区别于集成安装,你需要为每个节点安装和配置好SQL程序和服务,然后选择具有SQL Server共享磁盘的活动节点,确保SQL Server实例在线。高级/企业安装趋向于为第三方提供企业部署解决方案,或在配置Windows集群前,预备每个节点的功能。你当然可以选择高级安装选项,但故障转移的集成安装将提供最简洁的步骤使您更快速的完成SQL Server实例的安装。
从安装步骤的简洁性上看,集成安装选项能的安装更加简洁。举例来说:为构建一个两节点的集群选择集成安装模式,需要为第一个节点安装实例,然后再第二个节点选择“加入节点”;而高级/企业级安装首先需要分别操作每个节点,然后完成SQL Server实例安装,并使其在线。
乍眼一看,这似乎是DBA的工作,那改进带来的好处呢?与SQL Server 2005故障转移集群不同,SQL Server 2008故障转移集群不包含对远程节点的操作。新的安装过程,有助于减少在配制远程节点时所出现的权限相关、远程离线服务,中断服务链接,或由于通信原因产生的问题,让你远离不完全或错误安装的困扰。使用SQL Server 2008故障转移集群,通过消减一些可能会妨碍安装的远程节点变量,其安装的可靠性将显著提升。 2.通过滚动升级提升可用性 对于预安装的SQL Server 2008, 安装服务包或增量升级程序需要停掉SQL Server实例几分钟。这是由于在用最新的服务包或增量升级程序升级SQL Server 实例时,SQL Server服务将会停掉直到升级结束。使用SQL Server 2008故障集群转移,如果你设置了滚动升级功能,你的停机周期将会被显著缩短。特别是,通过转移被动节点(正在执行升级任务的节点)至其他节点,你可以避免SQL Server实例由于加载服务包或增量升级造成的长时间等待。在被动节点加载补丁程序后,你可以把SQL Server实例转移到具有最新更新的节点上。就这样,在故障转移后,SQL Server实例也就完成了升级。然后你还可以升级其它活动的节点。 在测试中,两节点集群掌控单SQL Server 2008故障转移集群实例,我开始在集群中的一个离线节点安装增量升级。当这一增量升级安装的时候,SQL Server 实例在另一节点运行。当加载增量升级后,我把SQL Server的实例迁移回具有最新更新的节点,然后再另一个节点加载增量升级。总共的停机时间为15秒,基本上为把SQL Server实例迁移到具有最新更新的节点上所花费的时间。
3.有效地增加或删除节点
使用SQL Server 2005,为SQL Server故障集群转移增加一个新的节点或删除一个节点不需要停用SQL Server实例。像所有的集群安装功能一样,在SQL Server 2005下增加节点需要运行被加入的节点,而不仅仅是选择活动的节点。而SQL Server 2008的“加入节点”并不依赖远程任务调度和执行。用户执行SQL Server 2008 “加入节点”的功能,只需要选择实例,输入服务帐户的用户名和密码(命令行模式下),选择错误和用法报告选项。当节点加入后,所有已选的特性将从实例中加载。
在测试中,当加载一个新的节点至SQL Server故障集群转移时,我收到了如下安装信息: “The current node TX147913-3 is at patch level [10.0.1600.22], which is lower than that of active node TX147913-2: patch level [10.0.1763.0]. After completing setup, you must download and apply the latest SQL Server 2008 service pack and/or patch and bring all nodes to the same version and patch level.”
“现节点TX147913-3 的补丁版本为 [10.0.1600.22], 低于活动节点 TX147913-2的补丁版本 [10.0.1763.0].安装结束后, 你必须下载和安装最新的SQL Server 2008 服务包或补丁,并确保所有节点具有一致的补丁版本。”
以上信息告诉我需要升级新加入SQL Server 故障集群转移的节点,来匹配存在的已升级的SQL Server故障集群转移的节点。为新加入的节点打补丁不需要重起SQL Server 故障集群转移服务。
4.用Windows Server 2008下SID服务取代域组 很多DBA在安装SQL Server 2005故障转移集群时使用域组来配置SQL Server服务通常会感到头疼。域组常用来管理SQL Server服务帐户权限,然而每个域组所包含的服务帐户成员都是预先设置的。在集群服务中改变域组,虽然可以,但却无用(参看KB 915846 “在SQL Server 2005故障转移集群中设置域组所遇到的问题之解决方案”一文)
如果你在Windows Server 2008环境下创建SQL Server 2008 故障转移集群,你可以通过在安装过程中指派服务SID,避开使用域组。服务SID功能是在Windows Vista 和Windows Server 2008中引入的,允许通过ACL连接服务器资源的方式,实现权限直链Windows服务。在SQL Server故障转移群集安装过程中的“群集安全策略”设置对话框,你仍然可以选择使用域组,但在Windows Server 2008环境下安装配置SQL Server 2008,推荐选择“使用服务 SID”,该选项允许你避开使用域组,从而避免需要在安装之前添加服务帐户成员。 5.Windows server 2008 集成的改善
除了服务SID以外,在Windows Server 2008平台上运行SQL Server 2008还有其它的益处。举例来说,Windows Server 2008集群移除了在一个集群解决方案中所有硬件需要在硬件兼容列表(HCL)中的限制。发现和确认你的集群方案中所有的硬件都在HCL中是一件非常困难的工作。应用Windows Server 2008,你不需要确认HCL列表,而只要在Windows Server 2008集群方案使用Windows Server 2008集群验证工具来进行验证。在配置集群之前,你可以使用这个工具扫描准备加入集群中的服务器节点和存储设备。该工具检测任何可能影响故障转移集群的问题。任何关于硬件、网络组件、配置、存储资源、操作系统配置的相关问题都会在最终的报告中有所体现,从而在部署前发现问题。 Windows Server 2008故障转移集群增加了新的quorum选项,可以从单点错误模式移至基于一致的quorum模式。此外,Windows Server 2008故障转移集群提供了对iSCSI磁盘支持,增加至16节点,支持ipv6网络层协议。 6. 配置文件自动生成 SQL Server 2008故障转移集群允许在命令行安装模式下使用配置文件。举例来说,下面命令行执行初始单节点故障转移集群的集成安装,并在命令行选项中引用了配置文件。 Setup.exe /q /ACTION=InstallFailoverCluster /Configurationfile="C:/temp/ConfigurationFile.ini"
此外,运行非命令行安装SQL Server 2008时,会自动产生ConfigurationFile.ini,该文件自动存储在如下目录:
<drive letter>:/Program Files/Microsoft SQL Server/100/Setup Bootstrap/Log/<YYYYMMDD_HHMMSS/ConfigurationFile.ini. 请注意,ConfigurationFile.ini不会自动生成FAILOVERCLUSTERIPADDRESSES安装选项,需要手工加入。举例来说:
FAILOVERCLUSTERIPADDRESSES="IPv4;172.29.10.160;Cluster Network 1;255.255.248.0" 使用命令行辅以配置文件安装,可以帮助SQL Server 2008故障转移安装过程流线化,特别是在一些大型企业环境中。 原文链接: http://sqlcat.com/top10lists/archive/2008/11/20/six-failover-clustering-benefits-realized-from-migrating-to-sql-server-2008.aspx 作者介绍: 甄浩,北京迈思奇BI开发工程师,资深BI咨询顾问,软件工程专业硕士。 主攻数据仓库、OLAP建模、数据挖掘、企业绩效管理等技术领域,具有6年的BI项目实施和咨询经验。 |