通往1级楼梯:什么是“SQL Server AlwaysOn”
Perry Whittle,2016 / 02 / 24(首次公布:2014 / 09 / 24)
该系列
本文是系列的一部分:楼梯楼梯AlwaysOn
AlwaysOn是一套复杂的技术,常被误解。在这楼梯你将学到的AlwaysOn技术,他们如何适应高可用的堆栈,如何利用好他们。
欢迎来到第一级阶梯”系列中的SQL Server AlwaysOn”。在这1级的文章,我们会发现技术“在”、“虚拟服务器”(FCI)和“Windows服务器故障转移群集”。我们将详细查看它们,并总结它们在高可用性堆栈中的位置。这将为我们提供一个良好的基础,这对于提升楼梯是必不可少的。高水平的楼梯将研究所需的基础设施和不同的存储要求和选项,使用AlwaysOn可用性组和防汛信息系统。
之后的每一个楼梯级你将获得进一步了解AlwaysOn的构建。虽然作为一个DBA,你可能没有与核心基础设施项目在AlwaysOn和防汛信息系统有直接的作用,它有助于充分理解如何所有的技术整合。最后的楼梯会导致功能的AlwaysOn配置。
我们首先要看基础知识,其中包括已经提到的3种技术中的每一种。
有用于AlwaysOn描述缩略语和缩写。我们在本文结尾包括了一个常用术语表。
不用再谈了,让我们深入研究一下每一项技术。
Windows服务器故障转移群集
Windows服务器故障转移群集(WSFC)为核心的高可用性(HA)的产品,坐在下面的所有的微软应用程序的高可用性。由世界科幻大会是Windows服务器操作系统软件套件的一部分。之前,你可以创建一个SQL Server故障转移群集实例,AlwaysOn高可用性组,甚至微软Exchange邮件服务器集群,您需要部署和配置WSFC。
Windows服务器故障转移集群提供了将多个计算机节点(物理和\\或虚拟)结合起来为高可用性服务的一组应用程序的能力。应用程序是服务器软件,如SQL Server或Exchange,我们希望能够在任何节点上运行。通过向客户机提供一个虚拟接入点,包括一个唯一的IP地址和唯一的计算机名或“虚拟网络名称”,可以获得一个高可用性的应用程序。此地址和虚拟名称成为应用程序组中的资源,并在令牌等参与节点之间传递。活动计算机节点的一个关键硬件故障将导致在该节点上运行的组服务的丢失。群集服务将自动尝试在当前节点或合作节点上重新启动组,这取决于故障类型(硬件或软件)。
在较高的级别上,客户访问点详细信息连同任何磁盘和服务资源一起转移到故障转移伙伴节点。群集实例的故障转移会导致客户机连接断开;客户端可以在另一个节点上的服务可用时重新连接。常见的故障通常是其中之一,但应用程序的任何故障都可能导致服务迁移到另一个节点:
公共网卡或网络故障
电源故障
主板故障
CPU故障
与wsfcs,集群应用程序安装到不同的组或“应用”,它包含一组资源,如磁盘、服务、IP地址等集团及其资源是在任何一个时间,一个节点拥有的资源,无法从任何其他的伙伴节点除非计划开关或故障转移到该节点的发生。
Windows服务器故障转移群集的典型视图如下所示。群集节点都通过网络连接,和域控制器和DNS服务工作与WSFC允许客户端连接到虚拟IP或虚拟网络名称,无论在哪个节点的服务正在运行。
对于一个FCI的部署,计算机节点必须使用共享存储,是每一个节点,通常是从一个三。对于一个典型的AlwaysOn组部署的节点,利用自己的本地存储,而不是与其他集群伙伴共享。
虽然集群节点可能有不同的硬件,但通常最好使硬件在节点之间保持一致,以避免任何功能较弱的节点必须处理超出其能力的负载的情况。但是,节点必须使用相同的OS补丁级别和网络配置;在部署Windows服务器故障转移群集之前验证配置时,这一点将变得清晰起来。Windows Server版本(Windows 2008中的Windows 2003, 16节点中的8个节点和Windows 64中的2012个节点)之间的最大集群节点计数不同。
部署健壮的Windows服务器故障转移群集需要仔细设计、支持的硬件和Windows服务器操作系统的适当版本。地理图形分散集群(跨多个WAN集群)进一步提高了设计和规划的需要量显著增加的成本以及。
它是要知道一个WSFC提供故障转移伙伴能力重要。这些应用程序不是负载平衡的,也不是跨节点扩展的。每个服务只在一个节点上运行。
通常,在大型多节点集群中,您可以在Windows服务器故障转移群集节点的子集上安装集群应用程序。制作安装的应用程序在所有节点的错误可能会导致一些不良的故障转移,我们随后会看到,也违反了AlwaysOn组限制政策,确保所有的AlwaysOn实例驻留在集群中的各个节点。
这个由世界科幻大会需要某种形式的调解控制集群资源的所有权。此中介以群集仲裁的形式提供。由于Windows 2003 SP1,这个法定人数采取的形式,节点投票系统,以多数票需要维持法定人数。您还可以使用本地化集群的磁盘形式或多站点集群的远程文件共享额外的仲裁资源。从Windows Server 2012中,Quorums利用一个动态节点权重配置均衡集群票动态计划停运期间防止不必要的故障转移。我们将讨论更多的细节在未来水平的法定人数。
故障转移群集实例
SQLServer的故障转移群集实例一直是SQL Server产品中流行的高可用性技术。一个高度可用的SQL服务器实例被集群化,以减轻任何节点硬件故障和任何潜在的软件故障。这里唯一的薄弱环节是存储;存储子系统成为故障的唯一点。
故障转移群集实例的SQL Server实例,默认或命名,已被安装到一个WSFC为群集应用。集群应用程序通常具有以下资源:
IP地址
网络名称
共享磁盘(s)
SQL Server服务
SQL Server agent service
一个独立的实例共享相同的基本要求,除了与一个独立的实例,IP地址和networkname取自计算机节点和磁盘存储在计算机的本地磁盘资源提供。
在上图中,我们看到一个单一的FCI 2节点集群典型视图。SQLServer群集实例将使用任何共享存储,提出了节点的WSFC。通常这种存储将从SAN LUN的形式呈现。一个SQL Server FCI是部署在一个2步的过程,将在稍后的楼梯。现在,下面是部署SQL Server故障转移群集实例的2步过程的基本概述:
在第一计算机节点将参加FCI推出“新的SQL Server故障转移群集安装”向导。一旦完成并成功完成,您就准备好进入第2阶段了。
启动“添加节点到SQL Server故障转移群集在WSFC的任何计算机节点的向导,你想参加新的SQL Server FCI。
注:虽然标准版限制FCI 2节点,这并不表明多少节点拥有Windows群集成员身份(你可以拥有任意数量达到最高的操作系统)。该限制在SQLServer安装程序级别上执行。
FCI是一个有点像跑道接力切换过程;计算机节点拥有群集的SQL Server应用程序和资源,并提供了访问客户的SQL Server服务(持警棍)。当主动计算机节点(指挥棒掉落)失败时,一个合作伙伴节点进入并接管集群应用程序及其资源(拾起指挥棒)。
AlwaysOn可用性组
多年来,故障转移集群一直是为SQL Server提供高可用性的主要方法。当一个节点失败时,另一个接管向客户端提供SQLServer服务。AlwaysOn集成Windows服务器故障转移群集技术提供一个更具弹性的高可用性平台。
而聚类的作品在实例级,AlwaysOn配置在数据库级别。AlwaysOn可用性组的新技术,介绍了在SQL Server 2012中定义的组的数据库复制到一组只读伙伴实例,或复制品,因为它们是已知的在AlwaysOn。多个节点每个主机的同步副本的AlwaysOn数据库(S),并获得最好的倾听者的配置(更多的在这不久)。
AlwaysOn可用性组需要一个或多个辅助副本主机复制的高可用的数据库(S)。这些辅助数据库可能不是可读的,也不是可读的。它们也可以以异步或同步方式更新。异步副本只支持手动强制故障转移而同步复制支持自动或手动故障转移。
二次只读副本可能被配置为响应只读查询,您也可以针对次要的备份/维护操作来减轻对主数据库的压力。这种主次关系也是可逆的,以确保真正的高可用性。任何适当配置的只读合作伙伴都可能在系统内发生故障时起主要作用。
在依靠WSFC核心功能实现的高可用性,AO提供,但不需要任何下列资源共享与FCI相关。
共享磁盘
共享IP地址
共享的网络名称
共享SQL Server和SQLServer代理资源
这种共享资源规则有一个例外。创建一个在组的听众时,这将创建一个IP地址和网络名称资源将由AO组副本共享。
正如我们已经发现的,故障转移群集实例的链中的薄弱环节是共享存储。这里有很多方法可以实现冗余,但它通常要付出很大的代价,而且通常很难设置和维护。当然,正如前面提到的,故障转移群集实例只会减轻服务器硬件。它不提供单一的甚至多个辅助数据库。在SQL Server 2012之前,我们在SQLServer版本中有数据库镜像,但这些仅为单个、不可读的辅助数据库提供范围。
仍然使用熟悉的SQL Server AlwaysOn端点实例通信。使用“可用性组部署向导”时自动配置端点。向导驱动的部署提供了最简单的部署路线,而手动部署需要大量人工交互。尽管如此,一个基本的AlwaysOn组配置仍然是非常容易部署和配置和提供的哈,是以前没有的而不诉诸特征整合复杂的水平。
您还可以创建一个高度可用的侦听器服务,您将使用它来接收传入到可用性组的连接。侦听器由唯一的IP地址和唯一的虚拟网络名组成。这是使数据库在组内高可用性的最重要的变化之一。
一个AlwaysOn可用性组的创建过程中,聚集作用是Windows服务器故障转移群集内创建并包含一个单一的资源。这个资源是没有合作伙伴节点故障转移期间和AlwaysOn组标识为AlwaysOn主副本组。
AlwaysOn的倾听者
听者,当配置,将创建资源和驻留在故障转移群集应用程序角色的AlwaysOn可用性组。资源是
虚拟IP地址
虚拟网络名称
侦听器使用TCP端口接收传入连接,默认情况下连接到主副本。当只读路由被配置时,指定只读意图连接的侦听器的连接将被路由到辅助伙伴,而不是主副本。这是另一种减轻主副本负载的方法。
故障转移群集的AlwaysOn组中,应用程序和资源都失败了在群集节点之间。集群应用程序的节点位置跟踪主副本及其底层节点,并按需要在集群中移动。其中主要的副本是一个群集的SQL Server实例,听者为FCI \副本活动节点拥有。
结论
这就总结了楼梯的第1级,它提供了一个快速介绍3个核心技术,用于使我们的SQL服务器实例和它们的对象高度可用。在我们的高可用性栈我们WSFC为基础的水平,这是一个FCI或AlwaysOn可用性组安装的基本要求。Next we have the FCI, which sits atop the WSFC and relies on the cluster to serve and protect the SQL Server instance. 最后我们的AlwaysOn组,坐在SQL Server和SQL Server故障转移群集实例独立实例。
在第2级中,我们将查看SQL Server高可用性中可用的存储类型及其典型用法。这将帮助您了解未来楼梯的水平系列。
词汇表
AO |
AlwaysOn可用性组 |
FCI |
SQL Server的故障转移群集实例 |
TCP/IP |
传输控制协议/因特网协议。微软客户端网络使用的网络协议 |
OS/NOS |
操作系统/ NOS |
WSFC |
世界科幻大会 |
LAN |
局域网 |
WAN |
广域网 |
DNS |
域名服务器 |
DHCP |
动态主机配置协议,自动将IP地址分配给网络计算机
|
IP Address |
Ip地址 |
AD |
广告 |
DR |
灾难恢复 |
SPF |
防晒因子 |
SCSI |
小型计算机系统接口 |
iSCSI |
因特网小型计算机系统接口 |
Replica |
复制品 |
原翻译链接:
http://www.sqlservercentral.com/articles/Failover+Clustered+Instance+(FCI)/107536/