我试图了解 Azure 混合和地理区域情况下的自动故障转移与始终在可用性组上的对比:
是否可以在同一个可用性组中拥有本地 SQL 数据库、VM SQL 数据库和 Azure 数据库?或者是否需要将内部部署数据库与单独的始终在线可用性组中的云数据库分开?
在混合情况下无法进行自动故障转移,必须手动强制执行。但是,自动故障转移是否可以在云中跨区域实现,还是必须在同一区域进行?
我试图了解 Azure 混合和地理区域情况下的自动故障转移与始终在可用性组上的对比:
是否可以在同一个可用性组中拥有本地 SQL 数据库、VM SQL 数据库和 Azure 数据库?或者是否需要将内部部署数据库与单独的始终在线可用性组中的云数据库分开?
在混合情况下无法进行自动故障转移,必须手动强制执行。但是,自动故障转移是否可以在云中跨区域实现,还是必须在同一区域进行?
本地 SQL Server 和托管在 Azure 中的 VM 上的 SQL Server 大致相同,并且可以配置为同一可用性组的一部分,尽管正如您提到的那样,故障转移是手动的而不是自动的。
此链接https://learn.microsoft.com/en-us/azure/virtual-machines/windows/sqlclassic/virtual-machines-windows-classic-sql-onprem-availability提供了更多详细信息。
Azure 数据库(即服务)是另一回事。它绝对基于 SQL Server,它的高可用性由与 Always On 可用性组非常相似的东西提供。但它完全由 Microsoft 管理,因此您无法将其作为成员添加到您自己的可用性组中。
此链接https://learn.microsoft.com/en-us/azure/sql-database/sql-database-high-availability有更多详细信息。
要回答你的第二个问题,你应该查看不同区域的资源,就好像它们在不同的数据中心(它们是)。通过使用 VPN 隧道和明智地使用云见证,您可以在这些情况下进行自动故障转移。但是,我建议不要自动在数据中心之间失败,这应该是一个深思熟虑的决定。
但这主要取决于您的 HA/DR 要求。我喜欢 Azure,我们在我当前的组织中大量使用它,但跨数据中心或本地/云扩展并不像微软希望您相信的那样轻松。