我们创建了一个存储 API,前端应用程序将调用该 API 以从 Azure Blob 存储帐户检索数据。存储帐户位于加拿大中部,使用 GZRS 复制并使用专用端点。因此,现在我们必须进行灾难恢复测试,以确保存储帐户从主要区域故障转移到次要区域,并且存储 API 连接到次要区域并从次要区域而不是主要区域获取数据。因此,如果我们按照本文在门户中执行用户启动的故障转移 https://learn.microsoft.com/en-us/azure/storage/common/storage-initiate-account-failover?toc=%2Fazure%2Fstorage%2Fblobs%2Ftoc.json&tabs=azure-powershell
一旦主区域关闭,存储 API 是否会自动将流量路由到辅助区域? 我们有一个仅在具有专用端点 IP 的代码中定义的连接字符串
此外,我还有一个与此相关的问题。
<小时/>在 GRS 或 GZRS 的情况下,存储帐户的辅助区域是否被视为配对区域,并且用户无法自行选择,对吗?
最佳答案
回答您的第一个问题:
来自微软文档:
发生故障转移时,次要区域将成为新的主要区域,然后可以从这个新的主要区域访问所有数据。与您的存储帐户相关的所有 DNS 记录的 DNS 终结点都会更新为指向新的主要区域。此重定向不需要更改您的应用程序代码。
链接到上述文档:https://learn.microsoft.com/en-us/learn/modules/ha-application-storage-with-grs/4-design-applications-ha-dr
但是您应该在应用程序中实现断路器模式,以便应用程序在再次启动并运行时再次从主区域读取。 有关在应用程序中实现断路器模式的示例,请参阅:https://learn.microsoft.com/en-us/learn/modules/ha-application-storage-with-grs/5-exercise-deploy-ha-application
回答你的第二个问题:用户无法选择次要区域。 Azure 自动使用 GRS/GZRS 的配对区域。 请参阅:https://learn.microsoft.com/en-us/learn/modules/ha-application-storage-with-grs/2-storage-account-replication-features
地理区域冗余存储 (GZRS) 结合了 ZRS 和 GRS 的高可用性优势。通过这种复制类型,您的数据可以跨一个区域的三个可用区进行复制。数据还会复制三次到与其配对的另一个次要区域。这样,您的区域冗余数据也可以免受区域级中断的影响。
关于azure - Blob 存储 GZRS 复制的 DR 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66588845/