Building_a_HA_and_DR_Solution_using_AlwaysON_SQL_FCIs_and_AGs v1_第1页
Building_a_HA_and_DR_Solution_using_AlwaysON_SQL_FCIs_and_AGs v1_第2页
Building_a_HA_and_DR_Solution_using_AlwaysON_SQL_FCIs_and_AGs v1_第3页
Building_a_HA_and_DR_Solution_using_AlwaysON_SQL_FCIs_and_AGs v1_第4页
Building_a_HA_and_DR_Solution_using_AlwaysON_SQL_FCIs_and_AGs v1_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、AlwaysOn 体系结构指南:使用故障转移群集实例和可用性组构建高可用性和灾难恢复解决方案SQL Server 技术文章作者:Joseph Sack (SQL)、Sanjay Mishra (Microsoft)技术审校:Min He (Microsoft)、Chuck Heinzelman (Microsoft)、Alexi Khalyako (Microsoft)、Charles Mathews (Microsoft)、Prem Mehra (Microsoft)、Juergen Thomas (Microsoft)、Mike Weiner (Microsoft)、Amitabh Tam

2、hane (Microsoft)、Brent Ozar (Brent Ozar PLF)、Gianluca Hotz (SolidQ)、David P. Smith (ServiceU)、Michael Steineke (Edgenet)、Glenn Berry (SQL)内容项目经理:Glenn Minch (Microsoft)发布时间:2012 年 6 月适用范围:SQL Server2012 摘要:SQL Server2012 AlwaysOn 故障转移群集实例 (FCI) 和 AlwaysOn 可用性组提供了全面的高可用性和灾难恢复解决方案。在 SQLServer 2012 之前,

3、许多客户使用 FCI 在数据中心内提供本地高可用性,使用数据库镜像来用于灾难恢复到远程数据中心。对于 SQL Server2012 而言,这种设计模式可以用以下体系结构来替代:使用 FCI 来实现高可用性,使用可用性组来满足灾难恢复业务要求。可用性组充分利用了 Windows Server 故障转移群集 (WSFC) 功能,而且具有数据库镜像不具备的多个功能。本白皮书详细介绍这个特定设计模式的关键拓扑要求,包括非对称存储注意事项、仲裁模型选择、仲裁投票、构建环境所需的步骤,以及说明如何跨有关作业角色在新拓扑中处理灾难恢复事件的工作流。版权信息本文档按“原样”提供。本文档中的信息和表达的观点(包

4、括 URL 和其他 Internet 网站引用)如有更改,恕不另行通知。您应承担使用本文档所带来的风险。此处提及的某些示例只是为了便于说明,纯属虚构。不应据此联想或妄加推断。本文档不向您提供对任何 Microsoft 产品中的任何知识产权的任何法律权利。您可以出于内部参考目的复制和使用本文档。 2012 Microsoft。保留所有权利。目录简介4用于本地 HA 的 FCI 和用于 DR 的数据库镜像4用于本地 HA 的 FCI 和用于 DR 的可用性组5规划和注意事项7Windows Server 故障转移群集要求7非对称存储7实例命名和文件路径7可用性模式和故障转移模式8仲裁模型和节点投票

5、8用于查看和更改仲裁模型和节点投票的工具10配置 WSFC 仲裁模型10使用 DMV 和 AlwaysOn 面板查看仲裁信息11配置节点投票12客户端连接13读/写工作负荷13只读工作负荷13多子网连接支持13配置 FCI+AG 解决方案14安装先决条件14在主数据中心设置解决方案14在 DR 数据中心设置解决方案18监视注意事项21从灾难中恢复22切换回到主数据中心28结论31参考32简介Microsoft SQL Server2012 AlwaysOn 具有多种灵活的设计,您可以为您的应用程序选择适当的高可用性 (HA) 和灾难恢复 (DR) 解决方案。有关 SQL Server2012

6、AlwaysOn 高可用性和灾难恢复设计模式的详细信息,请参阅 SQL Server 2012 AlwaysOn 高可用性和灾难恢复设计模式。本白皮书介绍了将故障转移群集实例 (FCI) 用于 HA 以及将可用性组 (AG) 用于 DR 的解决方案。此体系结构还结合了共享存储解决方案 (FCI) 和非共享存储解决方案 (AG)。在 SQL Server 2012 之前,常见的 HA 和 DR 部署体系结构是将 FCI 用于本地高可用性,将数据库镜像 (DBM) 用于远程灾难恢复。对于 SQL Server 2012 而言,可用性组可以替代该解决方案的数据库镜像组件。本白皮书涵盖了在规划时需要注

7、意的事项并且演练了构建此解决方案所需的步骤。本白皮书还介绍了灾难恢复所需的步骤,并且说明了如何在还原主数据中心后切换回到主数据中心。本白皮书假定您了解故障转移群集实例 (FCI)、可用性组、高可用性和灾难恢复概念的基本知识。有关完整的 AlwaysOn 解决方案功能集的详细信息,请参阅用于高可用性和灾难恢复的 Microsoft SQL Server AlwaysOn 解决方案指南白皮书。有关迁移步骤的详细信息,请参阅迁移指南:从以前的群集和镜像部署迁移到 SQL Server 2012 故障转移群集和可用性组白皮书。本白皮书的目标受众包括操作 SQL Server 的数据库管理员以及技术架构

8、师。对于需要与数据库管理员角色协作以便管理 Windows Server、Active Directory 域服务 (ADDS)、WSFC 和网络的系统管理员,本白皮书也很适合。用于本地 HA 的 FCI 和用于 DR 的数据库镜像如简介中所述,在 SQL Server 2012 之前,主流的 SQL Server 部署体系结构是将 FCI 用于本地高可用性,将数据库镜像用于跨数据中心的灾难恢复。这称为“FCI+DBM”解决方案。这种解决方案是在使用共享磁盘存储(例如,通过 SAN)的主数据中心内配置一个 FCI,以便提供 SQL Server 实例级别的保护。如果其中一个节点发生硬件故障,则

9、同一数据中心内的另一个节点可以接管该故障节点,成为该 FCI 的宿主。数据库镜像用于在主站点和灾难恢复站点之间提供数据库级别的保护。如果主数据中心停机,或者主数据中心内的共享存储遇到故障,则可以使用 DR 数据中心内的镜像来继续为应用程序提供服务。灾难恢复数据中心在单独的 WSFC 上承载了另一个 FCI,并且它有自己的共享存储。图 1 展示了此解决方案的体系结构。图 1:用于高可用性的 FCI 和用于灾难恢复的数据库镜像通常,DR 数据中心与主数据中心有一定的距离,并且镜像会话设置为“高性能”异步模式,以便尽量降低事务开销。当然,也有些数据中心之间采用同步数据库镜像。有关详细信息,包括针对此

10、特定解决方案的实际示例,请参阅在 ServiceU 的高可用性和灾难恢复:SQL Server 2008 技术案例研究。用于本地 HA 的 FCI 和用于 DR 的可用性组对于 SQL Server 2012,类似的解决方案是将 FCI 用于本地高可用性(这一点与 FCI+DBM 解决方案相同),但将可用性组 (AG) 用于灾难恢复。这称为“FCI+AG 解决方案”。图 2 显示了将 FCI 用于本地高可用性并将可用性组用于跨数据中心灾难恢复的解决方案。图 2:用于高可用性的 FCI 和用于灾难恢复的可用性组图 2 中显示了两个 FCI,一个位于主数据中心,另一个位于灾难恢复数据中心。每个 F

11、CI 都具有两个节点以及自己的共享存储。但所有四个节点都是“同一个”WSFC 的一部分。所有节点均属于同一个 WSFC 是可用性组的一项要求。图 2 显示的简单拓扑包含两个数据中心,每个数据中心都在一个包含两个节点的 FCI 上承载 AG 的一个副本。基于这种体系结构,上述拓扑可以变化出多种形式: 多个数据中心 多个副本(最多五个副本,其中包括一个主副本以及一到四个辅助副本) 每个 FCI 有两个以上的节点(如果出于 HA 的原因,需要更多的被动节点时) 一个可用性组中的所有副本并不需要都位于 FCI 实例上;某些副本可位于不属于 FCI 的独立 SQL Server 实例上 根据您的应用程序

12、环境的数据库逻辑分组情况,可以有多个可用性组本白皮书中所讨论的内容主要针对图 2 中所示的拓扑;但是,其中的一般概念也适用于其他变化形式。因为两个站点中的四个节点属于同一个 WSFC,所以,使用仅对本地数据中心节点可见的共享存储时,需要注意其他一些事项。另外,关于仲裁投票和仲裁模型,也需要注意一些事项。本白皮书中将对这些以及其他一些注意事项加以介绍。可用性组可以配置有一个或多个用户数据库,并且可以采用同步或异步数据移动。同步副本会导致增加数据库事务的延迟,因为主副本需要先收到日志记录已强制写入辅助副本日志的确认,然后才会提交事务。还要特别注意的是,灾难恢复 SQL Server 实例不需要是

13、FCI。可用性组还可以使用独立的 SQL Server 实例来承载辅助副本。在可用性组中,您可以在同一个 WSFC 上的单个拓扑中将独立实例和 FCI 混合使用。图 3 显示了一个混合的拓扑。图 3:用于本地 HA 的 FCI 以及用于 DR 的可用性组(DR 实例是独立的实例)本白皮书的其余部分假定主副本和辅助副本均为托管的 FCI,而不是独立实例。规划和注意事项本节详细介绍了在实现 FCI+AG 形式的高可用性和灾难恢复解决方案之前需要考虑的规划注意事项、要求和先决条件。Windows Server 故障转移群集要求FCI+DBM 与 FCI+AG 解决方案之间的主要不同之处在于,前者是在

14、两个单独的 WSFC 上使用两个 FCI,而后者是在单个 WSFC 上使用两个 FCI。一个可用性组的所有副本必须存在于单个 Active Directory 域内的单个 WSFC 上(即使是位于两个数据中心)。非对称存储在一个多站点 WSFC 的两个站点上各有一个 FCI 的情况下,需要注意处理共享存储的方式。每个 FCI 都具有自己的共享存储。主站点上的节点彼此之间共享存储,从而形成了一个共享存储的 FCI;而 DR 站点上的节点彼此之间也共享存储,从而形成了另一个共享存储的 FCI。主站点上的存储对于灾难恢复站点上的节点不可见,反之亦然。这一存储安排方式(其中,群集磁盘在一个 WSFC

15、内的节点子集之间共享)称作“非对称存储”。在非对称存储功能出现之前,共享存储需要对于 WSFC 中的“所有”节点均可见(对称存储)。非对称存储是通过修补程序在 Windows Server 2008 中引入的一个部署选项。Windows Server 2008 R2通过 Service Pack 1 引入了非对称存储的支持。有关此修补程序的详细信息,请参阅知识库文章向运行 Windows Server 2008 或 Windows Server 2008 R2 的故障转移群集的故障转移群集管理 MMC 管理单元中添加非对称存储支持的修补程序。此 Windows Server 增强功能是实现本白

16、皮书中所述 FCI + AG 解决方案体系结构的关键功能。通过实现此功能,您可以在单个 HA + DR 解决方案中将共享存储解决方案 (FCI) 与非共享存储解决方案(可用性组)结合起来使用。因此,此增强功能还使您可以将相同的驱动器号用于跨数据中心的共享磁盘资源。请注意,在您配置非对称存储时,在 WSFC 验证测试过程中可能会看到消息“ID 为 XYZ 的磁盘只能从节点的子集中看到或成为群集”。对于非对称存储,出现此消息是正常情况,因此不必担心。实例命名和文件路径在同一个 WSFC 内,两个 FCI 必须使用不同的实例名称,例如,使用“INST_A”作为主 FCI 的实例名称,使用“INST_

17、B”作为 DR FCI 的实例名称。(与可用性组相反,数据库镜像允许单独 WSFC 上的多个 FCI 使用相同的实例名称。在图 1 的 FCI+DBM 解决方案中,两个 FCI 都使用相同的实例名称 INST_A。)每个 FCI 都有自己的共享存储(其他数据中心内的节点无法访问),并且磁盘应使用完全相同的驱动器号,同时两个 FCI 中的数据库文件和事务日志文件也应该使用完全相同的文件路径。完全相同的文件路径和驱动器号并不是必须要遵循的要求,但如果文件路径不同,在还原辅助副本上的副本数据库时,您就需要执行手动的 RESTORE WITH MOVE。此外,在两个 FCI 上采用不同的路径将会导致后

18、面的文件添加操作(例如,创建文件组或者辅助日志或数据文件的操作)失效。有关详细信息,包括出现问题的情形及其解决方法,请参阅解决失败的添加文件操作问题(AlwaysOn 可用性组)。可用性模式和故障转移模式对于在两个 FCI 之间创建的可用性组,可以指定同步或异步提交可用性模式。如果可用性模式是同步的,则主副本将等到用户事务发送到辅助副本并在辅助副本上强制写入之后再提交这些事务。这可能会导致增加用户事务的延迟,但这种方式可以确保在事务发送到灾难恢复 FCI 之后再在主副本事务上发出提交信号,有助于消除辅助副本上数据丢失的可能性。如果可用性模式是异步的,则您的主副本用户事务不会等待事务强制写入到辅

19、助副本日志上。这可以减少事务延迟,但会增加停机时数据丢失的可能性。就故障转移模式而言,在可用性组拓扑中使用 FCI 时,可用性组的故障转移模式必须是手动(而非自动)。但在每个 FCI 中,SQL Server 实例的 FCI 故障转移到其他节点是自动执行的。仲裁模型和节点投票注意:本白皮书所讨论的仲裁模型和相关信息适用于在 Windows Server 2008 和 Windows Server 2008R2 操作系统(具有相应的 Service Pack 和其他软件更新)上运行的解决方案。因为 FCI+AG 解决方案的基础体系结构是 WSFC,所以,考虑 WSFC 的适当仲裁模型十分重要。仲

20、裁配置是在 WSFC 级别进行管理的,而与 FCI 的数目、副本的数目以及 WSFC 中承载的可用性组的数目无关。在 WSFC 中,有四种仲裁模型:“节点多数”、“节点和文件共享多数”、“节点和磁盘多数”和“无多数: 仅磁盘”。有关仲裁模型的详细信息,请参阅故障转移群集分步指南:在故障转移群集中配置仲裁。在选择仲裁模型之前,一定要考虑投票节点的数量。分配适当的节点投票在 HA+DR 设计中起着重要作用。默认情况下,故障转移群集中的每个节点都具有投票,但是,根据主数据中心和 DR 数据中心内节点的分布情况,每个节点都具有投票可能不适合于您的特定 HA+DR 解决方案。有一个修补程序 ( 可用于将

21、 1 个投票分配给 WSFC 中的一些节点,将 0 个投票分配给其他一些节点。WSFC 节点的 NodeWeight 属性表示该特定节点的投票。值“0”表示该节点没有投票。值“1”表示该节点具有一个仲裁投票。拓扑中的每个节点上都必须安装此修补程序。在 SQL Server 联机丛书的建议的仲裁投票调整主题中提供了有关 AlwaysOn HA+DR 解决方案仲裁投票的一般性建议。在确定 AlwaysOn 解决方案的投票方案时,应该以这些建议作为指导原则。应考虑这些指导原则,以便确保主数据中心内节点的仲裁不会受到 DR 数据中心停机或两个数据中心之间连接丢失的影响;对于在图 2 中展示的 FCI+

22、AG 解决方案,投票方案将是: 主数据中心内的每个节点有 1 个投票 灾难恢复数据中心内的每个节点有 0 个投票此投票分配方案表示该 WSFC 总共有 2 个投票。作为最佳做法,WSFC 的投票总数应为奇数。如果投票节点数目为偶数(例如我们的示例拓扑),应考虑添加文件共享见证服务器,然后选择“节点和文件共享多数”仲裁模型。注意:在许多企业环境中,文件共享经常是由另一个团队拥有和管理。因此,该团队控制着一个节点投票,进而会对故障转移群集的状态产生影响。而且,因为文件共享将参与投票,所以它需要始终可用。建议采用群集或其他 HA 技术,以便确保文件共享投票的可用性。或者,可以添加额外的节点,然后使用

23、“节点多数”仲裁模型。额外的节点需要处于 WSFC 内,但不需要是 FCI 配置的一部分。它还应该位于相同的主数据中心内,与该数据中心内存在的其他两个 WSFC 节点并置。图 4 显示了使用“节点和文件共享多数”仲裁模型的投票分配方案。图 4:具有节点投票分配的 FCI+AG HA/DR 解决方案在图 4 中,主数据中心的两个节点分别具有一个投票。文件共享见证服务器也在主数据中心内定义并具有一个投票。灾难恢复数据中心的两个节点并没有投票,因此无法影响仲裁。此部署体系结构可以使用的其他仲裁模型包括“节点和磁盘多数”(使用非对称磁盘)或“无多数: 仅磁盘”(使用非对称磁盘)。在以前,WSFC 中还

24、不能使用非对称存储技术时,可以使用一个共享磁盘来充当仲裁资源(该共享磁盘需要对所有 WSFC 节点均可见)。对于非对称存储,群集存储可以只对节点的某个子集可见,而且也可用作仲裁资源。对于非对称“无多数: 仅磁盘”仲裁模型,可以实现“一票通过”方案,即只要还有一个节点与充当仲裁资源的非对称磁盘联系,WSFC 就保留仲裁。您可以使用 cluster.exe 命令行(不能通过故障转移群集管理器或 Windows PowerShell)来实现此功能。有关此配置的示例,请参阅在使用非对称存储的故障转移群集中更改仲裁配置,摘自文章故障转移群集分步指南:在故障转移群集中配置仲裁。重要提示:尽管使用非对称磁盘

25、作为仲裁资源可以带来很多好处,但这需要很高的群集专业技能和规划水平。您首先需要非常熟悉此配置,然后才能在生产环境中执行部署。如果主数据中心发生停机,并且需要在灾难恢复数据中心内启用服务,您就必须重新评估仲裁配置。必须向灾难恢复数据中心的每个节点都分配一个投票,而将主数据中心每个节点上的投票都删除(设置为“0”),直到主数据中心恢复服务。假定 FCI 有两个节点并且主数据中心需要中断较长的时间,您还应在 DR 数据中心内配置文件共享见证服务器(或其他附加投票),并相应设置仲裁模型。当主数据中心恢复活动后,还要再次对投票进行调整,并且重新评估仲裁模型。在本白皮书的后面,我们将逐步骤介绍灾难恢复情形

26、和关联的流程。图 4 中展示的仲裁模型和投票分配方案假定解决方案有两个副本 分别位于两个数据中心内。如果您具有更多的数据中心并且计划将您的解决方案的某个部分放置于第三个数据中心内,则仲裁模型决策和投票分配方案可能会有所不同。用于查看和更改仲裁模型和节点投票的工具有多种方法可以查看和更改仲裁模型和/或仲裁投票。下表列出了可用于这些任务的不同工具。查看仲裁模型更改仲裁模型Windows 故障转移群集管理器Windows PowerShellCluster.exeSQL Server DMVSQL Server Management Studio 中的 AlwaysOn 面板Windows 故障转移

27、群集管理器Windows PowerShellCluster.exe注意:只有 Cluster.exe 能够用于将仲裁模型设置为“节点和磁盘多数”或“无多数:仅磁盘(非对称)”查看节点投票更改节点投票Windows PowerShellCluster.exeSQL Server DMVAlwaysOn 面板Windows PowerShellCluster.exe配置 WSFC 仲裁模型下面是通过 Windows PowerShell 在命令行中查看当前仲裁模型和更改仲裁模型的一些示例。查看现有仲裁模型Get-ClusterQuorum配置“节点多数”仲裁模型Set-ClusterQuorum

28、 -NodeMajority将仲裁模型更改为“节点和文件共享多数”Set-ClusterQuorum -NodeAndFileShareMajority FileShareWitness 您选择的见证文件共享“不得”位于已经参与 AlwaysOn WSFC 配置的节点上。但是,它可以作为共享放置在其他 WSFC 配置上。见证文件共享必须与 WSFC 位于同一个 Active Directory 域内。此外,WSFC 群集服务帐户需要在文件共享见证服务器上有读写权限。故障转移群集管理器具有内置的逻辑,只要用于更改仲裁模型的帐户对文件共享具有权限,就可以将这些权限添加到文件共享见证服务器。使用 D

29、MV 和 AlwaysOn 面板查看仲裁信息虽然无法通过 SQL Server 工具来设置或更改仲裁模型或节点投票,但是可以通过在 DMV 上使用 Transact-SQL 查询,或者通过使用 SQL Server Management Studio 中的 AlwaysOn 面板,来查看承载可用性组的 Windows 群集的节点投票和仲裁模型。若要查看承载可用性组的 Windows 群集的仲裁模型,请查询 DMV sys.dm_hadr_cluster (SELECTcluster_name, quorum_type_desc, quorum_state_descFROMsys.dm_hadr

30、_cluster;当针对本白皮书中介绍的示例运行此查询时,它将返回以下内容。cluster_namequorum_type_descquorum_state_desc- - -contosoclusterNODE_AND_FILE_SHARE_MAJORITYNORMAL_QUORUM若要查看节点投票,请查询 DMV sys.dm_hadr_cluster_members。SELECTmember_name, number_of_quorum_votesFROMsys.dm_hadr_cluster_members;当针对本白皮书中介绍的示例运行此查询时,它将返回以下内容。投票分配将在后面的章

31、节中加以介绍。member_namenumber_of_quorum_votes- -PrimaryNode11PrimaryNode21DRNode10DRNode20File Share Witness1还可以使用 SQL Server Management Studio 中的 AlwaysOn 面板来显示仲裁投票和群集状态。图 5 显示了具有“节点多数”仲裁模型的 Windows 群集的这些信息(群集状态和仲裁投票已突出显示)。图 5:在 AlwaysOn 面板中显示仲裁投票和群集状态在默认情况下,“仲裁投票”列并不显示,但您可以通过右键单击“可用性副本”表列标题,然后选择要显示的特定列

32、,将其添加到面板。对于“节点和文件共享多数”仲裁模型,此 AlwaysOn 面板视图只显示节点,而不显示文件共享。若要查看完整仲裁信息,请单击右侧的“查看群集仲裁信息”。这时将显示一个类似图 6 的弹出窗口。图 6:“节点和文件共享多数”仲裁模型的群集仲裁信息配置节点投票WSFC 节点的 NodeWeight 属性表示该特定节点的投票。下面的示例说明如何从 WSFC 中的一个节点使用 Windows PowerShell 来配置节点的 NodeWeight。若要在服务器节点上执行 Windows PowerShell,请单击“开始”,指向“管理工具”,然后单击“Windows PowerShe

33、ll 模块”。在此示例中,DRNode1 表示位于灾难恢复数据中心内的特定 WSFC 节点。查看所有节点的当前投票设置Get-ClusterNode | fl NodeName, NodeWeight将某一节点的投票设置为“0”(Get-ClusterNode DRNode1).NodeWeight=0注意:值“0”表示该节点没有投票。值“1”表示该节点具有一个仲裁投票。客户端连接SQL Server2012 中的 FCI 连接方法与以前的版本相同,但对于从数据库镜像迁移到可用性组的情况,您必须事先考虑一些不同之处并仔细规划,然后才能使用新的可读取辅助功能。有关迁移的详细信息,包括深入的注意事

34、项和步骤,请参阅迁移指南:从以前的群集和镜像部署迁移到 SQL Server 2012 故障转移群集和可用性组白皮书。读/写工作负荷对于在可用性组中的可用性数据库上运行的读/写工作负荷,您可以使用两个选项连接到主副本。第一个选项是直接连接到 FCI 虚拟网络名称 (VNN);每个副本都具有不同的 FCI VNN。第二个选项是使用可用性组侦听器名称。可用性组侦听器是首选选项,因为它提供透明度和自动重定向到当前主副本,并且连接字符串中的名称对于所有实例都保持不变。可用性组侦听器是绑定到一个或多个 TCP/IP 地址和侦听器端口的 VNN,它用于自动连接到任何副本,而无需在连接字符串中显式指定每个可

35、能的可用性组副本。如果您从使用“故障转移伙伴”属性的数据库镜像解决方案迁移读/写工作负荷应用程序连接,仍可以使用您的数据库镜像连接字符串,但是,只有在可用性组配置了“单个”辅助副本而且该副本配置为允许读/写活动时才能这样做。然后,可以使用初始主副本服务器名称作为数据源,并且可以选择使用辅助副本名称作为故障转移伙伴。但是,不应将这种做法用作长期解决方案。只读工作负荷对于只读工作负荷连接,也有两个选项可供您选择。您可以使用 FCI VNN,或者可以使用可用性组侦听器,并且在连接字符串中将新的 ApplicationIntent 属性指定为“ReadOnly”。如果您使用的是旧式数据库镜像连接字符串

36、,则只有在可用性组配置为单个辅助副本并且该副本允许读/写活动时,才能连接到该可用性组。如果您想要利用只读路由,则必须将可用性组侦听器名称与 ApplicationIntent 属性和“ReadOnly”值一起使用。您还必须引用该可用性组中的一个可用性数据库。您还必须创建只读路由 URL 和只读路由列表,将该可用性组配置为允许只读路由到可读辅助副本。有关此过程的详细信息,请参阅为可用性组配置只读路由 (SQL Server)。多子网连接支持可用性组侦听器还可以利用客户端库中的 MultiSubnetFailover 连接属性。在可用性组连接字符串引用某一可用性组侦听器名称时,建议为多子网拓扑指定

37、 MultiSubnetFailover 属性。MultiSubnetFailover 连接选项实现对多子网连接的支持,并且打开 TCP 套接字以便“并行”用于多个可用性组侦听器 IP 地址。对于不支持 MultiSubnetFailover 属性的旧式客户端库,应考虑相应的客户端登录超时。有关客户端连接和应用程序故障转移注意事项的详细信息,请参阅 SQL Server 联机丛书中的客户端连接性和应用程序故障转移(AlwaysOn 可用性组)。配置 FCI+AG 解决方案此工作流介绍构建 FCI+AG 解决方案所需的步骤。本节并不详细介绍每个具体的步骤,只是为了帮助您明确工作流的实现步骤以及各

38、参与作业角色的任务。在需要时,文中会在适当的位置引用参考文档。这些步骤按作业角色划分,因为大多数大型公司环境都明确定义了数据库管理员、Windows(或群集)管理员以及网络管理员角色的职责。因此,在不同的角色之间正确地通信和协调活动十分重要。安装先决条件在您部署 AlwaysOn 可用性组解决方案之前,一定要验证您的系统满足要求,包括更新。有关部署 AlwaysOn 可用性组解决方案的先决条件的详细信息,请参阅针对 AlwaysOn 可用性组的先决条件、限制和建议 (SQL Server)。强烈建议您在继续操作之前查看该主题。所有节点都必须安装相同版本的 Windows Server 操作系统

39、和软件更新。服务器操作系统版本最低应该为至少具有以下更新的 Windows Server2008SP2 或者 Windows Server2008R2SP1: 非对称存储(如果使用 Windows Server 2008): 节点投票: 在群集验证过程中验证磁盘测试:您可能还需要其他更新。在主数据中心设置解决方案表 1 提供了用于设置主数据中心 节点的工作流,并且它假定有两个节点。步骤数据库管理员Windows Server 群集管理员网络管理员1. 将故障转移群集功能添加到位于主数据中心的两个节点上。有关此过程的详细信息,请参阅安装故障转移群集功能。有关验证网络基础结构和其他要求的详细信息,

40、请参阅了解故障转移群集的要求。是(需要在角色之间进行活动协调)。是2. 检查所需的必备组件并且在主数据中心内的各节点上安装必需的 Windows Server 软件更新。是3. 确保为主数据中心 FCI 指定的共享存储卷已经格式化并且具有驱动器号。建议 DR FCI 上的相应驱动器号和目录路径与主 FCI 中的驱动器号和目录路径相匹配。在主 FCI 中分配驱动器号时请认真考虑这个建议。是4. 验证用于安装和配置 WSFC 的帐户是域帐户。此帐户还应该在每个群集节点上都具有管理员权限,并且对用于域计算机帐户的容器具有“创建计算机对象”和“读取所有属性”权限。或者,您可以提前预配置名称对象帐户,或

41、使用域管理员帐户进行安装。有关所需权限和设置选项的详细信息,请参阅故障转移群集分步指南:在 Active Directory 中配置帐户。是5. 使用故障转移群集管理器,对主数据中心的两个服务器节点以及将添加到 WSFC 的共享存储执行群集验证。请反复执行验证,直到没有阻止错误。如果要在存在警告的情况下继续执行下面的步骤,您需要理解所有的警告以便帮助确保稳定的配置。有关执行验证测试的详细信息,请参阅验证故障转移群集配置。是是 解决可能因节点网络引发的任何问题6. 在群集验证步骤结束后,使用故障转移群集管理器创建一个双节点 WSFC。有关详细信息,包括此过程的详细说明,请参阅创建新的故障转移群集

42、。是是 解决可能因节点网络引发的任何问题7. 确保投票数为奇数;例如,您可以按照本文前面所述的方法添加文件共享或附加节点,从而满足这个要求。如果您选择“节点和文件共享多数”,则在更改该配置之前,请确保已向 WSFC 群集帐户授予了针对见证文件共享的读写权限。是8. 请确保安装所使用的是共享的、格式化的存储,并且该存储只能由位于主数据中心的两个节点访问。这些磁盘将在下一步中用于 SQL Server。是9. 在主数据中心内安装 SQL Server 2012 Enterprise 的 FCI 实例。有关详细信息,请参阅创建新的 SQL Server 故障转移群集。您必须执行两个安装 第一个安装是

43、“新的 SQL Server 故障转移群集安装”,也就是创建 FCI;第二个安装是“向 SQL Server 故障转移群集添加节点”,在主数据中心的第二个节点上执行。是10. 在您安装第一个 FCI 后,为两个 SQL Server 实例启用 AlwaysOn 可用性组功能。有关使用 SQL Server 配置管理器或 SQL Server PowerShell 的详细信息,请参阅启用和禁用 AlwaysOn 可用性组。请注意,在为实例启用 AlwaysOn 可用性组后,必须重新启动该实例,以使更改生效。11. 在您启用 DR FCI 以便支持 AlwaysOn 可用性组后,从旧拓扑中备份您的

44、生产用户数据库,然后将它们还原到主数据中心 FCI。注意:您可以选择将此步骤推迟到 DR FCI 也可用之后再执行,到时就有两个副本,可以设置可用性组。对于旧拓扑中的其他一些您的用户数据库所依赖的,但是又不包含在还原的用户数据库中的 SQL Server 对象(例如,SQL Server 登录名、关联的服务器级别权限、SQL Server 代理作业),您还需要编写相应的脚本。这类似于在数据库镜像合作关系中对镜像数据库外部的依赖对象编写脚本时所遵循的过程。在 SQL Server 实例之间传输数据库对象和原则的方法有多种。Integration Services 传输 SQL Server 对象

45、任务就是其中的一种。在下面的网址中介绍了在实例之间传输登录名和密码所用的另一种方法:表 1:在主数据中心构建 FCI+AG 解决方案在 DR 数据中心设置解决方案此表提供了用于设置辅助/灾难恢复数据中心节点和创建可用性组的工作流。步骤数据库管理员Windows Server 群集管理员网络管理员1. 将故障转移群集功能添加到灾难恢复数据中心内参与解决方案的所有节点。是(需要在角色之间进行活动协调)。是2. 检查所需的必备组件并且在 DR 数据中心的各节点上安装必需的 Windows Server 软件更新。是3. 验证用于安装和配置 WSFC 的帐户是域帐户。此帐户还应该在每个群集节点上都具有

46、管理员权限,并且对用于域计算机帐户的容器具有“创建计算机对象”和“读取所有属性”权限。如果您使用的是与主数据中心相同的帐户,则这些权限已正确设置。是4. 使用故障转移群集管理器,在参与现有 WSFC 的两个服务器节点和共享存储上执行群集验证。如果看到非对称存储警告消息“ID 为 XYZ 的磁盘只能从节点的子集中看到或成为群集”,则无需执行操作;出现此消息是正常情况,对于非对称存储而言是可接受的。请反复执行验证,直到没有阻止错误。是是 解决可能因节点网络引发的任何问题5. 在完成验证后,使用故障转移群集管理器将两个灾难恢复节点添加到现有 WSFC。是是 解决可能因节点网络引发的任何问题6. 将灾

47、难恢复数据中心 WSFC 节点的 NodeWeight 设置为 0(零)权重(有关示例,请参阅图 4:具有节点投票分配的 FCI+AG HA/DR 解决方案)。是7. 此安装应使用共享的、格式化的存储,并且该存储只能由位于 DR 数据中心的两个节点访问。这些磁盘将在下一步中用于 SQL Server。保持驱动器号和映射相同,这样可以简化后续步骤中可用性组的部署,并且在执行数据库文件操作时不会发生需要手动干预或中断可用性组会话的情况。是8. 将可用存储移到 DR 数据中心的一个节点上,以便在下一步骤中使用。是9. 在灾难恢复数据中心内安装 SQL Server 2012 Enterprise 的

48、 FCI 实例。您需要在其中一个节点上执行“新的 SQL Server 故障转移群集安装”选项,来创建 FCI;然后在 DR 数据中心的第二个节点上执行“向 SQL Server 故障转移群集添加节点”选项。是是 就 IP 地址(如果您使用的是静态 IP 地址)和端口注意事项进行协调10. 在安装好两个 FCI 后,下一步是在 DR 数据中心 SQL Server 实例上启用 AlwaysOn 可用性组功能。有关使用 SQL Server 配置管理器或 PowerShell 的详细步骤,请参阅启用和禁用 AlwaysOn 可用性组。请注意,为实例启用 AlwaysOn 可用性组,需要重新启动实

49、例才能生效。是11. 对于旧拓扑中的其他一些您的用户数据库所依赖的,但是又不包含在还原的用户数据库中的 SQL Server 对象(例如,SQL Server 登录名、关联的服务器级别权限、SQL Server 代理作业),您还需要编写相应的脚本。这些对象与您可能已编写脚本并复制到主数据中心 FCI 的那些对象相同。是12. 请确保正确设置两个 FCI 的可能所有者,即,INST_A 的可能所有者应该是 PRIMARYNODE1、PRIMARYNODE2;INST_B 的可能所有者应该是 DRNODE1、DRNODE2。13. 创建可用性组(此步骤涉及主 FCI 和 DR FCI)。根据环境的

50、工作负荷和网络特性,您可以将可用性模式设置为异步或同步。为可用性组选择手动故障转移。在 FCI+AG 解决方案中,FCI 故障转移是自动的,而可用性组故障转移是手动的。有关如何配置此解决方案的故障转移的详细信息,请参阅创建和配置可用性组。是是 确保端点端口处于打开状态并根据需要进行故障排除14. 创建可用性组侦听器。如果您在创建可用性组的过程中已进行此配置,则不需要执行此步骤。您可以通过使用 Transact-SQL、SQL Server PowerShell 或者 SQL Server Management Studio 中的向导来创建可用性组侦听器。有关使用各种方法的详细信息,请参阅创建或

51、配置可用性组侦听器。是是是 就 IP 地址和端口注意事项进行协调表 2:在灾难恢复数据中心构建 FCI+AG 解决方案在完成这些步骤后,您可以在 Windows 故障转移群集管理器的“服务和应用程序”下看到创建了一个新组,它的名称就是可用性组的名称。在这个新组中,还可以看到可用性组侦听器资源和关联的侦听器 IP 地址(请参阅图 5)。图 7:在配置了 HA 和 AG DR 设计解决方案的 FCI 之后图 7 显示了该部署的 WSFC 视图。请注意,图中的 AG 侦听器只显示了一个关联的 IP 地址,这只是为了便于说明;实际上,对于多数据中心拓扑而言,一般都会有两个 IP 地址。注意:尽管可用性

52、组显示为 WSFC 中的资源,但您不应尝试使用故障转移群集管理器或 WSFC 范围的接口来管理它,而是应通过 SQL Server Management Studio、Transact-SQL 或 Windows PowerShell 在 SQL Server 实例的上下文中管理可用性组。有关为什么不应使用故障转移群集管理器或 WSFC 范围的接口的详细信息,请参阅博客文章不要使用 Windows 故障转移群集管理器来执行可用性组故障转移。图 8 显示了该部署在 SQL Server Management Studio 中的样子。该视图显示了其中一个 FCI,并且 AlwaysOn 高可用性对

53、象资源管理器文件夹的层级结构处于打开状态。在此示例中,DR FCI 是辅助副本,另一个 FCI 是主副本。其中列出了参与可用性组的三个可用性数据库,以及可用性组侦听器的名称。图 8:在 SQL Server Management Studio 中针对 HA 和 AG DR 设计解决方案进行 FCI 后续配置监视注意事项从 FCI 和数据库镜像拓扑迁移到 FCI 和可用性组解决方案之后,需要使用新的方法来监视拓扑。可用于监视可用性组基础结构的方法和工具包括 SQL Server Management Studio 中的 AlwaysOn 面板、对象资源管理器状态信息、基于策略的管理策略、新的可用

54、性组性能计数器、目录视图、动态管理视图,以及跟踪最近的 AlwaysOn DDL 相关语句执行、WSFC 连接问题、故障转移事件、状态更改和重做线程块的扩展事件会话。AlwaysOn 面板是快速查看某一特定可用性组的运行状况的建议方法。在该面板中,您可以看到主实例的位置、副本的故障转移模式、副本的同步状态以及不同副本的故障转移就绪情况。您还可以直接从该面板访问“AlwaysOn 运行状况事件”扩展事件会话数据,以便查看最近的可用性组活动、状态更改和事件。图 9:AlwaysOn 面板此外,您还可以基于性能计数器阈值和可用性组状态更改,创建 SQL Server 代理警报和作业响应。有关监视可用

55、性组环境的详细信息和指导,请参阅监视可用性组。从灾难中恢复本节详细介绍在主数据中心的主副本发生停机时您应采取的步骤和工作流。它还包含从灾难恢复数据中心还原主副本可用性所需的步骤。主副本发生停机可能是因为以下一个或多个原因: 主数据中心的所有 FCI 节点都发生故障 主数据中心 FCI 存储发生故障 影响整个主数据中心的故障或网络中断在出现上述任何情况时,需要在灾难恢复数据中心执行某些操作,才能让 SQL Server 继续为应用程序提供服务。图 10 显示了此情形下的“群集仲裁信息”窗口(可以从 AlwaysOn 面板上的“查看群集仲裁信息”链接访问此信息)。它显示的是发生灾难情况之前的仲裁,其中,两个 DR 节点具有零个投票。图 10:“发生灾难之前”的群集仲裁投票状态下面的工作流说明了当主数据中心停机时,恢复灾难恢复数据中心内的一个可用性组所需的步骤:1. 在其中一个 DR 节点上执行强制仲裁,并且确保主数据中心内的节点不构成它们自己的仲裁。在灾难恢复节点上启动的故障转移群集管理器最初很可能不会提供有关 WSFC 的状态的有用信息,因为该群集并没有仲裁。图 11:发生灾难之后、执

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论