部署分片集群
在此页面上
分片集群为大型数据集提供横向扩展,并在一组服务器之间分配数据集以启用高吞吐量操作。
要了解有关分片的更多信息,请参阅 MongoDB 手册中的分片简介。
使用此步骤部署 Cloud Manager 管理的新分片集群。稍后,您可以使用 Cloud Manager 添加分片,并对集群执行其他维护操作。
要了解如何使用 Kubernetes 对象部署分片集群,请参阅 MongoDB Enterprise Kubernetes Operator 文档中的部署分片集群。
注意
Cloud Manager 中的新增功能
您可以使用 Kubernetes 通过 Cloud Manager 部署 MongoDB 实例。
要部署MongoDB集群,您必须预配主机来提供服务这些集群提供服务。 Cloud Manager需要访问权限这些主机。
重要
如果运行 MongoDB Enterprise 并预配自己的 Linux 主机,则必须在安装 MongoDB 之前为每台服务器手动安装一组依赖项。MongoDB 手册提供了相应命令来安装这些依赖项。
要进一步了解操作系统的具体情况,请参阅下文:
Considerations
分片集群的唯一名称
为新集群及其分片使用唯一名称。
重要
同一项目中的副本集、分片集群和分片名称必须唯一。如果部署没有唯一名称,将导致备份快照损坏。
配置服务器部署架构
如果您为配置服务器 mongod
进程选择MongoDB 3.4或更高版本,则Cloud Manager会将配置服务器部署为副本集。
要了解有关 CSRS和镜像配置服务器 ( SCCC ) 的详情,请参阅配置服务器。
删除分片
删除分片时,该分分片的任何未分片数据库都将使用分片命令移动到剩余分片片。
在分片移除过程中,所有分片集合均会保持在线并可用。但是,在 movePrimary
操作期间向未分片的集合发送的读取和写入操作则可能会导致意外行为,其中包括迁移失败或数据丢失。
我们建议在删除主分片之前移动包含未分片集合的任何数据库的主节点。
要学习;了解有关删除分片的更多信息,请参阅从现有分片集群中删除分片。
步骤
MongoDB Cloud ManagerGoDeployment在MongoDB Cloud Manager中,Go项目的 页面。
如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。
显示“部署”页面。
配置集群范围的设置。
Cluster Configuration(副本集配置)部分包含以下集群范围的配置设置。Cloud Manager 用户界面中标有 * 星号的设置是必需的。
设置 | 说明 |
---|---|
Cluster Name | 指定分分片集群部署的名称。 一旦设立就无法更改。 |
Config Server Replica Set Name | |
Shard Name Prefix | 指定集群中每个分片的前缀。 Cloud Manager 使用 |
Process Name | |
Version | |
Data Directory | 指定 每个 |
Log File |
配置集群中的每个分片。
在Member Configuration部分中,单击Shard Settings打开分片配置选项。 Cloud Manager 列出集群中的每个分片以及与该分片关联的mongod
进程。 每个分片进程都有以下选项:
设置 | 说明 |
---|---|
Member | 从菜单中选择以下副本集节点角色之一:
|
Hostname | 从菜单中选择 Cloud Manager Automation 将副本集节点部署到的主机。该菜单仅列出 Cloud Manager Automation 下的主机。有关向 Cloud Manager Automation 添加服务器的完整文档,请参阅预配服务器以实现自动化。 此主机名可以是主机名、FQDN、IPv4 地址或 IPv6 地址。 |
Port | |
Votes | |
Priority | |
Delay | 指定此节点应“滞后于”主节点的“滞后”秒数。此设置对应于 |
Build Indexes | 指定 |
Tags | |
Add a Mongod |
如要向集群添加其他分片,请执行以下操作:
单击 Add a Shard(连接)。
在 Cluster Configuration 部分下,为分片中的每个
mongod
设置以下参数:Version
Data Directory
Log File
配置集群中的每个配置服务器。
Cloud Manager会根据您为配置服务器选择的MongoDB版本,为您的配置服务器设置显示不同的标题。
- MongoDB 3.2或更高版本:
在Member Configuration部分中,单击Config Server Replica Set Settings打开 CSRS 配置选项。 每个配置服务器副本集成员都有以下选项:
设置说明Member
从菜单中选择以下副本集节点角色之一:
Default
副本集承载数据的节点,可以成为主节点,在选举中投票。
副本集未承载数据的节点,可以在选举中投票。对应于
arbiterOnly
副本配置选项。副本集承载数据的节点,可以在选举中投票。对应于
hidden
副本配置选项。副本集承载数据的节点,可以在选举中投票。对应于
secondaryDelaySecs
和hidden
副本配置选项。
Hostname
从菜单中选择 Cloud Manager Automation 将副本集节点部署到的主机。该菜单仅列出 Cloud Manager Automation 下的主机。有关向 Cloud Manager Automation 添加服务器的完整文档,请参阅预配服务器以实现自动化。
此主机名可以是主机名、FQDN、IPv4 地址或 IPv6 地址。
Port
Votes
Priority
Delay
指定此节点应“滞后于”主节点的“滞后”秒数。此设置对应于
secondaryDelaySecs
mongod
副本集配置选项。Build Indexes
指定
true
以指示mongod
建立索引。此设置对应于buildIndexes
mongod
副本集配置选项。Tags
Add a Mongod
- MongoDB 3.0或更早版本
在 Member Configuration(成员配置)部分中,单击 Config Server Settings(配置服务器设置)打开配置服务器选项。每个配置服务器都具有以下选项:
设置说明Hostname
从菜单中选择 Cloud Manager Automation 将副本集节点部署到的主机。该菜单仅列出 Cloud Manager Automation 下的主机。有关向 Cloud Manager Automation 添加服务器的完整文档,请参阅预配服务器以实现自动化。
此主机名可以是主机名、FQDN、IPv4 地址或 IPv6 地址。
Port
配置集群中的每个mongos
。
在 Member Configuration 部分中,单击 Mongos Settings 打开 mongos
配置选项。每个 mongos
进程都有以下选项:
设置 | 说明 |
---|---|
Hostname | 从菜单中选择 Cloud Manager Automation 将 此主机名可以是主机名、FQDN、IPv4 地址或 IPv6 地址。 |
Port | |
Add a Mongos | 单击以添加其他 |
配置集群中的每个副本集。
Replication Settings部分包含集群中每个副本集的以下配置选项:
设置 | 说明 |
---|---|
Protocol Version | 选择副本集使用的复制协议版本。操作设置对应 有关更多信息,请参阅副本集协议版本。 |
Chaining Allowed | 指定 |
Write Concern Majority Journal Default | 如果写关注未明确指定日志选项 |
Heartbeat Timeout (secs) | 指定副本集节点等待彼此成功心跳的秒数。此设置对应 |
Election Timeout (ms) | 指定检测副本集的主节点无法访问的时间限制(以毫秒为单位)。此设置对应于 |
CatchUp Timeout (ms) | 指定新选出的主节点与可能有更多近期写入操作的其他副本集节点进行同步(赶上)的时间限制(以毫秒为单位)。此设置对应于 |
CatchUp Takeover Delay (ms) | 指定节点在确定自己领先于当前主节点后启动追赶接管的等待时间(以毫秒为单位)。此设置对应于 |
Last Error Defaults | 指定副本集的默认写关注。仅当写入操作或 getLastError 未指定其他写关注时,副本集才使用此写关注。 如果未设置此选项,则副本集的默认写关注只需要主节点的确认。 以文档的形式指定此选项,即 |
Force Reconfigure | 指定要强制重新配置副本集。当设置为 警告:强制重新配置副本集可能会导致多数提交写入操作回滚。 请谨慎操作。如果您对此操作的潜在影响有任何疑问,请联系 MongoDB 支持团队。 要学习;了解更多信息,请参阅MongoDB Server手册中的重新配置具有不可用成员的副本集。 |