管理 Azure Cosmos DB for MongoDB vCore 群集上的跨区域复制

适用对象: MongoDB vCore

Azure Cosmos DB for MongoDB vCore 允许将数据连续流式传输到另一个 Azure 区域中的副本群集。 该功能提供跨区域灾难恢复 (DR) 保护和跨区域的读取可伸缩性。 本文档可作为想要了解如何管理群集的跨区域复制的开发人员的快速指南。

先决条件

启用跨区域复制

在群集创建过程中,若要在新群集上启用跨区域复制,请执行以下步骤:

  1. 按照步骤开始创建群集,并填写新 Azure Cosmos DB for MongoDB vCore 群集的“基本信息”选项卡
  2. 在“全局分发”选项卡上,为“另一区域中的只读副本”选择“启用”
  3. 在“只读副本名称”字段中提供副本群集名称。
  4. 在“只读副本区域”中选择一个区域。 副本群集托管在所选 Azure 区域中。
  5. (可选)在“网络”选项卡上为群集选择所需的网络访问设置。
  6. 在“查看 + 创建”选项卡上,查看群集配置详细信息,然后选择“创建”

注意

副本群集在与其主群集相同的 Azure 订阅和资源组中创建。

创建群集后,若要在新群集上启用跨区域复制,请执行以下步骤:

  1. 按步骤创建新的 Azure Cosmos DB for MongoDB vCore 群集
  2. 跳过“全局分发”选项卡。此选项卡用于在主群集预配期间创建群集副本。
  3. 创建群集后,在群集边栏的“设置”下选择“全局分发”
  4. 选择“添加新的只读副本”
  5. 在“只读副本名称”字段中提供副本群集名称。
  6. 在“只读副本区域”中选择一个区域。 副本群集托管在所选 Azure 区域中。
  7. 验证所选内容,然后选择“保存”按钮以确认副本创建。

若要使副本群集可用于读取操作,请通过配置用于公共访问的防火墙规则或添加用于实现安全专用访问的专用终结点来调整其网络设置。

提升副本

若要将群集副本提升为读写群集,请执行以下步骤:

  1. 选择要在门户中提升的群集副本。
  2. 在群集边栏的“设置”下选择“全局分发”
  3. 在“全局分发”页上,选择“提升”
  4. 在“提升 <群集名称>”屏幕上,仔细检查群集副本的名称,阅读警告文本,然后选择“提升”

提升群集副本后,它将成为可读和可写群集。

检查群集复制角色和复制区域

若要检查群集的复制角色,请执行以下步骤:

  1. 选择现有的 Azure Cosmos DB for MongoDB vCore 群集。
  2. 选择“概述”页。
  3. 检查“读取区域”(在主群集上)或“写入区域”(在副本群集上)值。

如果“读取区域”值为“未启用”,则该群集已禁用跨区域复制。

禁用跨区域复制

若要禁用跨区域复制,请执行以下步骤:

  1. 选择 Azure Cosmos DB for MongoDB vCore 副本群集。
  2. 选择“概述”。
  3. 确认它是副本群集
  4. 在 Azure 门户中的副本群集的“概述”页上,选择“删除”
  5. 在“删除 <副本名称>”屏幕上,阅读警告文本,然后在“确认帐户名称”字段中输入群集的名称。
  6. 选择“删除”以确认删除该副本。

如果需要删除主群集和副本群集,则需要先删除副本群集。

使用连接字符串

可以像连接到常规读写群集一样连接到群集副本。 请按照以下步骤获取不同情况的连接字符串

  1. 在门户中选择主群集或其群集副本。
  2. 在群集边栏的“设置”下选择“连接字符串”
  3. 复制当前所选群集的自连接字符串,以连接到该群集。

自连接字符串会在进行群集副本升级后保留。 你可以继续使用字符串或全局读写连接字符串来支持读取操作。 如果使用自连接字符串支持写入操作,则需要将应用程序中的连接字符串更新为指向升级的副本群集,以便在升级完成后继续写入到相应数据库。