View a markdown version of this page

快速入门指南:全局集群 - Amazon DocumentDB

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

快速入门指南:全局集群

配置

Amazon DocumentDB 全球集群至少跨越两个。 AWS 区域主区域支持具有一个主(写入器)实例和多达 15 个副本实例的集群,而辅助区域运行一个完全由多达 16 个副本实例组成的只读集群。一个全局群集最多可以有 10 个辅助区域。该表列出了全局集群中允许的集群、实例和副本的最大数量。

说明 主要 AWS 区域 中学 AWS 区域
集群 1 10(最大值)
写入器实例 1 0
Read-only 每个集群的实例(Amazon DocumentDB 副本) 15(最大值) 16(合计)
Read-only 实例(允许的最大实例,给定辅助区域的实际数量) 15:s s = 辅助节点的总数 AWS 区域

集群具有以下具体要求:

  • 数据库实例类要求-您仅可以使用 db.r5 类和 db.r6g 实例类。

  • AWS 区域 要求 — 主群集必须位于一个区域中,并且至少一个辅助群集必须位于同一账户的不同区域。您最多可以创建 10 个辅助(只读)集群,每个集群必须位于不同的区域。换句话说,没有两个集群可位于同一个区域中。

  • 命名要求:为每个集群选择的名称在所有区域中必须唯一。即使不同的集群位于不同的区域中,也不能对其使用相同的名称。

创建 Amazon DocumentDB 全局集群

您是否准备好构建您的第一个全球集群? 在本节中,我们将说明如何使用 AWS 管理控制台 或 AWS CLI 并按照以下说明创建包含新数据库集群和实例的全新全局集群。

  1. 在中 AWS 管理控制台,导航到亚马逊 Documen tDB。

  2. 抵达 Amazon DocumentDB 控制台后,选择集群

    Amazon DocumentDB 控制台中的“集群”页面。
  3. 选择创建

    “创建”按钮显示在“集群”表右上角。
  4. 相应地填写创建 Amazon DocumentDB 集群表单的配置部分:

    • 实例标识符:您可以输入此实例的唯一标识符,或允许 Amazon DocumentDB 基于集群标识符提供实例标识符。

    • 引擎版本:选择 4.0.0

    • 实例类:选择 db.r5.large

    • 实例数目:选择 3

    用于创建 Amazon DocumentDB 集群的“配置选项”表单。
  5. 身份验证部分,填写主用户名和主密码。

    用于为新的 Amazon DocumentDB 集群指定主用户名和密码的“身份验证”表单。
  6. 选择显示高级设置

    显示“取消”和“创建集群”按钮旁边的高级设置切换按钮。
  7. 网络设置 部分中:

    • 保留虚拟私有云(VPC)子网组的默认选项。

      “网络设置”表单,其中显示了 VPC、子网组和 VPC 安全组等选项。VPC 和子网组字段已选择默认选项。
    • 对于 VPC 安全组,应已添加默认(VPC)

      “网络设置”表单,显示已添加默认 VPC。
    • VPC 安全组字段中键DocDB入并选择 DocDB-Inbound (VFC)

      DocDB-Inbound 在 VPC 安全组下拉菜单中选择 VFC。
  8. 对于群集选项Encryption-at-rest,保留默认选项。

    在选择默认选项的情况下 Encryption-at-rest 对选项和表单进行聚类。
  9. 对于备份日志导出,保留默认选项。

    “备份”和“日志导出”表单已选择默认选项。
  10. 对于维护标签删除保护,保留默认选项。

    “维护”、“标签”和“删除保护”表单已选择默认选项。
  11. 现在选择创建集群

    在集群创建过程结束时显示“创建集群”按钮。

要创建 Amazon DocumentDB 区域集群,请调用 create-global-cluster。 AWS CLI以下 AWS CLI 命令创建名为的 Amazon DocumentDB 集群。global-cluster-id有关删除保护的更多信息,请参阅 删除 Amazon DocumentDB 集群

此外,--engine-version 是一个默认成主引擎最新版本的可选参数。当前的默认引擎版本为5.0.0(注意:Amazon DocumentDB 8.0 可用,但必须明确指定为)。8.0.0发布主引擎新版本时,--engine-version 的默认引擎版本将更新,以反映最近的主引擎版本。因此,对于生产工作负载,尤其是那些依赖脚本、自动化或 CloudFormation 模板的工作负载,我们建议您明确指定预期的主要版本。--engine-version

如果未指定 db-subnet-group-namevpc-security-group-id,则 Amazon DocumentDB 将使用给定区域的默认子网组和 Amazon VPC 安全组。

在以下示例中,将每个 user input placeholder 替换为您自己的信息。

对于 Linux、macOS 或 Unix:

aws docdb create-db-cluster \ --global-cluster-identifier global-cluster-id \ --source-db-cluster-identifier arn:aws:rds:us-east-1:111122223333:cluster-id

对于 Windows:

aws docdb create-db-cluster ^ --global-cluster-identifier global-cluster-id ^ --source-db-cluster-identifier arn:aws:rds:us-east-1:111122223333:cluster-id

此操作的输出将类似于下文(JSON 格式)。

{ "DBCluster": { "StorageEncrypted": false, "DBClusterMembers": [], "Engine": "docdb", "DeletionProtection" : "enabled", "ClusterCreateTime": "2018-11-26T17:15:19.885Z", "DBSubnetGroup": "default", "EngineVersion": "4.0.0", "MasterUsername": "masteruser", "BackupRetentionPeriod": 1, "DBClusterArn": "arn:aws:rds:us-east-1:123456789012:cluster:cluster-id", "DBClusterIdentifier": "cluster-id", "MultiAZ": false, "DBClusterParameterGroup": "default.docdb4.0", "PreferredBackupWindow": "09:12-09:42", "DbClusterResourceId": "cluster-KQSGI4MHU4NTDDRVNLNTU7XVAY", "PreferredMaintenanceWindow": "tue:04:17-tue:04:47", "Port": 27017, "Status": "creating", "ReaderEndpoint": "cluster-id.cluster-ro-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com", "AssociatedRoles": [], "HostedZoneId": "ZNKXTT8WH85VW", "VpcSecurityGroups": [ { "VpcSecurityGroupId": "sg-77186e0d", "Status": "active" } ], "AvailabilityZones": [ "us-east-1a", "us-east-1c", "us-east-1e" ], "Endpoint": "cluster-id.cluster-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com" } }

创建集群需要几分钟时间。您可以使用 AWS 管理控制台 或 AWS CLI 来监控集群的状态。有关更多信息,请参阅 监控 Amazon DocumentDB 集群的状态

重要

当您使用创建 Amazon DocumentDB 区域集群时,不会创建任何实例。 AWS CLI 因此,您必须显式创建主实例和所需的任何副本实例。您可以使用控制台或创建 AWS CLI 实例。有关更多信息,请参阅亚马逊 DocumentDB API 参考中的向集群添加 Amazon DocumentDB 实例和 createdbCluster。

一旦您的区域集群可用,您就可以使用以下说明在另一个区域添加辅助集群:添加一个 AWS 区域 到亚马逊 DocumentDB 全球集群。添加区域后,您的区域集群将成为您的主集群,而您在自己选择的区域中有一个新的辅助集群。

添加一个 AWS 区域 到亚马逊 DocumentDB 全球集群

全局群集需要在与主群集不同的区域中至少有一个辅助群集,并且您最多可以添加 10 个辅助群集。注意:对于添加的每个辅助集群,您必须减少主集群的允许副本的数量。例如,如果您的全局群集有 10 个辅助区域,则您的主集群只能有 5 个(而不是 15 个)副本。有关更多信息,请参阅 配置

  1. 登录 AWS 管理控制台 并打开亚马逊 DocumentDB 控制台。

  2. 在导航窗格中,选择集群

    Amazon DocumentDB 控制台中的“集群”页面。
  3. 选择您要要向其中添加辅助集群的集群。确保集群为 Available

    显示可用状态的区域和全球集群列表,突出显示了 mydocdbglobalcluster。
  4. 选择操作的下拉菜单列表,然后选择添加区域

    “集群”界面上的“操作”下拉列表显示了“添加区域”选项。
  5. 添加 AWS 区域 页面上,选择辅助区域。您不能为同一个全局集群选择已有辅助集群的区域。此外,该区域也不能是主集群所在的同一个区域。如果这是您正在添加的第一个区域,则您还必须指定您选择的全局集群标识符。

    使用 “添加 AWS 区域 表单” 上的下拉菜单选择辅助区域。
  6. 在新区域中填写辅助集群的其余字段,然后选择创建集群。完成添加区域后,您可以在 AWS 管理控制台中的集群列表中看到该区域。

    向集群添加区域的最后步骤,显示配置表单、每小时成本估算和创建集群按钮。
  • 使用带有 (--global-cluster-identifier) 全局集群名称的 create-db-cluster CLI 命令。对于其他参数,请执行以下操作:

    • 对于--region,请选择与您的主要区域不同的 AWS 区域 区域。

    • --engine--engine-version 参数选择特定的值。

    • 对于加密集群,请将您的主 AWS 区域 集群指定--source-region为用于加密的集群。

以下示例创建了一个新 Amazon DocumentDB 数据库集群,并将其作为只读辅助集群附加到全局集群。在最后一步中,实例将添加到新集群。

在以下示例中,将每个 user input placeholder 替换为您自己的信息。

对于 Linux、macOS 或 Unix:

aws docdb --region secondary-region-id \ create-db-cluster \ --db-cluster-identifier cluster-id \ --global-cluster-identifier global-cluster-id \ --engine-version version \ --engine docdb aws docdb --region secondary-region-id \ create-db-instance \ --db-cluster-identifier cluster-id \ --global-cluster-identifier global-cluster-id \ --engine-version version \ --engine docdb

对于 Windows:

aws docdb --region secondary-region-id ^ create-db-cluster ^ --db-cluster-identifier cluster-id ^ --global-cluster-identifier global-cluster-id ^ --engine-version version ^ --engine docdb aws docdb --region secondary-region-id ^ create-db-instance ^ --db-cluster-identifier cluster-id ^ --global-cluster-identifier global-cluster-id ^ --engine-version version ^ --engine docdb

对您的 Amazon DocumentDB 全局集群使用快照

您可以恢复 Amazon DocumentDB 集群的快照以用作您全局集群的起点。要这样做,您必须恢复快照并创建新集群。这个集群将充当您全局群集的主集群。然后,您可以将另一个区域添加到恢复的集群,从而将其转变成全局集群。