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

自管理 mongot 的已知局限性

本页介绍了自管理 mongot 部署的限制和不支持行为。

以下部分按类别分组,介绍了自管理 mongot 部署的已知限制。

限制
适用于
说明

mongot 独立运行的实例 Tarball 或容器不是支持的企业生产路径

Enterprise Advanced。

从独立运行的实例或容器运行 mongot 不是 Enterprise Advanced 支持的生产路径。企业生产支持假设 MCK 托管的 mongot,并配备相关的运行工具、监控集成和支持覆盖。

atlas-local Docker 映像不是生产部署目标

atlas-local Docker 映像。

atlas-local Docker 映像是单容器、单节点设置,专为本地开发和测试而设计,不适用于生产环境。对于生产环境,请使用支持的生产部署路径。

IBM POWER (ppc64le) 或 IBM Z (s390x) 不支持 mongot

所有版本和部署路径。

mongot 不支持 IBM POWER (ppc64le) 或 IBM Z (s390x)。mongot 仅在 Linux 上支持 x86_64aarch64

Windows 和 macOS 不支持作为原生部署目标

所有版本和部署路径。

MongoDB 不提供原生 Windows 或 macOS mongot 二进制文件,因为 mongot 是为 Linux 构建的。对于本地开发和测试,请使用 atlas-local Docker 图像部署 mongot。对于更复杂的部署,请使用 MongoDB Kubernetes 操作符管理 mongot,或配置 mongodb-community-search 容器图像以连接到 MongoDB 环境。

限制
适用于
说明

Linux Tarball 不安装 systemd 服务

Community Edition tarball 安装。

Linux tarball 不包含 systemd 单位。您可以编写自己的 systemd 单位,也可以使用容器图像进行进程生命周期管理。

Community Edition 不支持包管理器安装

社区版。

aptyum 安装不适用于 Community Edition。要安装 mongot,请使用 tar 包或容器形象。

限制
适用于
说明

X.509 证书轮换需要重启 mongot

所有部署路径。

mongot 在启动时读取 X.509 证书。要获取新证书,必须在旋转 X.509 证书后重启 mongot。为了最大程度地减少中断,请在维护窗口期间安排证书旋转。

SCRAM 密码轮换需要重启 mongot

所有部署路径。

mongot 在启动时读取 SCRAM 凭证。要获取新凭证,必须在轮换 SCRAM 凭证后重启 mongot。为了最大程度地减少中断,请在维护窗口期间安排 SCRAM 凭证轮换。

mongot 不验证 OCSP 或 CRL 撤销

使用 X.509 或 TLS 身份验证的所有部署路径。

mongot 不通过 OCSPCRL 验证 X.509 或 TLS 证书撤销。要处理撤销,请在 mongod 上删除对应的 $external 用户。删除后,下一次握手将拒绝已撤销的证书。

mongot 不提供静态加密

所有部署路径。

mongot 不提供原生的应用程序级别静态加密。取而代之,您可以加密底层文件系统或块设备,例如在 Linux 上使用 LUKS 或 dm-crypt,云提供商管理的加密卷,或基于 KMS 的磁盘加密。

不支持 FIPS 验证的 TLS 模式

所有部署路径。

mongot 不支持在 FIPS 验证的加密模式下运行其 TLS 堆栈。

限制
适用于
说明

Atlas Search 指标用户界面不适用于自管理部署

所有自管理部署。

MongoDB Search 指标 用户界面 不适用于自管理的 mongot。使用 Prometheus 和 Grafana 或其他监控堆栈,并使用 mongot /metrics 终结点。要了解更多信息,请参阅监控工具集成。

MongoDB Ops Manager 可见性不全面 mongot

使用 MongoDB Ops Manager 和 MongoDB Controllers for Kubernetes 操作符 的 Enterprise Advanced 部署。

在 Enterprise Advanced 中,Ops Manager 通过 MongoDB Controllers for Kubernetes Operator 部署的 OpenTelemetry 管道捕获和显示有限的一组指标。这些指标是为支持分类和健康可见性而筛选的,但不用于深度诊断。

限制
适用于
说明

一个 mongot 实例无法为多个 mongod 部署提供服务

所有部署路径。

单个 mongot 实例不能在多个不相关的 MongoDB 部署之间共享,因为 mongot 实例仅绑定到一个副本集,或分片集群中的一个分片。若要为多个 MongoDB 部署提供查询服务,请为每个副本集或分片单独部署一个 mongot 实例。

主版本降级需要重新同步

所有部署路径。

跨主要版本降级 mongot 需要 mongodmongot 之间的重新同步,因为主要版本不支持回滚。

mongot 升级需要重启进程

所有部署路径。

mongot 升级需要进程重启。为了最大程度地减少中断,请安排维护窗口,或在 MongoDB Controllers for Kubernetes Operator 下使用多个 mongot 实例的滚动重启模式。

mongot 配置更改需要重启

所有部署路径。

mongot 在启动时读取其配置。要应用配置更改,必须在编辑 mongot 配置文件后重启 mongot

以下部分将对 Atlas 和自管理 mongot 之间对 MongoDB Search 和 MongoDB 向量搜索功能的支持进行比较。使用本节中的表格比较迁移或混合部署的选项。

搜索和向量搜索在 Atlas 和自管理 mongot 上共享同一个搜索引擎,因此,查询行为、评分和索引语义在平台之间大致一致。

下表比较了 Atlas 管理和自管理 mongot 之间可用的搜索和向量搜索功能。

搜索和向量搜索功能
功能可用性

$search, $searchMeta$vectorSearch 聚合阶段

在 Atlas 和自管理上相同。

索引定义语法

nestedRoot 自管理 mongot 不支持该语法。要了解更多信息,请参阅 如何为向量搜索建立字段索引。

createSearchIndex, dropSearchIndexupdateSearchIndexgetSearchIndexes 辅助方法

在 Atlas 和自管理上相同。

$listSearchIndexes 聚合阶段

自管理 mongot 的输出与 Atlas Search 不同。有关 Atlas Search 输出形状,请参阅$listSearchIndexes。自管理 mongot 输出在以下字段中有所不同:

  • 无顶级 type 字段

  • synonymMappingStatusDetail 是状态对象的平面列表,而不是嵌套文档

基于 Lucene 的评分和排名

在 Atlas 和自管理上相同。

同义词、分析器和自定义映射

在 Atlas 和自管理上相同。

矢量量化选项

在 Atlas 和自管理上相同。

$rerank

仅在 Atlas 上可用。

通过 Voyage AI 自动嵌入

在两个平台上预览。要了解自管理 mongot 支持哪些自动嵌入功能,请参阅 自动嵌入。

下表比较了 Atlas 和自管理 mongot 之间的自动嵌入功能支持。要了解有关自动嵌入的更多信息,请参阅自动嵌入概述。

自动嵌入功能
Atlas
自管理(Self-managed) mongot

Voyage AI 集成

Available with the same Voyage AI models and options as self-managed mongot.

可在预览版中使用,具有与 Atlas 相同的 Voyage AI 模型和选项。

Rate-limit visibility

Atlas 在用户界面中公开 RPM 和 TPM 限制。

产品中未提供速率限制可见性。限制由 Voyage AI 端强制执行。

计费路径

Atlas 可以通过 MongoDB 代理终结点为嵌入计费。

计费取决于您是使用 MongoDB 代理终结点还是直接连接到 Voyage AI。

下表比较了 Atlas 和自管理部署如何处理 mongot 部署和管理生命周期的操作方面。

操作方面
Atlas
自管理(Self-managed) mongot

配置

MongoDB 预配并运行 mongot

您可以使用 tarball、容器、MongoDB Controllers for Kubernetes Operator 或 atlas-local 来预配 mongot

mongot 版本可见性

Atlas 公开发布时间,而不是直接的 mongot 版本字符串。

mongot 包的版本包含明确的 MAJOR.MINOR.PATCH 版本。

升级

MongoDB 会按照自己的节奏执行 Atlas 升级。

升级完全自管理。

安全修补

MongoDB 在 Atlas 上应用补丁。

安全补丁需要自管理升级。

多实例扩展

MongoDB Search 节点处理管理服务内的扩展。

对于多个搜索节点或分片拓扑结构,请使用 MongoDB Controllers for Kubernetes 操作符 或自己管理拓扑结构。

分片集群

Atlas 支持。

仅支持 Enterprise Advanced 版的 Kubernetes 操作符 的 MongoDB Controllers。Kubernetes 操作符 的 MongoDB Controllers 不支持分片的 Community Edition 架构。

下表比较了 Atlas 和自管理 mongot 可用的监控工具和可观测性选项。

监控和可观测性选项
Atlas
自管理(Self-managed) mongot

MongoDB Search 指标用户界面

可在 Atlas 用户界面中使用。

不可用。要学习更多信息,请参阅 可观测性。

MongoDB 托管警报

具有默认阈值的筛选警报。

您自己定义警报。要了解更多信息,请参阅mongot的推荐警报。

FTDC 保留

由 MongoDB 托管。

您可以管理旋转和保留。

日志保留

由 MongoDB 托管。

您转发并保留日志。

mongot指标仪表盘

可在 Atlas 用户界面中使用。

未在用户界面组件中提供。要了解如何从 mongot 指标构建仪表盘,请参阅 mongot 指标参考。

MongoDB Ops Manager mongot 可见性

Atlas 中不可用。

在 Enterprise Advanced 中,MongoDB Ops Manager 通过 Kubernetes Operator 的MongoDB控制器部署的 OpenTelemetry 管道暴露筛选的 mongot 指标。要了解更多信息,请参阅可观测性。

下表比较了 Atlas 部署和自管理部署如何处理 mongodmongot 的可靠性和可用性功能。

可靠性和可用性功能
Atlas 托管部署
自管理部署

mongot 实例可用性

Atlas 管理恢复行为。

您负责监督和恢复。使用 MongoDB Kubernetes 操作符托管的副本或自己的进程监督。

备份和恢复

Atlas 云备份托管 mongod 快照。可以从 MongoDB 数据库快照恢复的数据重建 mongot 中的搜索索引。

您负责备份 mongodmongot 中的搜索索引可以从 MongoDB 数据库快照恢复的数据重建。

灾难恢复

Atlas 提供区域和云端故障转移模式。

您自行设计灾难恢复拓扑结构。

容量扩展

Atlas 提供托管的搜索节点扩展。

您需预先评估容量,并根据需要通过更改 mongot 资源并重启来进行调整。

下表比较 Atlas 托管部署和自管理部署如何处理 mongodmongot 的安全。

安全功能
Atlas 托管部署
自管理部署

mongodmongot 之间的身份验证

由 Atlas 在内部托管。

您配置 SCRAM 或 X.509 身份验证。

mongodmongot 的 TLS

始终开启并由 Atlas 托管。

您自己配置 TLS。

静态加密

Atlas 提供托管的静态加密选项,包括 KMS 集成。

mongot 不提供原生静态加密。要了解更多信息,请参阅 身份验证和安全。