Docs 菜单
Docs 主页
/
MongoDB Cloud Manager
/

运行状况检查解决方案

在此页面上

  • 主机的可用磁盘空间在减少
  • 主机磁盘利用率过高
  • 主机出现启动警告
  • 无法访问主机
  • MongoDB 版本已过时
  • 副本集的票数为偶数
  • 副本集的数据承载节点少于三个
  • 副本集具有混合版本节点
  • 副本集具有多个仲裁节点
  • 共享集群拥有混合版本节点
  • 排队操作过多
  • 复制延迟过多

此页面列出了 Cloud Manager 运行状况检查功能可能引发的问题,并为这些问题提供了解决方案。

如果 Cloud Manager 估计磁盘将在两周或更短时间内被占满,则 Cloud Manager 会认为任何主机上的任何磁盘都需要增加磁盘容量。

若要解决此问题,请将数据库转移到容量更大的磁盘。

如果任何主机的任何磁盘长时间主动存储或检索数据,Cloud Manager 都会视为磁盘利用率过高。

要解决此问题,请将您的数据库转移到具有更高吞吐量的磁盘。

默认值较低的进程和用户限制可能会在正常的MongoDB操作过程中导致许多问题。 有关更多信息和建议,请参阅MongoDB手册中的UNIX ulimit 设置

在具有 NUMA 的系统上运行MongoDB可能会导致许多操作问题,包括时段性的性能缓慢和系统进程使用率较高。 有关更多信息和建议,请参阅MongoDB手册中的MongoDB和 NUMA 硬件

有关 Readahead启动警告的信息和建议,请参阅 MongoDB 手册此部分中的预读信息。

有关Transparent Huge Pages and Defrag初创企业警告的信息和建议,请参阅禁用透明大页面 (THP)。

MongoDB 助手连接到部署中的每个 MongoDB 进程以收集诊断数据。

如果您的 MongoDB 助手无法连接到一个进程,请考虑下面这些可能的解决方案:

原因
解决方案

主机不再存在。

从 Cloud Manager 中删除主机。

监控无法到达主机。

有关可能的解决方案,请参阅主机关闭警报的补救措施

对于由 Cloud Manager 管理的 MongoDB 部署,Cloud Manager 支持 MongoDB 版本之间的安全自动升级和降级操作,同时最大限度地提高部署的可用性。Cloud Manager 支持分片集群、副本集和 MongoDB 独立实例的升级和降级操作。

配置可用的 MongoDB 版本介绍了如何选择 Cloud Manager 可用的 MongoDB 版本。

如果Cloud Manager不管理您的部署,请手动更改MongoDB的版本。 MongoDB手册提供了每个发布的升级教程。 示例,有关从早期版本升级到MongoDB 4.2的信息,请参阅将MongoDB升级到4.2

对于托管部署:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Processes标签页。

显示“进程”页面。

3
  1. 单击 Topology(集群)视图。

  2. 在列出群集、副本集或进程的行上,单击 Modify(修改)。

  3. Version(版本)字段中,选择版本。然后单击 Apply(应用)。

  4. 单击 Review & Deploy(连接)。

  5. 单击 Confirm & Deploy(连接)。

有关更多信息和预防措施,请参阅更改 MongoDB 版本

如果主节点发生故障,而副本集中的投票成员数量为偶数,则可能导致选举问题出现问题。应考虑在副本集中额外添加的投票节点,以确保投票数为奇数。

可以在副本集中添加仲裁节点,以允许成员数量为奇数,而不会因成员复制数据而产生开销。

如果您的部署不是托管Cloud Manager,请按照MongoDB手册的说明手动将仲裁节点添加到副本集。

对于托管部署:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Processes标签页。

显示“进程”页面。

3
  1. 单击 Topology(集群)视图。

  2. 在列出副本集的行内单击 Modify(修改)。

4
  1. Member Options下,单击Add并选择Arbiter

  2. 单击 Apply(连接)。

  3. 单击 Review & Deploy(查看并部署)。Cloud Manager 会显示建议进行的更改。

  4. 单击 Confirm & Deploy(连接)。

我们建议副本集至少包含三个数据承载节点,以确保高可用性。如需了解影响高可用性的因素,请参阅 MongoDB 手册中的以下页面:

如果您的部署不是托管Cloud Manager,请按照MongoDB手册的说明手动将节点添加到副本集。

对于托管部署:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Processes标签页。

显示“进程”页面。

3
  1. 单击 Topology(集群)视图。

  2. 在列出副本集的行内单击 Modify(修改)。

4
  1. 通过增加MongoDs Per Replica Set字段中的成员数量来添加成员。

  2. 单击 Apply(连接)。

  3. 单击 Review & Deploy(查看并部署)。Cloud Manager 会显示建议进行的更改。

  4. 单击 Confirm & Deploy(连接)。

由于潜在的不兼容性,建议将已过时的 MongoDB 实例版本升级到集群中的最新版本。

如果您的部署不是由Cloud Manager托管,则需要手动更改MongoDB的版本。 MongoDB手册提供了每个发布的升级教程。 示例,有关从早期版本升级到MongoDB 4.2的信息,请参阅将MongoDB升级到4.2

对于托管部署:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Processes标签页。

显示“进程”页面。

3
  1. 单击 Topology(集群)视图。

  2. 在列出副本集的行内单击 Modify(修改)。

  3. Version(版本)字段中选择版本,然后单击 Apply(应用)。

  4. 单击 Review & Deploy(连接)。

  5. 单击 Confirm & Deploy(连接)。

有关更多信息和预防措施,请参阅更改 MongoDB 版本

将仲裁节点添加到节点数量为偶数的副本集内,以便在主节点的选举中添加一个投票。仲裁节点始终只有一票,这样将使副本集具有奇数数量的节点,而不会由于节点复制数据而产生开销。只需一个仲裁节点即可打破选举平局。

如果您的部署不是托管Cloud Manager,请按照MongoDB手册的说明从副本集手动删除成员。

对于托管部署:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Processes标签页。

显示“进程”页面。

3
  1. 单击 Topology(集群)视图。

  2. 要删除仲裁节点,请单击省略号图标并选择 Remove from Replica Set(从副本集删除)。

  3. 单击 Remove 进行确认。

  4. 单击 Review & Deploy(查看并部署)。Cloud Manager 会显示建议进行的更改。

  5. 单击 Confirm & Deploy(连接)。

有关部署架构的更多信息,请参阅 MongoDB 手册中的副本集部署架构

分分片集群的组件运行不同版本的MongoDB。

为避免兼容性问题,请为组成分片集群的所有mongosmongod进程使用相同版本的 MongoDB。 这包括用于集群mongod 配置服务器 分片 的所有 进程。

要更改mongodmongos进程的版本,请参阅更改 MongoDB 的版本。

排队操作是等待处理的操作。已达到硬件容量或查询性能不佳时,可能会发生这种情况。

如果您有权访问 Cloud Manager Premium,则可以使用 Cloud Manager Profiler 跟踪长时间运行的操作。要在 Cloud Manager 中启用分析器工具,请执行以下操作:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Deployment(数据库部署)页面尚未出现,请单击侧边栏中的 Deployment(数据库)。

    显示“部署”页面。

2

单击部署的Processes标签页。

显示“进程”页面。

3
  1. 单击 Topology(集群)视图。

  2. 在列出了此进程的那一行上,单击 Metrics(指标)按钮。

  3. 单击Profiler标签页并按照说明启用分析器。

即使无权访问 Cloud Manager Premium,您仍然可以访问分析数据,以获取有关性能和数据库操作的统计信息。要阅读有关分析数据库的更多信息,请参阅分析数据库

复制延迟是指主节点上的操作与将该操作从 oplog 应用到从节点之间的延迟。复制延迟可能会成为显著问题,可能会严重影响 MongoDB 副本集部署。过多的复制延迟会让“滞后”成员失去快速成为主节点的资格,并增加分布式读取操作不一致的可能性。

要了解如何排除复制延迟的故障,请参阅 MongoDB 手册中的检查复制延迟

后退

警报事件类型