云数据库 MongoDB 版分片集群实例支持变更配置功能,当您已购买的实例配置不符合(高于或低于)当前业务需求时,您可以对当前实例进行变配操作,使当前实例的配置与您的业务需求更加匹配。
使用限制
分片集群实例不支持变更实例类型(例如变更为副本集实例)和存储引擎。
对节点进行不同操作时,对应的限制说明如下。
操作
限制说明
添加Shard节点
您需要确保新增Shard的配置大于或等于当前实例中最高配置的Shard。
例如:当前实例中最高配置的Shard的存储空间为10 GB,则新增Shard的配置必须大于或等于10 GB。
变更Shard节点
变配时选择的存储空间需大于或等于当前Shard已占用的存储空间。
变配时选择的只读节点数需要大于或等于当前实例中最高Shard的只读节点数。
包年包月实例在执行降级配置操作时,不支持增加只读节点数。
变更ConfigServer节点
变配时选择的存储空间需大于或等于当前ConfigServer已占用的存储空间。
本地盘版实例不支持变配ConfigServer节点。
批量变更多组件多节点配置
您需要确保满足所选各组件和节点类型在变更配置时的使用限制。
说明本地盘版实例不支持变配ConfigServer节点。
Shard只读节点数的变更需在单个Shard节点的变配中操作。
释放Mongos节点
当分片集群实例中Mongos节点数量为3个及以上时,支持释放。
说明分片集群实例中须至少保留2个Mongos节点。
释放Shard节点
当分片集群实例中Shard节点数量为3个及以上时,支持释放。
说明分片集群实例中须至少保留2个Shard节点。
释放Shard节点前,请确保已开启MongoDB均衡器Balancer。开启Balancer,请参见管理MongoDB均衡器Balancer。
Shard节点数据量、Balancing Window和Jumbo Chunk等因素会影响释放节点的实际耗时。
说明关于Balancing Window和Jumbo Chunk的更多信息,请参见Balancing Window和Jumbo Chunk。
请确保剩余的Shard节点有足够的存储空间。
Shard节点在释放过程中,会将存储的数据迁移至剩余Shard节点。当剩余Shard节点的存储空间被占满时,为避免数据丢失,实例会自动锁定。
数据从待释放的Shard节点迁移至剩余Shard节点时,若出现
duplicated key
报错,请排查唯一索引字段的值是否相同。例如:不同的Shard节点上存储着分片键不同的两个文档,但是主键却相同。
说明duplicated key
报错通常是因为数据库中存在孤立文档所致,建议您在释放Shard前先清理孤立文档。清理操作,请参见清理孤立文档。
计费规则
详情请参见变配费用说明。
注意事项
变配过程中,可能会出现1~2次闪断现象,每次约30秒。您可以按需设置变更生效时间,避免影响业务运行。
重要仅变更存储空间时,系统根据本地宿主机的存储资源是否足够执行不同的操作。
足够:在本地扩容,不需要跨机迁移和切换。变更过程中不会出现闪断现象,且任务会立即执行生效(不需要等到可维护时间段内切换生效)。
不足:需要跨机迁移和切换。变更过程中会出现闪断现象,任务会在您设置的变更生效时间内切换生效。
变更配置的完成时间与多种因素(如网络、任务队列、数量大小)有关,建议您在业务低峰期执行变配操作,并确保您的应用有自动重连机制。
如果您的数据库小版本过期或不在维护列表内,执行变配操作时,系统会默认将您的数据库小版本升级至最新版,以保证提供更出色的性能和稳定性。
变配概览
变更类型 | 支持变更项 |
添加Mongos节点时,支持配置规格和创建数量。 说明 分片集群实例默认最多支持32个Mongos节点。如果当前分片集群实例中已有3个Mongos节点,在添加Mongos节点时,您最多可添加29个Mongos节点。 | |
添加Shard节点时,支持配置规格、创建数量、存储空间和只读节点数。 说明
| |
支持变配一个或多个Mongos节点的规格。 | |
支持变配一个或多个Shard节点的规格、存储空间和只读节点数。 说明
| |
支持变配ConfigServer节点的规格、存储空间。 说明
| |
支持同时发起多个组件、多个节点的变配任务,包括:
说明
| |
支持手动释放实例中的Mongos节点或Shard节点。 重要 释放Shard节点前,您需要确保剩余Shard节点完全可以分担释放节点的数据,否则,执行释放操作后,实例状态将会一直为删除节点中,影响对实例进行与数据库、账号、网络等相关的操作。如何查看Shard节点的磁盘使用量,请参见基本监控。 |