Docs 菜单
Docs 主页
/
适用于Kubernetes Operator 的MongoDB控制器

Kubernetes Operator 的MongoDB控制器发布说明

发布日期04 9 月2025

  • 多架构支持

    • 为Kubernetes Operator 增加全面的多架构支持。

    • 支持在IBM POWER (ppc64le) 和IBM Z (s390x) 架构上部署,并提供现有的 x86_64支持。

    • 核心映像(操作符、代理、初始化容器、数据库、就绪探针)现在支持多种架构。但是,此发布并未添加对MongoDB Ops Manager和 mongodb-kubernetes-init-ops-manager 映像的IBM和 ARM支持。

      注意

      此发布将MongoDB 助手映像迁移到新的容器存储库quay.io/mongodb/mongodb-agent

      • 新存储库中的代理支持x86-64、ARM64、s390x 和 ppc64 文件架构。要学习;了解更多信息,请参阅 容器映像。

      • 运行版本大于或等于 1.3.0 和静态的Kubernetes Operator 无法使用旧容器存储库quay.io/mongodb/mongodb-agent-ubi 中的代理映像。

      请勿使用 quay.io/mongodb/mongodb-agent-ubi,因为它只是为了向后兼容而提供的。

  • 修复了有状态设立容器的当前架构,该架构依赖于“代理矩阵”来映射操作符和代理版本。新设计消除了 operator-version/agent-version 矩阵,但增加了一个包含所有必需二进制文件的容器。此架构映射到 mongodb-database容器。

  • 修复了以下问题:即使身份验证机制与其他节点不同步,就绪情况探测器也会将该节点报告为就绪,有时会导致过早重启。

  • 修复MongoDB助手不遵守操作符上配置的 NO_PROXY 环境变量的问题。

  • 更改 Webhook ClusterRoleClusterRoleBinding默认名称以包含命名空间,这样不同命名空间中的多个操作符安装就不会相互冲突。

  • PersistentVolumeClaim 的可选权限移至单独的角色。

    使用 Helm 管理操作符时,可以通过将PersistentVolumeClaim operator.enablePVCResize值设置为 (默认值为false )来禁用true 资源的权限。如果启用,这些权限是主节点 (primary node in the replica set)操作符角色的一部分。通过此更改,权限将具有独立的角色。

  • 删除 subresourceEnabled Helm 值。

    默认,此设置为 true。您可以通过指定 false 作为值,从操作符角色中排除子资源权限。引入此设置是为了作为OpenShift问题(缺陷 1803171)的临时解决方案。此问题现已解决,不再需要进行设置。因此,此更改删除了此配置选项,使操作符角色始终具有子资源权限。

  • 不包括MongoDB Ops Manager 7.0.16 版本的容器映像, 8.0.8,8.0.9 和 8。0。10由于MongoDB Ops Manager中存在错误,该错误阻止Kubernetes Operator 用户升级这些版本的MongoDB Ops Manager部署。

10 7 月2025发布

  • OpenID Connect (OIDC) 用户身份验证
  • 新建 ClusterMongoDBRole CRD
    • 添加新的ClusterMongoDBRole CRD 以支持跨多个MongoDB集群的可重用角色。这样,用户只需定义一次角色,即可在多个MongoDB或 MongoDBMultiCluster 资源中重复使用这些角色。

    • 您可以使用spec.security.roleRefs字段引用此角色。请注意,一次只能使用 spec.security.rolesspec.security.roleRefs 之一。

    • 该操作符将 ClusterMongoDBRole 资源视为自定义角色模板,仅在被数据库资源引用时使用。

    • 默认下, 操作符会监视新资源。这意味着操作符要求您创建新的 ClusterRole 和 ClusterRoleBinding。默认下,helm 图表或 kubectl MongoDB插件会创建这些 ClusterRole 和 ClusterRoleBinding。 如果使用其他安装方法,则必须手动创建它们。

    • 要在 helm 图表中禁用此行为,请将 operator.enableClusterMongoDBRoles 值设立为 false。这将禁用为 ClusterMongoDBRole资源创建必要的 RBAC 资源,并禁用对此资源的监视。

    • 要跳过使用 kubectl MongoDB插件安装必要的 ClusterRole 和 ClusterRoleBinding,请将 --create-mongodb-roles-cluster-role设立为 false

    • 新的 ClusterMongoDBRole资源被设计为只读,这意味着它可供不同 Operator托管的MongoDB部署使用。

    • 您可以随时删除ClusterMongoDBRole资源,但操作符不会删除使用此资源创建的任何角色。要正确删除访问权限,您必须手动删除MongoDB或 MongoDBMultiCluster 资源中对 ClusterMongoDBRole 的引用。

    • 此资源的参考文档可以在 ClusterMongoDBRole 资源规范 中找到。

  • 修复将 MongoDBMultiCluster资源移动到新项目(或新的MongoDB Ops Manager实例)会使部署处于失败状态的问题。

23 5 月2025发布

  • MongoDBSearch(社区专用预览版)
    • 新增对部署MongoDB Search(社区私有预览版)的支持。

    • 为 MongoDB Community 部署启用全文搜索和向量搜索功能。

    • 添加新的MongoDB CRD,默认下由Kubernetes Operator 监控。有关更多信息,请参阅快速入门。

    • MongoDBSearch 私有预览阶段存在以下限制
      • 最低MongoDB Community版本:8.0。

      • 必须在MongoDB中禁用 TLS(mongotmongod 之间的通信目前采用明文形式)。

13 5 月2025发布

  • 添加OpenShift目录和Operatorhub.io目录中的Kubernetes Operator 捆绑包中缺失的MongoDB 助手映像。

  • 添加 Helm图表 的监视列表中缺失的 mongodbcommunity CRD。

9 5 月2025发布

MongoDB通过引入Kubernetes Operator 来统一其Kubernetes产品。这个新的操作符是一个开源项目,是之前的MongoDB Community OperatorMongoDB Enterprise Kubernetes Operator的合并。这样可以更轻松地管理、扩展和升级部署。未来的变化将在此基础上构建,以更紧密地协调社区和企业在Kubernetes中的托管方式,从而提供更加无缝和简化的体验。

作为一个开源项目,它现在允许社区贡献,帮助推动更快的错误修复和持续创新。

持有允许使用 Enterprise Operator 的合同的用户仍然可以利用新的替代方案,从而允许客户在不更改合同的情况下采用它。Kubernetes Operator 本身根据 Apache 2.0 许可证获得许可,存储库中包含的许可证文件提供了更多详细信息。

所有其他MongoDB产品和工具(例如MongoDB Enterprise Server 和MongoDB Ops Manager)的许可权利保持不变。 如果您对这些产品或工具有许可问题,请联系您的MongoDB客户团队。

从Community Kubernetes Operator和Enterprise Kubernetes Operator到Kubernetes Operator 的无缝迁移:您的MongoDB部署不受升级影响,也无需进行任何更改。只需按照迁移指南中的说明进行操作即可。

我们将继续尽力为Community Kubernetes Operator 6 个月支持,直到 11 月 2025。根据当前指导。每个Enterprise Kubernetes Operator发布都将继续受到支持。

未来的所有错误修复和改进都将在新版本的Kubernetes Operator 中发布。我们鼓励所有用户在这些时间表内计划向Kubernetes Operator 的迁移。

要查看Kubernetes Operator 的旧发布说明,请参阅旧文档。

在此页面上