如何使用CreateShardingDBInstance创建分片数据库实例?
- 行业动态
- 2025-01-23
- 4534
CreateShardingDBInstance 是云数据库 MongoDB 版提供的一个 API 接口,用于创建或克隆 MongoDB 分片集群实例,以下是关于该接口的详细介绍:
1、功能:
调用 CreateShardingDBInstance 接口可以创建一个新的 MongoDB 分片集群实例,或者克隆一个已有的分片集群实例。
2、请求参数:
Action:要执行的操作,固定取值为 "CreateShardingDBInstance"。
RegionId:实例所属地域 ID,可通过 DescribeRegions 接口查询可用的地域 ID。
ZoneId:实例所属可用区 ID,可通过 DescribeRegions 接口查看可用的可用区 ID。
Engine:数据库类型,固定取值为 "MongoDB"。
StorageEngine:存储引擎,取值固定为 WiredTiger 或 RocksDB,默认值为 WiredTiger。
EngineVersion:数据库版本号,可取值如 3.2、3.4、7.0、6.0、5.0、4.4、4.2、4.0 等。
DBInstanceDescription:实例的描述或备忘信息,以中文或字母开头,可包含中文、英文字符、下划线(_)、连字符(-)和数字,长度为 2 256 个字符。
Mongos.N.Class:mongos 节点的规格,一个分片集群实例中 mongos 节点数量为 2 32 个。
ReplicaSet.N.Class:shard 节点的规格,一个分片集群实例中 shard 节点数量为 2 32 个。
ReplicaSet.N.Storage:每个 shard 节点的存储空间,大小为 10 1000GB。
ConfigServer.1.Class:configServer 的规格,固定为 1 核 2GB。
ConfigServer.1.Storage:configServer 的存储空间,固定为 20GB。
SecurityIPList:允许访问该实例下所有数据库的主机 IP 名单,多个 IP 地址或 IP 段用英文逗号隔开,不可重复,若设置为 % 或者 0.0.0.0/0,表示允许任何 IP 地址访问该 MongoDB 实例,但此设置会极大降低数据库的安全性,非必要请勿使用。
AccountPassword:root 账号密码,由字母、数字、特殊符号组成,长度为 8 32 位。
ChargeType:实例的付费类型,PrePaid 表示预付费(包年包月),PostPaid 表示后付费(按量付费),默认值为 PostPaid。
Period:实例的购买时长,单位为月,取值范围为 1 9、12、24、36、60,仅当 ChargeType 为 PrePaid 时有效。
NetworkType:实例的网络类型,CLASSIC 表示传统网络,VPC 表示专有网络,默认值为 CLASSIC。
VpcId:专有网络(VPC)ID,当 NetworkType 为 VPC 时必传。
VSwitchId:虚拟交换机 ID,当 NetworkType 为 VPC 时必传。
SrcDBInstanceId:源实例 ID,仅在克隆分片集群实例时需要传入该参数。
RestoreTime:7 天内的一个任意时间点的 UTC 时间,精确到秒级,仅在克隆分片集群实例时需要传入该参数。
ClientToken:用于保证请求的幂等性,防止重复提交请求,由客户端生成该参数值,在不同请求间该参数值唯一,最大值不超过 64 个 ASCII 字符。
3、返回结果:
接口调用成功会返回相应的实例创建或克隆任务的相关信息,包括任务 ID 等,可以通过该任务 ID 查询任务的执行进度和最终结果。
4、注意事项:
在调用 CreateShardingDBInstance 接口前,需确保已充分了解云数据库 MongoDB 的收费方式和价格,以及实例规格等信息。
克隆实例时,部分参数的值需与源实例保持一致,如 EngineVersion、StorageEngine 等。
以下是两个常见问题及解答:
问题一:CreateShardingDBInstance 接口中的 SecurityIPList 参数设置为 "%" 有什么风险?
解答:将 SecurityIPList 参数设置为 "%" 意味着允许任何 IP 地址访问该 MongoDB 实例,这会使数据库面临极大的安全风险,任何未经授权的用户都可能通过网络访问数据库,可能导致数据泄露、改动或其他安全问题,除非在非常特殊且有足够安全措施保障的情况下,不建议将 SecurityIPList 设置为 "%"。
问题二:如果调用 CreateShardingDBInstance 接口创建实例时指定的 RegionId 和 ZoneId 不存在怎么办?
解答:如果指定的 RegionId 和 ZoneId 不存在,接口调用将会失败,并返回相应的错误信息提示指定的地域或可用区无效,此时需要通过 DescribeRegions 接口重新查询有效的地域和可用区 ID,然后使用正确的 RegionId 和 ZoneId 再次调用 CreateShardingDBInstance 接口创建实例。
小编有话说:CreateShardingDBInstance 接口为云数据库 MongoDB 版的使用者提供了便捷的方式来创建或克隆分片集群实例,但在使用时一定要谨慎设置各项参数,特别是涉及到安全性和资源分配的参数,以确保数据库的稳定性、安全性和高效性,对于一些关键参数的设置,建议参考官方文档和相关技术资料,避免因误操作而带来不必要的麻烦和风险。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:https://www.xixizhuji.com/fuzhu/107566.html