华为云用户手册

  • 响应消息示例 HTTP/1.1 200 Date: Wed, 18 Dec 2019 06:20:40 GMT Content-Type: application/json;charset=UTF-8 Connection: keep-alive Pragma: No-cache Cache-Control: no-cache Server: api-gateway X-Request-Id: 28007a3bf4d6478e530b09589582f26s
  • 请求参数 表2 参数说明 参数 是否必须 类型 位置 描述 X-Access-Token 是 String Header 授权令牌。获取“执行App ID鉴权”响应的accessToken。 X-Request-ID 否 String Header 请求requestId,用来标识一路请求,用于问题跟踪定位,建议使用UUID,若不携带,则后台自动生成。 Accept-Language 否 String Header 语言参数,默认为中文zh-CN,英文为en-US。 Content-Type 是 String Header Body的媒体格式。取值:application/json; charset=UTF-8 enableSSO 是 Boolean Body 是否开启SSO登录。 domain 否 String Body 企业 域名 。 说明: 开启SSO登录时必填。 authorizeUrl 否 String Body 鉴权中心URL。 说明: 开启SSO登录时必填。 getTokenUrl 否 String Body 获取Token URL。 说明: 开启SSO登录时必填。 clientId 否 String Body APPID。 说明: 开启SSO登录时必填。 clientSecret 否 String Body APP秘钥。 说明: 开启SSO登录时,当getTokenUrl或者getUserInfoUrl有变更时必填。 开启SSO登录时,当getTokenUrl和getUserInfoUrl未变更时,且不修改APP秘钥,则置空即可。 scope 否 String Body 授权范围。 openid:OAuth2.0的OIDC accFieldName 否 String Body 第三方账号的字段名称。 说明: 开启SSO登录时必填。 getUserInfoUrl 否 String Body 用户信息查询URL。 oauth2ServerType 否 Integer Body 鉴权类型。 0:OAuth2.0鉴权 pcSchemaUrl 否 String Body 拉起PC端终端的schema。 androidSchemaUrl 否 String Body 拉起安卓端终端的schema。 iosSchemaUrl 否 String Body 拉起ios端终端的schema。 thirdName 否 String Body 第三方名称的字段名称。 thirdEmail 否 String Body 第三方邮箱的字段名称。 thirdMobile 否 String Body 第三方手机号的字段名称。 thirdAccessToken 否 String Body 第三方accessToken的字段名称。 说明: 开启SSO登录时必填。 thirdHeadImgUrl 否 String Body 第三方头像链接的字段名称。
  • 请求消息示例 GET /v1/usg/acs/authorizeconfig Connection: keep-alive X-Access-Token: stb7PzruAmA6d3JJD578jlAHczGfN4SIaup9 Host: api.meeting.huaweicloud.com User-Agent: Apache-HttpClient/4.5.3 (Java/1.8.0_191)
  • 响应消息示例 HTTP/1.1 200 Date: Wed, 18 Dec 2019 06:20:40 GMT Content-Type: application/json;charset=UTF-8 Connection: keep-alive Pragma: No-cache Cache-Control: no-cache Server: api-gateway X-Request-Id: 551aeb8cafbbaa7bbbdc7b1c76bba8ac { "enableSSO": true, "domain": "clouddragon.huawei.com", "authorizeUrl": "http://127.0.0.1:8444/sns/userinfo", "getTokenUrl": "http://127.0.0.1:8444/sns/oauth2/access_token", "clientId": "18bc94a643bd4b93aab3179726120943", "clientSecret": null, "scope": null, "accFieldName": "openid", "getUserInfoUrl": "http://127.0.0.1:8444/sns/userinfo", "oauth2ServerType": 0, "pcSchemaUrl": "http://127.0.0.1:8444/schema/pc", "androidSchemaUrl": "http://127.0.0.1:8444/schema/android", "iosSchemaUrl": "http://127.0.0.1:8444/schema/ios", "thirdName": "openid", "thirdEmail": null, "thirdMobile": null, "thirdAccessToken": "access_token", "thirdHeadImgUrl": null }
  • 响应参数 表4 响应参数 参数 类型 描述 enableSSO Boolean 是否开启SSO登录。 domain String 企业域名。 authorizeUrl String 鉴权中心URL。 getTokenUrl String 获取Token URL。 clientId String APP ID。 clientSecret String APP秘钥。 scope String 授权范围。 openid:OAuth2.0的OIDC accFieldName String 第三方账号的字段名称。 getUserInfoUrl String 用户信息查询URL。 oauth2ServerType Integer 鉴权类型。 0:OAuth2.0鉴权 pcSchemaUrl String 拉起PC端终端的schema。 androidSchemaUrl String 拉起安卓端终端的schema。 iosSchemaUrl String 拉起ios端终端的schema。 thirdName String 第三方名称的字段名称。 thirdEmail String 第三方邮箱的字段名称。 thirdMobile String 第三方手机号的字段名称。 thirdAccessToken String 第三方accessToken的字段名称。 thirdHeadImgUrl String 第三方头像链接的字段名称。
  • 请求参数 表2 参数说明 参数 是否必须 类型 位置 描述 X-Access-Token 是 String Header 授权令牌。获取“执行App ID鉴权”响应的accessToken。 X-Request-Id 否 String Header 请求requestId,用来标识一路请求,用于问题跟踪定位,建议使用UUID,若不携带,则后台自动生成。 Accept-Language 否 String Header 语言参数,默认为中文zh-CN,英文为en-US。
  • 在续费管理页面开通自动续费 登录管理控制台。 单击“控制台”页面上方“费用与成本”,在下拉菜单中选择“续费管理”。 进入“续费管理”页面。 自定义查询条件。 可在“自动续费项”页签查询已经开通自动续费的资源。 可对“手动续费项”、“到期转按需项”、“到期不续费项”页签的资源开通自动续费。 图2 续费管理 为包年/包月资源开通自动续费。 单个资源开通自动续费:选择需要开通自动续费的DDS实例,单击操作列“开通自动续费”。 图3 单个资源开通自动续费 批量资源开通自动续费:选择需要开通自动续费的DDS实例,单击列表左上角的“开通自动续费”。 图4 多个资源开通自动续费 选择续费时长,并根据需要设置自动续费次数,单击“开通”。 图5 开通自动续费
  • 关闭Balancer 通过Mongo Shell连接集群实例。 在dds mongos节点命令行中,切换至config数据库。 use config 执行如下命令,查看Balancer运行状态。 while( sh.isBalancerRunning() ) { print("waiting..."); sleep(500); } 如返回值为空,则表示Balancer没有处于执行任务的状态,此时可执行下一步的操作,关闭Balancer 。 如返回值为waiting,则表示Balancer正在执行块迁移,此时不能执行关闭Balancer的命令,否则可能引起数据不一致。 如执行步骤 3的命令后返回的值为空,可执行关闭Balancer命令。 sh.stopBalancer()
  • 创建DDS实例时,如何选择规格和节点 实例规格越高,性能越好。DDS支持的实例规格请参见数据库实例规格。 相同实例规格下,节点数越多,性能越好。性能相关信息请参见性能白皮书。 建议根据业务实际的测试数据选择规格,并考虑可靠性冗余,和未来业务增长,适当预留一些资源。 对于集群实例,根据经验,单核CPU支持16GB数据时性能较好。 对于副本集实例,使用快速购买方式,我们会向您推荐多数用户选择的配置。详情请参见快速购买副本集实例。 父主题: 创建与删除
  • 什么情况下会触发主备切换 文档数据库服务支持两种高可用架构:分片集群(Sharding)和副本集(Replica Set)。 集群架构提供dds mongos、shard、config三类节点。其中,shard和config为三节点副本集架构,当路由主机出现故障时,可实时动态切换。 副本集架构提供Primary、Secondary、Hidden三个节点。其中,Primary和Secondary节点对外提供连接IP。副本集的主节点不是固定的,当出现副本集配置改变、主节点宕机、人为主备切换等状况,会导致主备节点切换,此时副本集可能会选举出新主节点,原来的主节点则降为备节点。 内存使用率过高,即实例的负载过高时,会发生主备切换。 更多信息,请参见集群架构和副本集架构。
  • python mongo客户端 前提条件 连接数据库的弹性云服务器必须和DDS实例之间网络互通,可以使用curl命令连接DDS实例服务端的IP和端口号,测试网络连通性。 curl ip:port 返回“It looks like you are trying to access MongoDB over HTTP on the native driver port.”,说明网络互通。 在弹性云服务器上安装Python以及第三方安装包pymongo。推荐使用pymongo2.8版本。 如果开启SSL,需要在界面上下载根证书,并上传到弹性云服务器。 连接代码 SSL开启 import ssl import os from pymongo import MongoClient # 认证用的用户名和密码直接写到代码中有很大的安全风险,建议在配置文件或者环境变量中存放(密码应密文存放、使用时解密),确保安全 # 本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)EXAMPLE_USERNAME_ENV和EXAMPLE_PASSWORD_ENV rwuser = os.getenv('EXAMPLE_USERNAME_ENV') password = os.getenv('EXAMPLE_PASSWORD_ENV') conn_urls="mongodb://%s:%s@ip:port/{mydb}?authSource=admin" connection = MongoClient(conn_urls % (rwuser, password),connectTimeoutMS=5000,ssl=True, ssl_cert_reqs=ssl.CERT_REQUIRED,ssl_match_hostname=False,ssl_ca_certs=${path to certificate authority file}) dbs = connection.database_names() print "connect database success! database names is %s" % dbs SSL关闭 import ssl import os from pymongo import MongoClient # 认证用的用户名和密码直接写到代码中有很大的安全风险,建议在配置文件或者环境变量中存放(密码应密文存放、使用时解密),确保安全 # 本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)EXAMPLE_USERNAME_ENV和EXAMPLE_PASSWORD_ENV rwuser = os.getenv('EXAMPLE_USERNAME_ENV') password = os.getenv('EXAMPLE_PASSWORD_ENV') conn_urls="mongodb://%s:%s@ip:port/{mydb}?authSource=admin" connection = MongoClient(conn_urls % (rwuser, password),connectTimeoutMS=5000) dbs = connection.database_names() print "connect database success! database names is %s" % dbs 注意事项 {mydb}代表要连接数据库的名称。 URL中的认证数据库必须为“admin”,即“authSource=admin”。
  • 分析服务能力 经过前面数据库正在执行的请求和慢请求的分析和优化,所有的请求都使用了合理的索引,CPU的使用率相对趋于稳定。如果经过前面的分析排查,CPU使用率任然居高不下,则可能是因为当前实例已达到性能瓶颈,不能满足业务需要,此时您可以通过如下方法解决。 通过查看监控信息分析实例资源的使用情况,详情请参见查看监控指标。 对DDS进行规格变更或者添加分片数量。具体操作请根据当前的实例类型参考如下文档。 添加集群实例的节点数量 变更集群实例的CPU和内存 添加副本集实例的节点数量 变更副本集实例的CPU和内存 变更单节点实例的CPU和内存
  • 分析DDS数据库正在执行的请求 通过Mongo Shell连接DDS实例。 开通公网访问的实例 具体请参见: 通过公网连接集群实例 通过公网连接副本集实例 通过公网连接单节点实例 未开通公网访问的实例 具体请参见: 通过内网连接集群实例 通过内网连接副本集实例 通过内网连接单节点实例 执行以下命令,查看数据库当前正在执行的操作。 db.currentOp() 回显如下: { "raw" : { "shard0001" : { "inprog" : [ { "desc" : "StatisticsCollector", "threadId" : "140323686905600", "active" : true, "opid" : 9037713, "op" : "none", "ns" : "", "query" : { }, "numYields" : 0, "locks" : { }, "waitingForLock" : false, "lockStats" : { } }, { "desc" : "conn2607", "threadId" : "140323415066368", "connectionId" : 2607, "client" : "172.16.36.87:37804", "appName" : "MongoDB Shell", "active" : true, "opid" : 9039588, "secs_running" : 0, "microsecs_running" : NumberLong(63), "op" : "command", "ns" : "admin.", "query" : { "currentOp" : 1 }, "numYields" : 0, "locks" : { }, "waitingForLock" : false, "lockStats" : { } } ], "ok" : 1 }, ... } client:发起请求的客户端。 opid:操作的唯一标识符。 secs_running:该操作已经执行的时间,单位:秒。如果该字段返回的值特别大,需要查看请求是否合理。 microsecs_running:该操作已经执行的时间,单位:微秒。如果该字段返回的值特别大,需要查看请求是否合理。 op:操作类型。通常是query、insert、update、delete、command中的一种。 ns:操作目标集合。 其他参数详见db.currentOp()命令官方文档。 根据命令执行结果,分析是否有异常耗时的请求正在执行。 如果业务日常运行的CPU使用率不高,由于执行某一操作使得CPU使用率过高,导致业务运行缓慢,该场景下,您需要关注执行耗时久的请求。 如果发现异常请求,您可以找到该请求对应的opid,执行db.killOp(opid)命令终止该请求。
  • 资源规划 表1 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-dds 自定义,易理解可识别。 所属Region 华南-广州 选择和自己业务区最近的Region,减少网络时延。 可用区 可用区一 - 子网网段 10.0.0.0/24 子网选择时建议预留足够的网络资源。 子网名称 subnet-default 自定义,易理解可识别。 本地MongoDB 数据库版本 MongoDB 4.4 自定义,易理解可识别。 DDS DDS 实例名 dds-test 自定义,易理解可识别。 数据库引擎 DDS - 兼容的数据库版本 4.4 - 可用区类型 单可用区 - 可用区 可用区一 - 性能规格 增强Ⅱ型 - CPU架构 X86 8 vCPUs | 32GB - DRS迁移任务 迁移任务名 DRS-dds 自定义。 源数据库引擎 MongoDB 本示例中源数据库为自建MongoDB,即在华为云弹性云服务器上安装社区版MongoDB。 目标数据库引擎 DDS 本示例中目标数据库为华为云DDS实例。 网络类型 公用网络 本示例中采用公用网络。
  • 迁移准备 权限准备: 当使用 DRS 将本地数据库的数据迁移到本云DDS实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表2所示: 表2 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 副本集:连接源数据库的用户需要对待迁移库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限。 集群:连接源数据库的用户需要对待迁移库有read权限,对config数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 副本集:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 集群:连接源数据库mongos节点的用户需要对待迁移库有read权限,对config数据库有read权限, 连接源数据库分片节点的用户需要对admin数据库有readAnyDatabase权限,对local数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 目标数据库 连接目标数据库的用户需要对admin数据库有dbAdminAnyDatabase权限,对目标数据库有readWrite权限。对于目标数据库是集群的实例,迁移账号还要有对config数据的读权限 源数据库的权限设置: 需要确保源数据库MongoDB的账号具备表2的权限,若权限不足,需要在源数据库端创建高权限的账号。 目标数据库的权限设置: 本云DDS实例使用初始账号即可。 网络准备: 源数据库的网络设置: 本地MongoDB数据库实时迁移至本云DDS的场景,一般可以使用VPN网络和公网网络两种方式进行迁移,您可以根据实际情况为本地MongoDB数据库开放公网访问或建立VPN访问。一般推荐使用公网网络进行迁移,该方式下的数据迁移过程较为方便和经济。 目标数据库的网络设置: 若通过VPN访问,请先开通VPN服务,确保源数据库和目标DDS网络互通。 若通过公网网络访问,目标DDS不需要进行设置。 安全规则准备: 源数据库的白名单设置: 若通过公网网络进行迁移,源数据库MongoDB实例需要将具体的DRS迁移实例的弹性公网IP添加到其网络白名单中,确保源数据库MongoDB实例可以与上述弹性公网IP连通。在设置网络白名单之前需要获取DRS迁移实例,具体方法如下: 迁移实例创建成功后,可在“源库及目标库”页面获取DRS迁移实例的弹性公网IP。如图4所示: 图4 迁移实例公网弹性IP 以上讲述的是精细配置白名单的方法,还有一种简单设置白名单的方法,在安全允许的情况下,可以将源数据库MongoDB实例的网络白名单设置为0.0.0.0/0,代表允许任何IP地址访问该实例。 若通过VPN网络进行迁移,源库需要将DRS迁移实例的私有IP添加到其网络白名单内,确保源端和目标端网络互通。 上述的网络白名单是为了进行数据迁移设置的,迁移结束后可以删除。 目标数据库安全组规则设置: 目标数据库默认与DRS迁移实例处在同一个VPC,网络是互通的,DRS可以直接写入数据到目标数据库,不需要进行任何设置。 其他事项准备: 由于迁移过程不会迁移MongoDB数据库的用户信息以及相关参数,需要自行将上述信息导出后手动添加到目标DDS中。
  • 资源规划 表1 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-dds 自定义,易理解可识别。 所属Region 华南-广州 选择和自己业务区最近的Region,减少网络时延。 可用区 可用区一 - 子网网段 10.0.0.0/24 子网选择时建议预留足够的网络资源。 子网名称 subnet-default 自定义,易理解可识别。 其他云MongoDB 数据库版本 MongoDB 4.4 - IP地址 192.168.0.1 仅作为示例。 端口 8635 仅作为示例。 DDS实例 实例名称 dds-test 自定义,易理解可识别。 数据库版本 DDS 4.4 - 可用区类型 单可用区 仅作为示例。 可用区 可用区一 本示例中为可用区一。 性能规格 增强Ⅱ型 4 vCPUs | 16 GB 本示例中选择的规格。实际选择的规格需要结合业务场景选择。 DRS迁移任务 迁移任务名 DRS-test-migrate 自定义。 源数据库引擎 MongoDB - 目标数据库引擎 DDS - 网络类型 公网网络 本示例中采用公网网络。
  • 迁移准备 权限准备: 当使用 DRS 将其他云MongoDB数据库的数据迁移到本云DDS实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表2: 表2 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 副本集:连接源数据库的用户需要对待迁移库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限。 集群:连接源数据库的用户需要对待迁移库有read权限,对config数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 副本集:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 集群:连接源数据库mongos节点的用户需要对待迁移库有read权限,对config数据库有read权限, 连接源数据库分片节点的用户需要对admin数据库有readAnyDatabase权限,对local数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 目标数据库 连接目标数据库的用户需要对admin数据库有dbAdminAnyDatabase权限,对目标数据库有readWrite权限。对于目标数据库是集群的实例,迁移账号还要有对config数据的读权限 源数据库权限设置: 需要确保源数据库MongoDB的账号权限具备表2的要求。若权限不足,需要在源数据库端开通高权限的账号。 目标数据库权限设置: 本云DDS实例使用初始账号即可。 网络准备: 源数据库需要开放公网访问。 源数据库的网络设置: 源数据库MongoDB实例需要开放公网域名的访问。 目标数据库的网络设置:目标端不需要进行设置。 安全规则准备: 源数据库安全组规则设置: 源数据库MongoDB实例需要将具体的DRS迁移实例的弹性公网IP添加到其网络白名单中,确保源数据库MongoDB实例可以与上述弹性公网IP连通。 在设置网络白名单之前,需要先获取DRS迁移实例的弹性公网IP,具体操作如下: 迁移实例创建成功后,可在“源库及目标库”页面获取DRS迁移实例的弹性公网IP。如图4所示: 图4 迁移实例公网弹性IP 以上讲述的是精细配置白名单的方法,还有一种简单设置白名单的方法,在安全允许的情况下,可以将源数据库MongoDB实例的网络白名单设置为0.0.0.0/0,代表允许任何IP地址访问该实例。 上述的网络白名单是为了进行数据迁移设置的,迁移结束后可以删除。 目标数据库安全组规则设置: 目标数据库默认与DRS迁移实例处在同一个VPC,网络是互通的,DRS可以直接写入数据到目标数据库,不需要进行任何设置。 其他事项准备: 由于迁移过程不会迁移MongoDB数据库的用户信息以及相关参数,需要自行将上述信息导出后手动添加到目标DDS中。
  • 检查角色的合理性 DDS支持“基于角色”的方法授予账号对数据和命令的访问权限。建议管理员结合业务需要,遵从最低授权原则,创建合适的自定义角色,对账号进行授权。如果发现账号权限过大,请结合业务需要,对账号权限进行更新或者删除。 表1 DDS高权限角色的描述 序号 检查项 描述 1 检查在用户表中存在userAdmin角色的用户 当在admin数据库定义了userAdmin角色的用户后,该用户被提供了任何用户的任何权限的能力,即拥有这个角色的用户可以在任何数据库上定义它们自己的权限。 2 检查在用户表中存在userAdminAnyDatabase角色的用户 当定义了userAdminAnyDatabase角色的用户后,该用户被提供了任何用户的任何权限的能力,即拥有这个角色的用户可以在任何数据库上定义它们自己的权限。 3 检查拥有anyAction动作权限的角色 当定义了anyAction动作权限的角色,该角色用户拥有对应数据库的任何操作,不利于权限的管理。 4 检查拥有anyResource动作权限的角色 当定义了anyResource动作权限的角色,该角色用户拥有对应数据库的所有操作资源,不利于权限的管理。 5 检查拥有changeCustomData动作权限的角色 当定义了changeCustomData动作权限的角色,该角色用户拥有对应数据库所有用户自定义信息的更改权限,不利于权限的管理。 6 检查拥有changePassword动作权限的角色 当定义了changePassword动作权限的角色,该角色用户即可拥有对应数据库所有用户密码的更改权限,不利于权限的管理。 7 检查拥有createRole动作权限的角色 当定义了createRole动作权限的角色,该角色用户即可拥有对应数据库中任意创建角色的权限,不利于权限的管理。 8 检查拥有createUser动作权限的角色 当定义了createUser动作权限的角色,该角色用户即可拥有对应数据库中任意创建用户的权限,不利于权限的管理。 9 检查拥有dropRole动作权限的角色 当定义了dropRole动作权限的角色,该角色用户即可拥有对应数据库中删除任意角色的权限,不利于权限的管理。 10 检查拥有dropUser动作权限的角色 当定义了dropUser动作权限的角色,该角色用户即可拥有对应数据库中删除任意用户的权限,不利于权限的管理。 11 检查拥有grantRole动作权限的角色 当定义了grantRole动作权限的角色,该角色用户即可拥有对应数据库中任何用户授予任意角色的权限,不利于权限的管理。 12 检查拥有revokeRole动作权限的角色 当定义了revokeRole动作权限的角色,该角色用户即可拥有对应数据库中任何用户取消任意角色的权限,不利于权限的管理。 13 检查拥有authSchemaUpgrade动作权限的角色 当定义了authSchemaUpgrade动作权限的角色,该角色用户即可拥有执行authschemaupgrade的权限,不利于权限的管理。authschemaupgrade命令可以修改用户认证转换格式。 14 检查拥有closeAllDatabases动作权限的角色 当定义了closeAllDatabases动作权限的角色,该角色用户即可拥有执行closeAllDatabases命令的权限,关闭所有数据库并释放MongoDB占用的内存,不利于权限的管理。 15 检查拥有dropDatabase动作权限的角色 当定义了dropDatabase动作权限的角色,该角色用户即可拥有执行dropDatabase命令的权限,删除任意的数据库,不利于权限的管理。 16 检查拥有getParameter动作权限的角色 当定义了getParameter动作权限的角色,该角色用户即可拥有执行getParameter命令的权限,任意查看命令行选项的值,不利于权限的管理。 17 检查拥有setParameter动作权限的角色 当定义了setParameter动作权限的角色,该角色用户即可拥有执行setParameter命令的权限,任意修改命令行选项的值,不利于权限的管理。 18 检查拥有shutdown动作权限的角色 当定义了shutdown动作权限的角色,该角色用户即可拥有执行shutdown命令的权限,清除所有数据库资源,然后终止进程,不利于权限的管理。 19 检查拥有getCmdLineOpts动作权限的角色 当定义了getCmdLineOpts动作权限的角色,该角色用户即可拥有执行getCmdLineOpts命令的权限,获得argv和parsed两个字段,argv包含用于调用mongod或mongos命令字符串,parsed包含所有运行时选项,不利于权限的管理。 20 检查拥有internal动作权限的角色 当定义了internal动作权限的角色,该角色用户即可拥有对应数据库进行任何操作的权限,不利于权限的管理。 21 检查拥有readWrite角色的用户 当定义了readWrite角色的用户,该角色用户即可拥有对应数据库进行读的权限加上更改数据的权限,不利于权限的管理。 22 检查拥有backup角色的用户 当定义了backup角色的用户,该角色用户即可拥有在admin数据库mms.bak文档中insert、update的权限,不利于权限的管理。 23 检查拥有clusterAdmin角色的用户 当定义了clusterAdmin角色的用户,该角色用户即可拥有最高集群管理的权限,这个角色包括了clusterManager,clusterMonitor,hostManager角色的权限,不利于权限的管理。 24 检查拥有clusterManager角色的用户 当定义了clusterManager角色的用户,在集群上管理和监视操作,该角色用户可以有权管理分别被用来共享、复制的设置本地数据库的权限,不利于权限的管理。 25 检查拥有clusterMonitor角色的用户 当定义了clusterMonitor角色的用户,该角色用户即可拥有为监视工具提供只读的权限,不利于权限的管理。 26 检查拥有dbAdmin角色的用户 当定义了dbAdmin角色的用户,该角色用户即可拥有对应数据库管理员的权限,不利于权限的管理。 27 检查拥有dbAdminAnyDatabase角色的用户 当定义了dbAdminAnyDatabase角色的用户,该角色用户即可拥有和dbAdmin角色一样的权限,除了适用于集群内所有数据库这个特性,这个角色也为整个集群提供listDatabases操作,不利于权限的管理。 28 检查拥有dbOwner角色的用户 当定义了dbOwner角色的用户,该角色用户即可拥有执行数据库所有管理操作的权限,这个角色合并了readWrite,dbAdmin,userAdmin角色的权限,不利于权限的管理。 29 检查拥有hostManager角色的用户 当定义了hostManager角色的用户,该角色用户即可拥有监视和管理服务器的权限,不利于权限的管理。 30 检查拥有readAnyDatabase角色的用户 当定义了readAnyDatabase角色的用户,该角色用户即可拥有读任何数据库的权限,这个角色也为整个集群提供listdatabases操作,不利于权限的管理。 31 检查拥有readWriteAnyDatabase角色的用户 当定义了readWriteAnyDatabase角色的用户,该角色用户即可拥有读写任何数据库的权限,这个角色也为整个集群提供listdatabases操作,不利于权限的管理。 32 检查拥有restore角色的用户 当定义了restore角色的用户,该角色用户即可拥有还原备份所需的权限,不利于权限的管理。 33 检查拥有root角色的用户 当定义了root角色的用户,该角色用户即可拥有所有资源的所有操作,包括readWriteAnyDatabase,dbAdminAnyDatabase,userAdminAnyDatabases,clusterAdmin,restore角色的权限,不利于权限的管理。 34 检查拥有userAdmin角色的用户 当定义了userAdmin角色的用户,该角色用户即可拥有授权任意用户的权限,包括它们自己的,不利于权限的管理。 35 检查拥有userAdminAnyDatabase角色的用户 当定义了userAdminAnyDatabase角色的用户,该角色用户即可拥有授权所有数据库任意用户的权限,包括它们自己的,不利于权限的管理。
  • 关闭脚本运行功能 启用javascriptEnabled选项security.javascriptEnabled,可以在mongod 服务端运行javascript脚本,存在安全风险。禁用javascriptEnabled选项,mapreduce、group命令等将无法使用。如果您的应用中没有mapreduce等操作的需求,为了安全起见,建议关闭javascriptEnabled选项。详情请参见参数调优。
  • 迁移准备 权限准备: 当使用 DRS 将E CS 自建MongoDB数据库的数据迁移到本云DDS实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表2: 表2 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 副本集:连接源数据库的用户需要对待迁移库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限。 集群:连接源数据库的用户需要对待迁移库有read权限,对config数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 副本集:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 集群:连接源数据库mongos节点的用户需要对待迁移库有read权限,对config数据库有read权限, 连接源数据库分片节点的用户需要对admin数据库有readAnyDatabase权限,对local数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 目标数据库 连接目标数据库的用户需要对admin数据库有dbAdminAnyDatabase权限,对目标数据库有readWrite权限。对于目标数据库是集群的实例,迁移账号还要有对config数据的读权限 源数据库权限设置: 需要确保源数据库MongoDB的账号权限具备表2的要求。若权限不足,需要在源数据库端开通高权限的账号。 目标数据库权限设置: 本云DDS实例使用初始账号即可。 网络准备: 源数据库所在的region需要和目标DDS所在的region保持一致。 源数据库可以与目标DDS实例在同一个VPC,也可以不在同一个VPC。 当不在同一个VPC的时候,要求源数据库实例和目标端DDS实例所处的子网处于不同网段,此时需要通过建立对等连接实现网络互通。 具体操作请参见《虚拟私有云用户指南》中“VPC对等连接”章节。 当在同一VPC的时候,网络默认是互通的。 安全规则准备: 同一VPC场景下,默认网络是连通的,不需要单独设置安全组。 不同VPC场景下,通过建立对等连接就可以实现网络互通,不需要单独设置安全组。 其他事项准备: 由于迁移过程不会迁移MongoDB数据库的用户信息以及相关参数,需要自行将上述信息导出后,手动添加到目标DDS中。
  • 资源规划 表1 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-dds 自定义,易理解可识别。 所属Region 华南-广州 选择和自己业务区最近的Region,减少网络时延。 可用区 可用区一 - 子网网段 10.0.0.0/24 子网选择时建议预留足够的网络资源。 子网名称 subnet-default 自定义,易理解可识别。 ECS ECS名称 ecs-mongodb 自定义,易理解可识别。 规格 s6.xlarge.2 4vCPUs|8GiB 本示例中选择的规格。 实际选择的规格需要结合业务场景选择,请参考弹性云服务器的实例规格。 操作系统 CentOS 7.6 64 - 系统盘 通用型SSD 40GiB - 数据盘 超高IO 100GiB - 弹性IP 现在购买 因为迁移任务会选择“公网网络”,因此此处需要购买弹性IP。 DDS DDS 实例名 dds-test 自定义,易理解可识别。 数据库引擎 DDS - 兼容的数据库版本 4.4 - 可用区类型 单可用区 - 可用区 可用区一 - 性能规格 增强Ⅱ型 - CPU架构 X86 8 vCPUs | 32GB - DRS迁移任务 迁移任务名 DRS-dds 自定义。 源数据库引擎 MongoDB 本示例中源数据库为自建MongoDB,即在华为云弹性云服务器上安装社区版MongoDB。 目标数据库引擎 DDS 本示例中目标数据库为华为云DDS实例。 网络类型 公用网络 本示例中采用公用网络。
  • 分析DDS数据库正在执行的请求 通过Mongo Shell连接DDS实例。 开通公网访问的实例,具体请参见: 通过公网连接集群实例 通过公网连接副本集实例 通过公网连接单节点实例 未开通公网访问的实例,具体请参见: 通过内网连接集群实例 通过内网连接副本集实例 通过内网连接单节点实例 执行以下命令,查看数据库当前正在执行的操作。 db.currentOp() 回显如下: { "raw" : { "shard0001" : { "inprog" : [ { "desc" : "StatisticsCollector", "threadId" : "140323686905600", "active" : true, "opid" : 9037713, "op" : "none", "ns" : "", "query" : { }, "numYields" : 0, "locks" : { }, "waitingForLock" : false, "lockStats" : { } }, { "desc" : "conn2607", "threadId" : "140323415066368", "connectionId" : 2607, "client" : "172.16.36.87:37804", "appName" : "MongoDB Shell", "active" : true, "opid" : 9039588, "secs_running" : 0, "microsecs_running" : NumberLong(63), "op" : "command", "ns" : "admin.", "query" : { "currentOp" : 1 }, "numYields" : 0, "locks" : { }, "waitingForLock" : false, "lockStats" : { } } ], "ok" : 1 }, ... } client:发起请求的客户端。 opid:操作的唯一标识符。 secs_running:该操作已经执行的时间,单位:秒。如果该字段返回的值特别大,需要查看请求是否合理。 microsecs_running:该操作已经执行的时间,单位:微秒。如果该字段返回的值特别大,需要查看请求是否合理。 op:操作类型。通常是query、insert、update、delete、command中的一种。 ns:操作目标集合。 其他参数详见db.currentOp()命令官方文档。 根据命令执行结果,分析是否有异常耗时的请求正在执行。 如果业务日常运行的CPU使用率不高,由于执行某一操作使得CPU使用率过高,导致业务运行缓慢,该场景下,您需要关注执行耗时久的请求。 如果发现异常请求,您可以找到该请求对应的opid,执行db.killOp(opid)命令终止该请求。
  • 分析服务能力 经过前面数据库正在执行的请求和慢请求的分析和优化,所有的请求都使用了合理的索引,CPU的使用率相对趋于稳定。如果经过前面的分析排查,CPU使用率仍然居高不下,则可能是因为当前实例已达到性能瓶颈,不能满足业务需要,此时您可以通过如下方法解决。 通过查看监控信息分析实例资源的使用情况,详情请参见查看监控指标。 对DDS进行规格变更或者添加分片数量。具体操作请根据当前的实例类型参考如下文档。 添加集群实例的节点数量 变更集群实例的CPU和内存 添加副本集实例的节点数量 变更副本集实例的CPU和内存 变更单节点实例的CPU和内存
  • 部署架构对比 单可用区 实例选择单可用区部署时,实例下的所有组件均部署在相同的可用区内。单可用区部署会默认配置为反亲和部署。反亲和部署是出于高可用性考虑,将Primary、Secondary和Hidden节点分别创建在不同的物理机上。 多可用区 实例选择多可用区部署时,实例下的组件分别部署在三个不同的可用区内,可实现跨可用区容灾部署能力。 dds mongos节点最少为两个,分别部署在两个可用区中,当增加第三个dds mongos节点时,默认部署在第三个可用区。 每个Shard节点中的Primary节点、Secondary节点与Hidden节点随机均衡的部署在三个可用区中。 图1 多可用区部署
  • 访问控制 权限控制 购买实例之后,您可以使用 IAM 为企业中的员工设置不同的访问权限,以达到不同员工之间的权限隔离,通过IAM进行精细的权限管理。具体内容请参见权限管理。 VPC和子网 虚拟私有云(Virtual Private Cloud,VPC)为云数据库构建隔离的、用户自主配置和管理的虚拟网络环境,提升用户云上资源的安全性,简化用户的网络部署。您可以在VPC中定义安全组、VPN、IP地址段、带宽等网络特性,方便管理、配置内部网络,进行安全、快捷的网络变更。 子网提供与其他网络隔离的、可以独享的网络资源,以提高网络安全性。 具体内容请参见创建虚拟私有云和子网。 安全组 安全组是一个逻辑上的分组,为同一个虚拟私有云内具有相同安全保护需求并相互信任的弹性云服务器和DDS数据库实例提供访问策略。为了保障数据库的安全性和稳定性,在使用DDS数据库实例之前,您需要设置安全组,开通需访问数据库的IP地址和端口。 具体请参见设置安全组规则。
  • 身份认证 用户访问文档数据库服务(Document Database Service,简称DDS)时支持对数据库用户进行身份验证,包含密码验证和IAM验证两种方式。 密码验证 您需要对数据库实例进行管理,使用数据管理服务(Data Admin Service)登录数据库时,需要对账号密码进行验证,验证成功后方可进行操作。 IAM验证 您可以使用 统一身份认证 服务(Identity and Access Management, IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全地控制华为云资源的访问。您创建的IAM用户,需要通过验证用户和密码才可以使用DDS资源。具体请参见创建IAM用户并登录。
  • 只读节点与备节点(Secondary)的区别 节点 说明 应用场景 备节点 备节点具有高可用保障,备节点和主节点组成高可用切换的能力,即某个主节点故障时,系统会自动切换流量至备节点。相应的,在主节点故障时,每个备节点均有可能被选举为新的主节点,来执行数据写入请求。 主备节点可以使用高可用地址连接实现全局读写分离,适用于读多写少的并发场景。从而在性能扩展的同时,屏蔽节点故障对业务带来的影响。 副本集只读节点 副本集只读节点仅从主节点同步数据,不具备高可用保障,也不会被选举为主节点。只读节点具有独立的连接地址,适合独立系统直连访问,与已有副本集主备节点的连接互不干扰。 适合需要从现有实例中大量读取数据的业务场景。 集群只读节点 集群只读节点具有高可用保障,当某个只读节点故障时,系统自动将其切换至其他可用只读节点或备节点。 集群只读节点具有独立的连接地址,适合独立系统及应用直连访问,与已有主从节点的连接互不干扰。 集群实例提供统一的地址连接所有只读节点,您只需添加只读节点的个数即可扩展数据库的处理能力,应用程序无需做任何修改。 集群只读节点不参与投票选举主节点,不会被选举为主节点。 适合需要从现有实例中大量读取数据,需要读请求负载均衡、只读节点高可用的业务场景。
  • 相关问题 如何修改集群实例的最大连接数? 实例的最大连接数可通过修改参数“net.maxIncomingConnections”的值进行调整,如何调整参数值请参见编辑参数模板。 如何购买集群实例? 详情请参见购买集群实例。 如何变更集群实例的CPU和内存? 集群实例可以变更dds mongos节点和shard节点的CPU和内存,具体操作请参见变更集群实例的CPU和内存。 如何扩容集群实例的磁盘空间? 集群实例可以对shard节点进行磁盘扩容,具体操作请参见扩容存储。
  • 历史实例规格表 2021年7月以前创建的实例,请参考下列表中的连接数。 表4 config节点的规格 实例类型 CPU类型 规格类型 vCPU(个) 内存(GB) 规格ID 缺省最大连接数配置 连接数取值范围 集群 x86 通用型 2 4 dds.mongodb.s6.large.2.config 400 200-2000 增强型 2 4 dds.mongodb.c3.large.2.config 增强Ⅱ型 2 4 dds.mongodb.c6.large.2.config 鲲鹏 - 2 4 dds.mongodb.large.arm2.config 表5 dds mongos和shard节点的规格 实例类型 CPU类型 规格类型 组件 vCPU(个) 内存(GB) 规格ID 缺省最大连接数配置 连接数取值范围 集群 x86 通用型 dds mongos 1 4 dds.mongodb.s6.medium.4.mongos 400 200-1000 2 4 dds.mongodb.s6.large.2.mongos 400 200-2000 2 8 dds.mongodb.s6.large.4.mongos 400 200-2000 4 8 dds.mongodb.s6.xlarge.2.mongos 1000 200-4000 4 16 dds.mongodb.s6.xlarge.4.mongos 1000 200-4000 8 16 dds.mongodb.s6.2xlarge.2.mongos 4000 200-16000 8 32 dds.mongodb.s6.2xlarge.4.mongos 4000 200-16000 shard 1 4 dds.mongodb.s6.medium.4.shard 400 200-1000 2 4 dds.mongodb.s6.large.2.shard 400 200-2000 2 8 dds.mongodb.s6.large.4.shard 400 200-2000 4 8 dds.mongodb.s6.xlarge.2.shard 1000 200-4000 4 16 dds.mongodb.s6.xlarge.4.shard 1000 200-4000 8 16 dds.mongodb.s6.2xlarge.2.shard 4000 200-16000 8 32 dds.mongodb.s6.2xlarge.4.shard 4000 200-16000 增强型 dds mongos 2 8 dds.mongodb.c3.large.4.mongos 400 200-2000 4 16 dds.mongodb.c3.xlarge.4.mongos 1000 200-4000 8 32 dds.mongodb.c3.2xlarge.4.mongos 4000 200-16000 16 64 dds.mongodb.c3.4xlarge.4.mongos 8000 200-16000 32 128 dds.mongodb.c3.8xlarge.4.mongos 8000 200-16000 60 256 dds.mongodb.c3.15xlarge.4.mongos 8000 200-16000 shard 2 8 dds.mongodb.c3.large.4.shard 400 200-2000 4 16 dds.mongodb.c3.xlarge.4.shard 1000 200-4000 8 32 dds.mongodb.c3.2xlarge.4.shard 4000 200-16000 16 64 dds.mongodb.c3.4xlarge.4.shard 8000 200-16000 32 128 dds.mongodb.c3.8xlarge.4.shard 8000 200-16000 60 256 dds.mongodb.c3.15xlarge.4.shard 8000 200-16000 增强Ⅱ型 dds mongos 2 8 dds.mongodb.c6.large.4.mongos 400 200-2000 4 16 dds.mongodb.c6.xlarge.4.mongos 1000 200-4000 8 32 dds.mongodb.c6.2xlarge.4.mongos 4000 200-16000 16 64 dds.mongodb.c6.4xlarge.4.mongos 8000 200-16000 32 128 dds.mongodb.c6.8xlarge.4.mongos 8000 200-16000 64 256 dds.mongodb.c6.16xlarge.4.mongos 8000 200-16000 shard 2 8 dds.mongodb.c6.large.4.shard 400 200-2000 4 16 dds.mongodb.c6.xlarge.4.shard 1000 200-4000 8 32 dds.mongodb.c6.2xlarge.4.shard 4000 200-16000 16 64 dds.mongodb.c6.4xlarge.4.shard 8000 200-16000 32 128 dds.mongodb.c6.8xlarge.4.shard 8000 200-16000 64 256 dds.mongodb.c6.16xlarge.4.shard 8000 200-16000 鲲鹏 - dds mongos 2 4 dds.mongodb.large.arm2.mongos 400 200-2000 - 2 8 dds.mongodb.large.arm4.mongos 400 200-2000 - 4 8 dds.mongodb.xlarge.arm2.mongos 1000 200-4000 - 4 16 dds.mongodb.xlarge.arm4.mongos 1000 200-4000 - 8 16 dds.mongodb.2xlarge.arm2.mongos 4000 200-16000 - 8 32 dds.mongodb.2xlarge.arm4.mongos 4000 200-16000 - 16 32 dds.mongodb.4xlarge.arm2.mongos 8000 200-16000 - 16 64 dds.mongodb.4xlarge.arm4.mongos 8000 200-16000 - shard 2 4 dds.mongodb.large.arm2.shard 400 200-2000 - 2 8 dds.mongodb.large.arm4.shard 400 200-2000 - 4 8 dds.mongodb.xlarge.arm2.shard 1000 200-4000 - 4 16 dds.mongodb.xlarge.arm4.shard 1000 200-4000 - 8 16 dds.mongodb.2xlarge.arm2.shard 4000 200-16000 - 8 32 dds.mongodb.2xlarge.arm4.shard 4000 200-16000 - 16 32 dds.mongodb.4xlarge.arm2.shard 8000 200-16000 - 16 64 dds.mongodb.4xlarge.arm4.shard 8000 200-16000
  • 现行实例规格说明 DDS集群实例的CPU规格分为通用型和增强Ⅱ型,详见表1。 表1 CPU规格类型 规格 说明 适用场景 通用型 与同一物理机上的其他通用型规格实例共享CPU资源,通过资源复用换取CPU使用率最大化,性价比较高,适用于对性能稳定性要求较低的应用场景。 侧重对成本、性价比要求较高的场景。 增强Ⅱ型 CPU性能强劲,并搭载全新网络加速引擎,以及DPDK(Data Plane Development Kit)快速报文处理机制,提供更高的网络性能以及算力,满足不同场景需求。 对数据库算力与网络有更高性能要求的网站和Web应用场景。 表2 config节点的规格 CPU类型 规格类型 vCPU(个) 内存(GB) 规格ID 缺省最大连接数配置 连接数取值范围 x86 增强Ⅱ型 2 4 dds.mongodb.c6.large.2.config 2000 200-2000 2 16 dds.mongodb.c6.large.8.config 2000 200-2000 4 32 dds.mongodb.c6.xlarge.8.config 4000 200-4000 8 64 dds.mongodb.c6.2xlarge.8.config 16000 200-16000 鲲鹏 - 2 4 dds.mongodb.large.arm2.config 2000 200-2000 4 8 dds.mongodb.xlarge.arm2.config 4000 200-4000 8 16 dds.mongodb.2xlarge.arm2.config 16000 200-16000 表3 dds mongos和shard节点的规格 CPU类型 规格类型 组件 vCPU(个) 内存(GB) 规格ID 缺省最大连接数配置 连接数取值范围 x86 通用型 dds mongos 1 4 dds.mongodb.s6.medium.4.mongos 1000 200-1000 2 4 dds.mongodb.s6.large.2.mongos 2000 200-2000 2 8 dds.mongodb.s6.large.4.mongos 2000 200-2000 4 8 dds.mongodb.s6.xlarge.2.mongos 4000 200-4000 4 16 dds.mongodb.s6.xlarge.4.mongos 4000 200-4000 8 16 dds.mongodb.s6.2xlarge.2.mongos 16000 200-16000 8 32 dds.mongodb.s6.2xlarge.4.mongos 16000 200-16000 shard 1 4 dds.mongodb.s6.medium.4.shard 1000 200-1000 2 4 dds.mongodb.s6.large.2.shard 2000 200-2000 2 8 dds.mongodb.s6.large.4.shard 2000 200-2000 4 8 dds.mongodb.s6.xlarge.2.shard 4000 200-4000 4 16 dds.mongodb.s6.xlarge.4.shard 4000 200-4000 8 16 dds.mongodb.s6.2xlarge.2.shard 16000 200-16000 8 32 dds.mongodb.s6.2xlarge.4.shard 16000 200-16000 增强Ⅱ型 dds mongos 1 8 dds.mongodb.c6.medium.8.mongos 1000 200-1000 2 8 dds.mongodb.c6.large.4.mongos 2000 200-2000 2 16 dds.mongodb.c6.large.8.mongos 2000 200-2000 4 16 dds.mongodb.c6.xlarge.4.mongos 4000 200-4000 4 32 dds.mongodb.c6.xlarge.8.mongos 4000 200-4000 8 32 dds.mongodb.c6.2xlarge.4.mongos 16000 200-16000 8 64 dds.mongodb.c6.2xlarge.8.mongos 16000 200-16000 16 64 dds.mongodb.c6.4xlarge.4.mongos 16000 200-16000 16 128 dds.mongodb.c6.4xlarge.8.mongos 16000 200-16000 32 128 dds.mongodb.c6.8xlarge.4.mongos 16000 200-16000 32 256 dds.mongodb.c6.8xlarge.8.mongos 16000 200-16000 64 256 dds.mongodb.c6.16xlarge.4.mongos 16000 200-16000 64 512 dds.mongodb.c6.16xlarge.8.mongos 16000 200-16000 shard 1 8 dds.mongodb.c6.medium.8.shard 1000 200-1000 2 8 dds.mongodb.c6.large.4.shard 2000 200-2000 2 16 dds.mongodb.c6.large.8.shard 2000 200-2000 4 16 dds.mongodb.c6.xlarge.4.shard 4000 200-4000 4 32 dds.mongodb.c6.xlarge.8.shard 4000 200-4000 8 32 dds.mongodb.c6.2xlarge.4.shard 16000 200-16000 8 64 dds.mongodb.c6.2xlarge.8.shard 16000 200-16000 16 64 dds.mongodb.c6.4xlarge.4.shard 16000 200-16000 16 128 dds.mongodb.c6.4xlarge.8.shard 16000 200-16000 32 128 dds.mongodb.c6.8xlarge.4.shard 16000 200-16000 32 256 dds.mongodb.c6.8xlarge.8.shard 16000 200-16000 64 256 dds.mongodb.c6.16xlarge.4.shard 16000 200-16000 64 512 dds.mongodb.c6.16xlarge.8.shard 16000 200-16000 鲲鹏 - dds mongos 2 4 dds.mongodb.large.arm2.mongos 2000 200-2000 - 2 8 dds.mongodb.large.arm4.mongos 2000 200-2000 - 4 8 dds.mongodb.xlarge.arm2.mongos 4000 200-4000 - 4 16 dds.mongodb.xlarge.arm4.mongos 4000 200-4000 - 8 16 dds.mongodb.2xlarge.arm2.mongos 16000 200-16000 - 8 32 dds.mongodb.2xlarge.arm4.mongos 16000 200-16000 - 16 32 dds.mongodb.4xlarge.arm2.mongos 16000 200-16000 - 16 64 dds.mongodb.4xlarge.arm4.mongos 16000 200-16000 - shard 2 4 dds.mongodb.large.arm2.shard 2000 200-2000 - 2 8 dds.mongodb.large.arm4.shard 2000 200-2000 - 4 8 dds.mongodb.xlarge.arm2.shard 4000 200-4000 - 4 16 dds.mongodb.xlarge.arm4.shard 4000 200-4000 - 8 16 dds.mongodb.2xlarge.arm2.shard 16000 200-16000 - 8 32 dds.mongodb.2xlarge.arm4.shard 16000 200-16000 - 16 32 dds.mongodb.4xlarge.arm2.shard 16000 200-16000 - 16 64 dds.mongodb.4xlarge.arm4.shard 16000 200-16000
共100000条