对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。

将现有 MongoDB 进程添加到 Cloud Manager

Cloud Manager 提供了一个向导,用于将现有 MongoDB 部署添加到监控和管理中。 向导会提示您:

部署在项目中必须具有唯一名称。

重要

同一项目中的副本集、分片集群和分片名称必须唯一。如果部署没有唯一名称,将导致备份快照损坏。

自动化并不支持所有 MongoDB 选项,这可能会导致导入尝试失败。 要了解更多信息,请参阅MongoDB 设置和自动化支持。

如果启用 TLS ,则为 MongoDB 进程提供服务的主机的 FQDN 必须与该主机上 TLS 证书的 SAN 匹配。

重要

To prevent man-in-the-middle attacks, keep the scope of TLS certificates as narrow as possible. Although you can use one TLS certificate with many SANs, or a wildcard TLS certificate on each host, you should not. To learn more, see RFC 2818, section 3.1.

在以下情况下,请设置首选主机名:

  • 要求特定的主机名、FQDN、IPv4 地址或 IPv6 地址以访问 MongoDB 进程、或

  • 必须指定用于具有多个别名的主机的主机名。

要学习;了解详情,请参阅项目设置中的Preferred Hostnames设置。

如果要将作为 Windows 服务运行的现有 MongoDB 进程添加到自动化,则自动化:

  • 停止并禁用现有服务

  • 创建并启动新服务

如果Cloud Manager项目为其部署启用了MongoDB身份验证设置,则您导入的MongoDB 部署必须支持该项目的身份验证机制。

我们建议您导入到没有运行的进程且未启用身份验证的新目标项目。

如果源集群使用身份验证,并且目标Cloud Manager项目没有任何现有托管流程,则Cloud Manager会在目标项目中启用身份验证,从源集群导入现有密钥文件,并使用它来对执行以下操作的用户进行身份验证:导入进程。

如果源集群和目标Cloud Manager项目都使用身份验证,并且该项目有进程,则Cloud Manager会在导入进程中尝试使用目标项目中的现有身份验证设置。 为了使导入进程成功,源集群和Cloud Manager目标项目上的身份验证凭证必须相同。

为确保导入成功,在开始导入进程之前,请在源集群上添加Cloud Manager目标项目的凭证。 要学习;了解更多信息,请参阅副本集轮换密钥或分片集群轮换密钥。

如果您的MongoDB 部署需要身份验证,则当您将部署添加到Cloud Manager进行监控时,您必须提供必要的凭证。

  • 如果部署未使用自动化,但使用了备份和/或监控,则您可以在更新到MongoDB Agent之前的档案位置找到这些档案。

  • 如果部署不使用自动化,但将使用备份和/或监控:

    1. 为凭证部署创建MongoDB。 要学习;了解更多信息,请参阅用于监控的MongoDB Agent所需的访问权限和用于备份的MongoDB Agent所需的访问权限。

    2. 添加 MongoDB 进程后,将您授予这些函数的档案添加到 Cloud Manager。 要了解更多信息,请参阅“添加用于监控的档案”和“添加用于备份的档案”。

  • 如果部署使用自动化, Cloud Manager将使用来自MongoDB Agent的档案。 您可以从旧版备份和监控代理中删除档案。 MongoDB Agent将这些档案用于其自动化、备份和监控功能。

  • 如果部署将使用自动化,但在导入之前未使用自动化,请将mms-automation用户添加到导入的数据库进程中,并将用户的凭证添加到Cloud Manager。

要了解更多信息,请参阅添加自动化档案。

将MongoDB 部署添加到自动化中可能会影响Cloud Manager项目和MongoDB 部署的安全设置。

  • 自动化启用了项目安全设置。 如果 MongoDB 部署需要身份验证,但 Cloud Manager 项目未启用身份验证设置,则当您将 MongoDB 部署添加到自动化时,Cloud Manager 会将项目的安全设置更新为新导入的部署的安全设置。

    仅当项目的安全设置当前已禁用时,导入过程才会更新 Cloud Manager 项目的安全设置。 导入过程不会禁用项目的安全设置或更改其已启用的身份验证机制。

  • 自动化导入 MongoDB 用户和角色。 以下声明适用于 MongoDB 部署需要身份验证或 Cloud Manager 项目已启用身份验证设置的情况。

    如果MongoDB 部署包含用户或用户定义的角色,您可以选择导入这些用户和角色以供Cloud Manager管理。 导入的用户和角色适用于Synced Cloud Manager项目中的所有托管部署。

    • 如果您将项目的Enforce Consistent Set值设置为Yes ,Cloud Manager 会从 MongoDB 部署中删除未导入的用户和角色。

    • 如果您将项目的Enforce Consistent Set值设置为No ,Cloud Manager 将停止管理项目中未导入的用户和角色。 这些用户和角色保留在 MongoDB 部署中。 要管理这些用户和角色,您必须直接连接到 MongoDB 部署。

    如果您不希望Cloud Manager项目管理特定的用户和角色,请在导入期间使用Authentication & Users和Authentication & Roles页面删除这些用户和角色,然后再确认和部署更改。 要学习;了解更多信息,请参阅管理或取消管理MongoDB用户。

    如果导入的MongoDB 部署在其admin数据库中已经有mms-backup-agent和mms-monitoring-agent用户,则导入进程会使用Cloud Manager项目中为mms-backup-agent和mms-monitoring-agent用户设立的角色覆盖这些用户的角色。

  • 自动化应用于项目中的所有部署。 项目的更新安全设置(包括Cloud Manager项目托管的所有用户和角色)应用于项目中的所有部署,包括导入的MongoDB 部署。

    Cloud Manager 使用新设置重新启动项目中的所有部署,包括导入的 MongoDB 部署。 导入后,项目中的所有部署在重新启动时都会使用 Cloud Manager 自动化密钥文件。

    导入的部署必须使用与目标项目中现有进程相同的密钥文件,否则导入进程可能无法继续。 要了解更多信息,请参阅源集群和目标集群上的身份验证档案。

    如果项目中的现有部署需要与导入进程不同的安全配置文件,请创建一个新项目,可以将源 MongoDB 部署导入其中。

以下示例适用于 MongoDB 部署需要身份验证或 Cloud Manager 项目已启用身份验证设置的情况。

如果导入MongoDB用户和自定义角色,一旦Cloud Manager项目开始管理MongoDB 部署,无论Enforce Consistent Set值如何,都会发生以下情况:

  • Cloud Manager项目支持身份验证,管理导入的用户和角色,并将新用户和角色同步到其所有托管部署。

  • MongoDB 部署的访问控制已启用,需要身份验证。 MongoDB 部署包含 Cloud Manager 项目管理的所有用户和角色。 这些用户和角色已将Synced设置为Yes 。

如果不导入 MongoDB 用户和自定义角色,一旦 Cloud Manager 项目开始管理 MongoDB 部署,就会发生以下情况:

如果Enforce Consistent Set设立为Yes :

  • Cloud Manager项目支持身份验证,并且不会更改其托管用户和角色。

  • MongoDB 部署的访问控制已启用,需要身份验证。

  • Cloud Manager 会从部署中删除未导入的 MongoDB 用户和角色。

  • MongoDB 部署包含 Cloud Manager 项目管理的所有用户和角色。 这些用户和角色已将Synced设置为Yes 。

如果Enforce Consistent Set设立为No :

  • Cloud Manager 项目启用身份验证,并且不会更改其安全设置,包括用户和角色。

  • MongoDB 部署的访问控制已启用,需要身份验证。

  • 未导入的MongoDB用户和角色保留在MongoDB 部署中。

  • MongoDB 部署包含由 Cloud Manager 项目管理的所有用户和角色。 这些用户和角色已将Synced设置为Yes 。

  • 如果在部署上将 mongod 作为服务启用,则可能会导致竞争条件,即 systemd 在重启时启动 mongod ,而不是自动化。为防止出现此问题,请确保在将部署添加到自动化之前禁用 mongod 服务:

    1. 验证是否已启用mongod服务:

      sudo systemctl is-enabled mongod.service
    2. 如果该服务已启用,请将其禁用:

      sudo systemctl disable mongod.service
  • 如果Cloud Manager 项目未启用身份验证设置,但MongoDB 进程需要身份验证,请为MongoDB Agent Cloud Manager项目添加具有适当角色的 用户。导入进程会显示用户所需的角色。 添加的用户将成为项目的MongoDB Agent用户。

  • 如果Cloud Manager项目启用了身份验证设置,请将Cloud Manager项目的MongoDB Agent用户添加到MongoDB进程。

    • 要查找MongoDB Agent用户,请执行以下操作:

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

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

      3. 在侧边栏中,单击 Database 标题下的 Security。

      显示“安全”页面。

      2
    • 要查找Cloud Manager项目的MongoDB Agent用户的密码,请使用以下方法之一:

      按照“添加 MongoDB 进程”过程中的步骤在用户界面中启动向导。 当到达显示Do you want to add automation to this deployment?的模态窗口时:

      1. 选择 Add Automation and Configure Authentication 。

      2. 单击 Show Password(连接)。

      例子

      如果Cloud Manager项目使用用户名/密码身份验证,请将项目的Cloud Manager MongoDB助手用户mms-automation添加到要导入的MongoDB 部署中的admin数据库。

      db.getSiblingDB("admin").createUser( { user: "mms-automation", pwd: <password>, roles: [ 'clusterAdmin', 'dbAdminAnyDatabase', 'readWriteAnyDatabase', 'userAdminAnyDatabase', 'restore', 'backup' ] })
  • 当您在 Cloud Manager 下添加集群时,Cloud Manager 会自动启用日志轮换,这可能会与mongod或mongos志的现有logRotate配置发生冲突。 要防止这种冲突,请执行以下操作:

    • 为mongod或mongos进程禁用logRotate配置。

    • systemLog.logRotatesystemLog.logAppend从mongod 或mongos 进程 配置 中删除 和 选项 ,以使用默认的Cloud Manager。

  • 导入进程要求源集群和目标集群上的身份验证凭证和密钥文件相同。 要学习;了解更多信息,请参阅源集群和目标集群上的身份验证档案。

  • 当您导入主节点 (primary node in the replica set)-从节点(secondary node from replica set)-仲裁节点 (PSA) 副本集时,您导入的副本集的密钥文件内容必须与 Cloud Manager 在目标项目中托管的密钥文件相匹配。否则,由于身份验证失败,仲裁节点的导入过程将失败。

    为避免此问题,您可以在导入副本集之前删除仲裁节点,然后在导入完成后重新添加仲裁节点。

  • 要将现有副本集成功导入 Cloud Manager,实例必须正常。

重要

如果要添加分片集群,则必须通过 mongos 和在每个分片上创建此用户。也就是说,通过 mongos 创建集群广泛用户,并在每个分片上创建分片本地用户。

要将现有MongoDB进程添加到Cloud Manager,请执行以下操作:

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

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

  3. 在侧边栏中,单击 Database 标题下的 Processes。

显示“进程”页面。

2
3

将现有 MongoDB 进程添加到 Cloud Manager 后,如果已将部署导入到的项目启用了身份验证,则可能需要为新部署添加身份验证档案。 请参阅身份验证使用案例,了解在哪些情况下必须为新部署添加自动化、监控或备份档案。

如果您要添加打算实时迁移到Atlas的部署,则只需为监控添加该部署(及其凭证)。

选择要使用的身份验证机制:

要为将使用自动化但在导入到 Cloud Manager 之前未使用自动化的部署添加档案,请执行以下操作:

1

MongoDB Agent用户对MongoDB数据库执行自动化任务。 确保此MongoDB用户具有适当的权限。

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

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

  3. 在侧边栏中,单击 Database 标题下的 Security。

显示“安全”页面。

3

执行以下操作之一:

  • 如果这是您第一次为此项目配置 TLS、身份验证或授权设置,请单击 Get Started。

  • 如果已经为此项目配置 TLS 身份验证或授权设置,请单击 Edit。

4
5
6
设置
值

MongoDB Agent Username

输入MongoDB Agent用户名。

MongoDB Agent Password

输入MongoDB Agent用户名的密码。

要为不使用自动化但使用监控的部署添加凭证,请执行以下操作:

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

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

  3. 在侧边栏中,单击 Database 标题下的 Processes。

显示“进程”页面。

2

单击,然后单击要查看监控设置的部署旁边的Monitoring Settings 。

3
4
设置
值

Monitoring Username

输入监控用户名。

Monitoring Password

输入监控用户名的密码。

要为不使用自动化但使用备份的部署添加档案,请执行以下操作:

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

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

  3. 在侧边栏中,单击 Database 标题下的 Continuous Backup。

    显示“持续备份”页面。

2
3
设置
值

Backup Username

输入备份用户名。

Backup Password

输入备份用户名的密码。

给本页内容打分