Date: 2月 15, 2018
标签:Windows Azure
使用DataKeeper在Windows Azure中为DR创建多站点群集
这是我使用SIOS DataKeeper Cluster Edition的Windows Azure高可用性和灾难恢复系列的第4篇文章。这是有关创建多站点群集的过程的分步说明。它建立在我在前三篇文章中构建的Azure配置的基础上……
- 如何创建Windows Azure云的站点到站点VPN通道
- 将数据中心扩展到Azure云
- 在Windows Azure中使用DataKeeper创建SQL Server 2014 AlwaysOn故障转移群集(FCI)实例
我们现在要将现有群集(SQL1和SQL2)扩展到本地数据中心SQL3。此配置将为您在Azure云中的应用程序提供高可用性,以及在Azure遭受重大中断时提供灾难恢复解决方案。您可以将本地数据中心作为主站点进行反向配置,并将Windows Azure用作灾难恢复站点。当然,这个解决方案将SQL Server描述为应用程序,但任何可识别群集的应用程序都可以用相同的方式进行保护。
此时,如果您一直沿着您的网络进行观看,请看下面的插图。
将SQL3添加到群集
要将SQL3添加到集群,我们需要做的第一件事是确保SQL3已启动并运行,完全修补并添加到域中。我们还需要确保它具有与Azure中使用的F:驱动器大小相同的F:驱动器。最后,如果您在SQL集群上重新部署了tempdb,请确保您具有tempdb在SQL1上预先配置的目录结构。
接下来,我们将故障转移群集功能添加到SQL3。
通过在SQL3上安装故障转移群集,我们将在SQL1上打开故障转移群集管理器,然后单击添加节点
选择SQL3并单击下一步
在SQL3上运行所有验证测试
我们来看看验证报告中的一些警告
RegisterAllProvidersIP属性设置为1,当您打算创建多站点群集时,这可能很好。您可以在此处阅读有关此设置的更多信息:http://technet.microsoft.com/en-us/library/ca35febe-9f0b-48a0-aa9b-a83725feb4ae
接下来的警告提到集群节点之间只有一个网络。目前,Azure仅支持VM之间的单个网络接口。请注意,您无法对此警告做任何事情。但是,这个网络接口在幕后是完全冗余的。安全地忽略此消息。
当然,你会看到很多关于存储的警告。这是因为这个群集没有共享存储。相反,它依赖于SIOS DataKeeper Cluster Edition的复制存储。如下所述,因为数据库将与复制软件保持同步,所以这非常好。
我们现在准备将SQL3添加到群集中。
一旦你点击完成,SQL3将被添加到集群,如下所示。
但是,我们需要做一些事情来完成此安装。接下来我们将执行以下步骤:
- 向群集名称对象添加一个额外的IP地址
- 调整心跳设置
- 将DataKeeper镜像扩展到SQL3
- 在SQL3上安装SQL 2014
向群集名称对象添加一个额外的IP地址
为了创建多站点群集,我们将SQL3添加到群集中。因此,从单个站点群集,它将成为多子网群集。如果群集最初创建为单个站点群集,并且稍后添加驻留在其他子网中的节点,则必须手动向群集名称对象添加第二个IP地址并创建OR依赖项。有关此主题的更多信息,请查看下面的文章。 http://blogs.msdn.com/b/clustering/archive/2011/08/31/10204142.aspx
要向群集名称对象(CNO)添加第二个IP地址,我们必须使用上述文章中描述的PowerShell命令。
现在,如果您正在参考我引用的MSDN文章,那么您会希望在GUI中看到这些“NewIP”。但是,至少在Windows 2012 R2中,我目前没有在GUI中看到这个资源。
但是,如果我右键单击SQLCLUSTER名称并选择属性并尝试将NewIP添加为依赖项,我会将其列为可能的资源。
选择“NewIP”,并使依赖类型为“OR”,如下所示。
一旦你点击确定,它现在就会在GUI中显示为需要配置的IP地址。
我们现在可以选择此IP地址的属性,并将地址配置为使用10.10.10.0/24子网中当前未使用的IP地址,该子网与SQL3所在的子网相同。
调整心跳设置
我们现在准备好调整心跳设置。从本质上讲,我们对网络通信会更加宽容。此外,由于SQL3位于VPN连接上,线路上有一些延迟,我们在集群节点上只有单个网络接口。我强烈建议您阅读Elden Christensen撰写的这篇文章,以帮助您确定满足您要求的正确设置:http://blogs.msdn.com/b/clustering/archive/2012/11/21/10370765.aspx
对于我们的环境,我们将通过将SameSubnetThreshold设置为10个心跳并将CrossSubnetThreshold设置为20个心跳来转到他称为“Relaxed”设置的内容。
这些命令是:
(get-cluster).SameSubnetThreshold = 10
(get-cluster).CrossSubnetThreshold = 20
这意味着心跳将继续每1秒发送一次,但SQL1和SQL2只会在10次错过心跳后才被认为是死机。在20次错过心跳后,SQL3将会死亡。这会稍微增加您的恢复时间目标(5-10秒),但它也会消除潜在的虚假故障转移。
将DataKeeper镜像扩展到SQL3
在我们可以在SQL3上安装SQL 2014之前,我们必须扩展DataKeeper镜像,使其包含SQL3作为复制目标。当然,您必须首先在SQL3上安装DataKeeper Cluster Edition,并确保它的F:驱动器至少与镜像源一样大。一旦安装DataKeeper
在SQL3上安装SQL 2014
现在是时候将SQL 2014安装到第三个节点上了。该过程与在SQL2中安装的过程完全相同。首先在SQL3上启动SQL安装程序。
贯穿所有步骤…
在安装的这个时候,你必须选择一个对SQL3的子网有效的IP地址。群集将为该客户端接入点添加具有“或”依赖性的IP地址。
输入您的服务帐户的密码
完成安装后,让开始的乐趣。你现在有一个应该看起来像这样的多站点SQL Server集群。
有关创建多站点群集或任何群集问题的信息,请阅读此处以了解SIOS如何帮助您实现更好的解决方案
经https://clusteringformeremortals.com/2014/01/14/creating-a-multi-site-cluster-in-windows-azure-for-disaster-recovery-azure-cloud/许可转载