此页面列出了在使用 MongoDB Controllers for Kubernetes Operator 部署 mongot 时 MongoDB Search 和向量搜索的已知限制。查看此页面和发布说明,了解未来发布中这些限制的任何变化。
部署和拓扑结构
仅 MongoDB Enterprise Advanced 支持由 Kubernetes MongoDB 操作符托管的分片集群拓扑结构。要了解 MongoDB Controllers for Kubernetes Operator 支持哪些拓扑结构,请参阅 支持的拓扑结构。
mongot实例绑定到单个副本集或分片集群中的单个分片。您不能在多个mongod部署中共享一个mongot实例。为每个副本集或分片部署单独的mongot实例。自管理负载负载均衡器仅支持单集群部署。多集群部署需要托管Envoy 负载负载均衡器。
mongot不支持跨集群查询故障转移。每个集群的搜索部署都是独立的。如果某个集群变得不可用,则该集群中的搜索将不可用,并且查询不会故障转移到另一个集群。删除多集群
MongoDBSearch资源时, Kubernetes垃圾集合仅删除中央集群中的资源。 Kubernetes Operator 的MongoDB控制器不会删除它在其他成员集群中创建的mongot资源。手动删除这些资源。如果您从
spec.clusters中删除集群, Kubernetes Operator 的MongoDB控制器不会删除该集群的所有资源。对于分片集群源, MongoDB Controllers for Kubernetes Operator 会删除过时的
mongotStatefulSet、Services 和 ConfigMap,但不会删除TLS 证书密钥或 Envoy 代理资源。对于副本集源, Kubernetes Operator 的MongoDB控制器不会删除集群的任何资源。手动删除剩余资源。
安全性
mongot在启动时读取证书,在运行时不会重新加载证书。如果您在spec.security.tls.certsSecretPrefix引用的 Secret 中轮换 TLS 证书,Kubernetes Operator 的 MongoDB 控制器将检测到变更,并以滚动方式自动重启mongot,即每个mongot组中一次重启一个mongotpod。mongot在启动时读取凭证。为search-sync-source用户轮换 SCRAM 密码后,必须重启mongot,以便其读取新凭证。Kubernetes Operator 的 MongoDB 控制器不会自动重启mongot以应对此变更。mongot不验证 OCSP 或 CRL 证书撤销。要拒绝已撤销的证书,请删除mongod上对应的$external用户。mongot不提供应用程序级别的静态加密。要加密mongot索引数据,请使用 Kubernetes 级别或云提供商机制加密根本的卷。要学习更多信息,请参阅保护 MongoDB 与搜索之间的连接。
配置与维护
mongot在启动时读取其配置,不支持实时配置重新加载。如果您更改MongoDBSearch资源,Kubernetes Operator 的 MongoDB 控制器将以滚动方式自动重启mongot,即在每个mongot组中一次重启一个mongotpod,以应用更改。mongot升级需要进程重启。不支持原位二进制交换。要了解更多信息,请参阅升级或降级。索引存储不能在
mongot主要版本之间转移。mongot主版本降级需要重新同步,这会从源数据重建索引。谨慎规划主版本升级,并备份mongod,以便在需要降级时重建索引。
可观察性
- Atlas 中的指标用户界面不适用于自行管理的
mongot部署。要设置监控,请使用mongot曝露的指标终结点,或使用指标转发器将mongot指标转发到 MongoDB Ops Manager。指标转发器需要 MongoDB Ops Manager 8.0.25 或更高版本,不支持 Cloud Manager。要了解更多信息,请参阅监控部署。
Search 和 向量搜索 功能
自动嵌入是预览功能,仅与 Voyage AI 模型集成。要使用其他嵌入提供商,请在应用程序中生成嵌入并将其存储在向量字段中。
自动嵌入仅适用于单集群拓扑。
受 Atlas 专用标志保护的功能在自管理
mongot上不可用。某功能只有在mongot二进制版本中发布后才可在自管理部署上使用。