不带共享存储的 Microsoft SQL Server 标准高可用性

不带共享存储的 Microsoft SQL Server 标准高可用性

我是一名软件开发人员,在管理 SQL 方面经验不多,所以请耐心等待!

我们正在开发一款需要高可用性和高弹性的软件。
该应用程序将使用 SQL 服务器来存储其大部分操作数据。

该应用程序将从 2 个独立的物理位置运行,并且不允许在这两个位置之间共享磁盘(SAN 或其他),共享 SMB 是一种可能性,但我们的安全人员并不喜欢。

此应用程序不会将大量数据提交给 SQL,但在现实世界中将部署该系统的 26 个实例,总共 52 个 SQL 服务器实例,因此为了削减成本,我们非常确定 SQL 标准是我们能承受的最昂贵的!!!!

由于 DBase 镜像似乎在不久的将来就会被淘汰,我有哪些选择?基本应用模型

答案1

您可以使用 AlwaysOn。

AlwaysOn 是实现此目的的“新”方法,也是数据库镜像在 SQL Server 中变得过时的原因。

它的工作原理基本上是这样的:

在此处输入图片描述

您需要为网络方面创建一个 Windows 集群。不需要共享存储,但您需要一个文件共享,以便实例同步日志(只能使用完整恢复中的数据库)和集群中的仲裁(如果您只有 2 个节点)。

当您在同步提交中设置它们时,您可以进行近乎在线的故障转移。您可以编写应用程序来处理小干扰。(失败一次?=> 再试一次)

使用 SQL 2014 STD,您可以为 2 个节点设置 AlwaysOn。在 Windows 2012 中,故障转移群集也包含在标准版中。

答案2

正如 Bart De Vos 提到的,你可以使用SQL Server AlwaysOn 可用性组(不需要 SAN),但此功能仅适用于企业版。

或者你也可以使用SQL Server AlwaysOn 故障转移群集它存在于标准版本。但是 AlwaysOn Cluster 需要 SAN,不过您可以使用第三方软件(如 SIOS DataKeeper)模拟 SAN。

更多信息请参阅以下链接: http://clusteringformeremortals.com/2014/01/10/creating-a-sql-server-2014-alwayson-failover-cluster-fci-instance-in-windows-azure-iaas-azure-cloud/

http://blogs.technet.com/b/keithmayer/archive/2013/02/04/step-by-step-building-a-windows-server-2012-failover-cluster-study-lab-in-the-cloud-with-windows-azure.aspx

相关内容