首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AlwaysOn AG与FCI

AlwaysOn AG与FCI
EN

Database Administration用户
提问于 2018-02-01 06:37:30
回答 2查看 9.2K关注 0票数 7

在AlwaysOn可用性组(AG)和AlwaysOn故障转移群集实例(FCI)的整个MS文档中,我看到以下模式:

  1. FCI适用于HA场景。
  2. AG同步二级副本与主副本共存,适用于HA场景。
  3. 在不同的数据中心中,AG异步二级副本用于DR场景。

这是一个示例MS链接讨论了这一点

由于选项1和2都适用于HA场景,我如何在两者之间作出决定?如果MS发布了#1和#2的成本和RPO/RTO指标,就很容易决定我想要哪一个。

或者,也许有一种不同的方法来理解这些选项之间的ROI差异。例如,可能选项2最适合VLDB,而选项1最适合于非常高的事务量。我不知道。

那么,DBA在选项#1和#2之间选择的选择标准是什么?

让事情更加复杂的是,我知道选择1和2可以结合在一起!什么时候把这两种选择结合起来是明智的呢?什么时候把这两种选择结合起来是没有意义的呢?我知道当这些选项组合在一起时,AG不再支持自动故障转移.这是有趣的琐事,但没有回答我的问题。

顺便说一句,我打算将我的最后解决方案提供给Azure IaaS。如果我使用一个始终在FCI,我很可能会创建准SAN使用存储空间直接(S2D)。

更新

我找到了两篇文章作了比较。第一个是博士,另一个是选择合适的可用性技术。两者都有这样的图表:

代码语言:javascript
复制
╔═════════════════════════════╦══════════════════════════╗
║ FCI                         ║ AG                       ║
╠═════════════════════════════╬══════════════════════════╣
║  * Server Level             ║  * Database Level        ║
╠═════════════════════════════╬══════════════════════════╣
║  * Requires shared storage  ║  * Uses direct           ║
║     (SAN or Storage Spaces  ║     attached storage     ║
║     Direct)                 ║                          ║
╠═════════════════════════════╬══════════════════════════╣
║  * RTO from 30              ║  * RTO typically less    ║
║     seconds to 20 minutes.  ║     than 30 seconds      ║
╠═════════════════════════════╬══════════════════════════╣
║  * RPO: no data loss.       ║  * RPO: ???              ║
╠═════════════════════════════╬══════════════════════════╣
║  * Only Passive Secondaries ║  * Active or Passive     ║
║                             ║     Secondaries          ║
╠═════════════════════════════╬══════════════════════════╣
║  * One SQL Server           ║  * Multiple SQL Server   ║
║     instance/license        ║     instances / licenses ║
╚═════════════════════════════╩══════════════════════════╝

这篇文章没有评论AG RPO,但我在其他地方读到,在从同步次副本恢复时没有数据丢失。我不知道这是否正确,我也不知道异步二级副本的RPO可能是什么。在Azure中,需要两个域控制器的AG资源是用AG创建的(不管您是否有自己的域控制器)。我不知道Azure FCI是否有同样严格的要求.

最重要的是--我仍然不知道为什么把这两种技术结合起来是有价值的。我只读到它的“改进”或“最大化”可用性。这是一个模糊的主张,海事组织。

更多的细节:我还发现了一个建议应避免两个节点的FCI.的讨论。

EN

回答 2

Database Administration用户

发布于 2018-02-05 09:32:15

总的来说,由于上述各种原因,FCI比AG更有利。当然,2节点FCI是完全伟大的,但不应该直接构建在存储空间之上,因为已知S2D在少于4个节点部署(来源)中存在问题。

对于Azure,我宁愿坚持使用一个VSAN,它可以在2或3个节点场景(如(示例) )中工作。

这里是关于FCI vs的更多信息,您可能也会发现这些信息很有用。

票数 6
EN

Database Administration用户

发布于 2018-02-01 07:25:57

这取决于每个客户的需求和需求,对于HA而言,哪一种是更好的选择(选项1和2)。一般检查的各种标准如下:

如果这是一个标准版本,那么您将需要使用FCI (选项1)。

使用AG (同步-选项2),如果以下所有条件都满足:

  • 拥有Server企业版(Basic自Server 2016以来也可在标准版中使用)
  • 您需要并拥有存储多个数据库文件副本的存储能力,以提高安全性。存储是FCI中的一个单一故障点,因为它只有一组数据文件,而在AGs中只有多个数据文件。
  • 检查网络和磁盘延迟,以查看服务器A的磁盘到服务器B‘磁盘的总延迟是否在您的应用程序可接受的规范内,因为事务将在次要(B)服务器上提交之前不会返回到应用程序。
  • 请记住,服务器级对象不会自动从服务器A同步到服务器B,因为系统数据库没有同步。因此,要么手动同步参与服务器之间的所有服务器级对象,要么部署一个自动化解决方案,以在两个服务器之间同步这些服务器级别的对象。
  • 你有足够的专业知识来处理AG的运营问题。AGs比FCIs要复杂得多,因此您需要准备好解决AGs引起的任何问题,特别是性能问题。

如果需要将报告查询(或备份)卸载到辅助服务器以减少主实例上的负载,请使用AG。

我会结合(1和3)或(2和3)的HA和DR的目的,其中1或2将提供HA解决方案,3将是DR解决方案。因此,为了一个完整的HA和DR策略,最好是将1&3或2&3结合起来。

但我不确定合并1和2是否有什么好处。

票数 4
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/196793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档