本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
快速入门指南:全局集群
配置
Amazon DocumentDB 全球集群至少跨越两个 AWS 区域。主区域支持具有一个主(写入器)实例和多达 15 个副本实例的集群,而辅助区域运行一个完全由多达 16 个副本实例组成的只读集群。一个全局集群可以有多达五个辅助区域。该表列出了全局集群中允许的集群、实例和副本的最大数量。
| 描述 | 主 AWS 区域 | 辅助 AWS 区域 |
|---|---|---|
| 集群 | 1 | 5(最大值) |
| 写入器实例 | 1 | 0 |
| 每个集群的只读实例(Amazon DocumentDB 副本) | 15(最大值) | 16(合计) |
| 只读实例(允许的最大值,辅助区域的指定实际数量) | 15 - s | s = 辅助 AWS 区域 的总数 |
集群具有以下具体要求:
-
数据库实例类要求-您仅可以使用
db.r5类和db.r6g实例类。 -
AWS 区域 要求 – 主集群必须位于一个区域内,且至少一个辅助集群必须位于同一账户的不同区域内。您最多可以创建五个辅助(只读)集群,且每个集群必须在不同的区域中。换句话说,没有两个集群可位于同一个区域中。
-
命名要求 – 为每个集群选择的名称在所有区域中必须唯一。即使不同的集群位于不同的区域中,也不能对其使用相同的名称。
创建 Amazon DocumentDB 全局集群
您是否准备好构建您的第一个全球集群? 在本节中,我们将说明如何使用AWS 管理控制台或AWS CLI并按照以下说明创建包含新数据库集群和实例的全新全局集群。
-
在 AWS 管理控制台 中,导航到 Amazon DocumentDB。
-
抵达 Amazon DocumentDB 控制台后,选择集群。
-
选择创建。
-
相应地填写创建 Amazon DocumentDB 集群表单的配置部分:
-
实例标识符:您可以输入此实例的唯一标识符,或允许 Amazon DocumentDB 基于集群标识符提供实例标识符。
-
引擎版本:选择 4.0.0
-
实例类:选择 db.r5.large
-
实例数目:选择 3。
-
-
在身份验证部分,填写主用户名和主密码。
-
选择显示高级设置。
-
在网络设置 部分中:
-
保留虚拟私有云(VPC)和子网组的默认选项。
-
对于 VPC 安全组,应已添加默认(VPC)。
-
在 VPC 安全组字段中键入
DocDB,然后选择 DocDB-Inbound(VFC)。
-
-
对于集群选项和静态加密,保留默认选项。
-
对于备份和日志导出,保留默认选项。
-
对于维护、标签和删除保护,保留默认选项。
-
现在单击显示创建集群的按钮。
要创建 Amazon DocumentDB 区域集群,请调用 create-global-cluster AWS CLIglobal-cluster-id 的 Amazon DocumentDB 集群。有关删除保护的更多信息,请参阅 删除 Amazon DocumentDB 集群。
此外,--engine-version 是一个默认成主引擎最新版本的可选参数。主引擎当前版本是 5.0.0。发布主引擎新版本时,--engine-version 的默认引擎版本将更新,以反映最近的主引擎版本。因此,对于生产工作负载,尤其是那些依赖脚本、自动化或 CloudFormation 模板的生产工作负载,我们建议您将 --engine-version 显式指定成预期的主版本。
如果未指定 db-subnet-group-name 或 vpc-security-group-id,则 Amazon DocumentDB 将使用给定区域的默认子网组和 Amazon VPC 安全组。
在以下示例中,将每个用户输入占位符替换为您自己的信息。
对于 Linux、macOS 或 Unix:
aws docdb create-db-cluster \ --global-cluster-identifierglobal-cluster-id\ --source-db-cluster-identifier arn:aws:rds:us-east-1:111122223333:cluster-id
对于 Windows:
aws docdb create-db-cluster ^ --global-cluster-identifierglobal-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 集群的状态。
重要
当您使用 AWS CLI 创建 Amazon DocumentDB 区域集群时,将不会创建实例。因此,您必须显式创建主实例和所需的任何副本实例。您可以使用控制台或 AWS CLI 来创建实例。有关更多信息,请参阅 Amazon DocumentDB API 参考中的 向集群添加 Amazon DocumentDB 实例 和 CreateDBCluster。
一旦您的区域集群可用,您就可以使用以下说明在另一个区域添加辅助集群:向 Amazon DocumentDB 全局集群添加 AWS 区域。添加区域后,您的区域集群将成为您的主集群,而您在自己选择的区域中有一个新的辅助集群。
向 Amazon DocumentDB 全局集群添加 AWS 区域
全局集群在异于主集群的区域中需要至少一个辅助集群,并且您可以添加多达五个辅助集群。注意:对于添加的每个辅助集群,您必须减少主集群的允许副本的数量。例如,如果您的全局集群有五个辅助区域,则主集群只能有 10 个(而不是 15 个)副本。有关更多信息,请参阅 Amazon DocumentDB 全局集群的配置要求。
-
登录 AWS 管理控制台 并打开 Amazon DocumentDB 控制台。
-
在导航窗格中,选择集群。
-
选择您要要向其中添加辅助集群的集群。确保集群为
Available。
-
选择操作的下拉菜单列表,然后选择添加区域。
-
在添加 AWS 区域 页面上,选择辅助区域。您不能为同一个全局集群选择已有辅助集群的区域。此外,该区域也不能是主集群所在的同一个区域。如果这是您正在添加的第一个区域,则您还必须指定您选择的全局集群标识符。
-
在新区域中填写辅助集群的其余字段,然后选择创建集群。完成添加区域后,您可以在 AWS 管理控制台 中的集群列表中看到该区域。
-
使用带有
(--global-cluster-identifier)全局集群名称的create-db-clusterCLI 命令。对于其他参数,请执行以下操作:-
对于
--region,选择与主区域不同的 AWS 区域。 -
为
--engine和--engine-version参数选择特定的值。 -
对于加密集群,请将主 AWS 区域 指定为
--source-region以进行加密。
-
以下示例创建了一个新 Amazon DocumentDB 数据库集群,并将其作为只读辅助集群附加到全局集群。在最后一步中,实例将添加到新集群。
在以下示例中,将每个用户输入占位符替换为您自己的信息。
对于 Linux、macOS 或 Unix:
aws docdb --regionsecondary-region-id\ create-db-cluster \ --db-cluster-identifiercluster-id\ --global-cluster-identifierglobal-cluster-id\ --engine-versionversion\ --engine docdb aws docdb --regionsecondary-region-id\ create-db-instance \ --db-cluster-identifiercluster-id\ --global-cluster-identifierglobal-cluster-id\ --engine-versionversion\ --engine docdb
对于 Windows:
aws docdb --regionsecondary-region-id^ create-db-cluster ^ --db-cluster-identifiercluster-id^ --global-cluster-identifierglobal-cluster-id^ --engine-versionversion^ --engine docdb aws docdb --regionsecondary-region-id^ create-db-instance ^ --db-cluster-identifiercluster-id^ --global-cluster-identifierglobal-cluster-id^ --engine-versionversion^ --engine docdb
对您的 Amazon DocumentDB 全局集群使用快照
您可以恢复 Amazon DocumentDB 集群的快照以用作您全局集群的起点。要这样做,您必须恢复快照并创建新集群。这个集群将充当您全局群集的主集群。然后,您可以将另一个区域添加到恢复的集群,从而将其转变成全局集群。