Docs 菜单
Docs 主页
/
MongoDB Enterprise Kubernetes Operator

MongoDB Enterprise Kubernetes Operator 发布说明

在此页面上

  • MongoDB Enterprise Kubernetes Operator 1.26 系列
  • MongoDB Enterprise Kubernetes Operator 1.25 系列
  • MongoDB Enterprise Kubernetes Operator 1.24 系列
  • MongoDB Enterprise Kubernetes Operator 1.23 系列
  • MongoDB Enterprise Kubernetes Operator 1.22 系列
  • MongoDB Enterprise Kubernetes Operator 1.21 系列
  • 旧发布说明

已发布2024 - 06 - 21

  • 提高 CPU 利用率和Kubernetes Operator 的垂直扩展,并允许您控制Kubernetes Operator 可以并行执行的协调数量,从而更快地协调所有托管资源。

    您可以为Kubernetes Operator部署设立 MDB_MAX_CONCURRENT_RECONCILES ,或在Kubernetes Operator 安装 Helm 图表中设置operator.maxConcurrentReconciles 。 如果未提供,则默认值为1 。 控制协调次数的能力可能会导致同一时间窗口内MongoDB Ops Manager和Kubernetes API服务器的负载增加。 观察Kubernetes Operator资源使用情况,并根据需要调整operator.resources.requestsoperator.resources.limits 。 要学习;了解更多信息,请参阅Kubernetes文档中的 Pod和容器的资源管理

  • 新增支持OpenShift 4.15的支持。 要学习;了解更多信息,请参阅 MongoDB Enterprise Kubernetes Operator 兼容性。

  • 添加了operator.maxConcurrentReconciles参数,该参数允许您控制Kubernetes Operator 可以并行执行的协调数量。 默认值为1 。

  • 添加操作符.webhook.installClusterRole 参数,用于控制是否安装集群角色,从而允许Kubernetes Operator 配置准入 Webhook。 如果不允许使用集群角色,请将此参数设置为false 。 默认值为true

  • MongoDB资源:修复了一个错误:在spec.agent.startupOptions中配置具有多个条目的MongoDB资源会导致对根本的StatefulSet进行额外不必要的协调。

  • MongoDB 、MongoDBMultiCluster资源:修复了Kubernetes Operator 无法监控为MongoDB Agent助手身份验证配置的 X-509 证书更改的错误。

  • MongoDB资源:修复了以下错误:如果传递给MongoDB Agent的布尔标志的默认值为 true,则无法将其设立为 false

已发布2024 - 04 - 30

  • MongoDBOpsManager资源。 Kubernetes Operator 不再支持MongoDB Ops Manager 5.0。 升级到更高版本的MongoDB Ops Manager 。 虽然MongoDB Ops Manager5.0 可能会继续与Kubernetes Operator 配合使用,但MongoDB KubernetesMongoDB Ops Manager5.0不会针对 测试 Operator。

  • MongoDBOpsManager 资源:新增对在多个MongoDB Ops Manager Kubernetes集群上部署 应用程序的支持。要了解更多信息,请 参阅在多个 MongoDB Ops Manager集群上部署Kubernetes 资源。

  • (公共预览版) MongoDBOpsManager资源:为所有类型的部署引入可选的静态容器(公共预览版)

    • 在此版本中,仅将静态容器用于测试目的。 静态容器可能会成为后续版本中的默认容器。

    • 要激活静态容器模式,请将Kubernetes Operator 级别的MDB_DEFAULT_ARCHITECTURE环境变量设立为static 。 或者,使用mongodb.com/v1.architecture: "static"注释特定的MongoDBOpsManager自定义资源。

    • Kubernetes Operator 支持静态和非静态架构之间的无缝迁移。 要了解详情,请参阅:

  • OpsManager资源:添加spec.internalConnectivity字段以允许覆盖 Kubernetes Operator 所使用的服务,从而确保与OpsManager资源托管 Pod 的内部连接。

  • MongoDB资源:您可以恢复由于分片集群中的自动化配置损坏而导致的资源。 在以前的版本中,您可以恢复其他类型的资源,但不能恢复分片集群。 要了解更多信息,请参阅恢复因自动化配置损坏而导致的资源。

  • MongoDBMongoDBMultiCluster资源:这些资源现在允许您在外部服务中添加占位符。

  • kubectl mongodb插件:允许您在使用该插件时打印版本信息。

  • kubectl mongodb插件的setup命令:添加registry.imagePullSecrets 设置。 如果指定,创建的服务帐户将引用imagePullSecrets字段上的指定密钥。

  • 改进了以下情况下的配置处理:Kubernetes Operator 监控多个命名空间,以及您将 Kubernetes Operator 安装在与 Kubernetes Operator 监控资源的命名空间不同的命名空间中。

  • 使用每个 Kubernetes 集群使用单个服务帐户,优化成员 Kubernetes 集群中的角色和权限设置,并为每个受监视的命名空间正确配置角色和角色绑定(不需要集群角色)。

  • 通过每24小时触发一次的基于时间的核对,扩展现有的基于事件的核对流程。 这可确保所有监控代理始终及时升级。

  • OpenShift 和 OLM Operator:删除了对集群范围权限的要求。 以前,Kubernetes Operator 需要这些权限来配置准入 Webhook。 从此版本开始,Webhook 由 OLM 自动配置。

  • 为 Kubernetes Operator 添加可选的MDB_WEBHOOK_REGISTER_CONFIGURATION环境变量。 该变量控制 Kubernetes Operator 是否应执行自动准入 Webhook 配置。 默认值为true 。 对于 OLM 和 OpenShift 部署,该变量设置为false

  • 将默认值agent.version更改为107.0.0.8502-1 。 这会更改使用 Helm Chart 安装的 Kubernetes Operator 部署中使用的默认代理。

  • 添加operator.additionalArguments变量(默认值为[] ,以允许您为 Kubernetes Operator 二进制文件传递其他参数。

  • 添加operator.createResourcesServiceAccountsAndRoles变量(默认值为true ,以控制是否为MongoDBOpsManager资源安装角色和服务帐号。 当您使用kubectl mongodb插件为多 Kubernetes 集群部署配置 Kubernetes Operator 时,该插件会安装所有必要的角色和服务帐户。 因此,为避免冲突,在某些情况下,请勿使用 Kubernetes Operator Helm 图表安装这些角色。

  • MongoDBMultiCluster资源:修复了 Kubernetes Operator 报告spec.externalAccess.externalDomainspec.clusterSpecList[*].externalAccess.externalDomains字段为必填字段(即使未使用)的问题。 如果自定义资源包含已定义的spec.externalAccess结构,Kubernetes Operator 会过早触发对这些字段的验证。 从此版本开始,仅当您在spec.externalAccess.externalDomainspec.clusterSpecList[*].externalAccess.externalDomains设置中定义外部域时,Kubernetes Operator 才会检查外部域的唯一性。

  • MongoDB资源:修复了一个错误:删除 MongoDB 资源后,相关MongoDB Ops Manager或Cloud Manager实例上仍保留设置的 controlledFeature 策略,导致在丢失Kubernetes Operator 时无法在用户界面中进行清理。

  • OpsManager资源:修复了删除OpsManager自定义资源时admin-key密钥被删除的问题。 修复 admin-key 密钥删除问题可以更轻松地重新安装MongoDB Ops Manager 。

  • MongoDB 就绪探针:修复了就绪探针的误导性错误消息: "... kubelet Readiness probe failed:..." 。 这会影响所有 MongoDB 部署。

  • Operator :修复了在某些情况下,在与OpsManager自定义资源通信时 Kubernetes Operator 跳过 TLS 验证(即使您启用了 TLS)的情况。

  • Kubectl 插件 :现已对已发布的kubectl mongodb 插件二进制文件进行签名,并且签名与 发布资产 一起发布 。可以在此地址获取公钥。 已发布的kubectl mongodb插件二进制文件也针对 MacOS 进行了公证。

  • 已发布映像已签名:为 Kubernetes Operator 发布的所有容器映像均经过加密签名。 这在 MongoDB Quay 注册表。您可以使用 MongoDB 公钥验证签名。 可通过此地址获取已发布的映像。

已发布2023 - 12 - 21

  • 添加了对即将发布的MongoDB Ops Manager 7.0.x 的支持 系列。

  • 修复无法正确终止备份的问题。

发布日期:2023 年 11 月 13 日

  • 修复当成员集群失去连接时,在多 Kubernetes 集群 MongoDB 部署中扩展副本集的问题。 该修复涉及手动和自动恢复过程。

  • 修复更改自动化代理和 MongoDB 审核日志的名称导致它们无法发送到 Kubernetes Pod 日志的问题。从 Kubernetes Operator 1.22 开始,MongoDB 审核日志的文件名没有限制。

  • 允许以下新日志类型从 mongodb-enterprise-database 容器直接流式传输到 Kubernetes 日志:

    • agent-launcher-script

    • monitoring-agent

    • backup-agent

  • 修复了无法将 MongoDBUser 资源存储在 spec.mongodbResourceRef.namespace 中设置的命名空间中的问题。

发布日期:2023 年 9 月 21 日

Kubernetes Operator 不再对所有自定义资源使用 Reconciling 状态。大多数情况下,此状态已替换为 Pending 和相应的消息。如果将监控工具与通过 Kubernetes Operator 部署的自定义 MongoDB 资源结合使用,您可能需要调整仪表盘和警报规则才能使用 Pending 状态名称。

  • 当自定义资源长时间处于 Pending(待处理)或 Failed(已失败)状态时,为 MongoDB 资源添加自动恢复机制。此外,还引入以下环境变量:

    要了解更多信息,请参阅恢复因自动化配置损坏而造成的资源损失

  • 允许您将 MongoDB 资源的审核日志路由到 Kubernetes Pod 日志。确保将 MongoDB 资源的审核日志写入 /var/log/mongodb-mms-automation/mongodb-audit.log 文件。托管资源的 Pod 监控此文件并将内容附加到其 Kubernetes 日志中。

    要将审核日志发送到 Kubernetes Pod 日志,请在 MongoDB 资源中使用以下示例配置:

    spec:
    additionalMongodConfig:
    auditLog:
    destination: file
    format: JSON
    path: /var/log/mongodb-mms-automation/mongodb-audit.log

    Kubernetes Operator 在 Pod 日志中使用 mongodb-audit 键标记审核日志条目。

    要提取审核日志条目,请使用与以下示例类似的命令:

    kubectl logs -c mongodb-enterprise-database replica-set-0 | \
    jq -r 'select(.logType == "mongodb-audit") | .contents'

修复了无法针对分片群集将 spec.backup.autoTerminateOnDeletion 设置设置为 true 的问题。此设置控制在您删除 MongoDB 资源时 Kubernetes Operator 是否停止并终止备份。如果省略,则默认值为 false

发布日期:2023 年 8 月 25 日

  • 将环境变量 CURRENT_NAMESPACE 重命名为 NAMESPACE。该变量追踪 Kubernetes Operator 的命名空间。如果您通过编辑 MongoDB 资源设置此变量,请在升级 Kubernetes Operator时将 CURRENT_NAMESPACE 更新为 NAMESPACE

  • 修复 StatefulSet 重写标签无法重写 StatefulSet 的问题。

  • 支持为 MongoDBMultiCluster 资源配置应用程序数据库和 MongoDB 的备份。

  • 添加有关在 GitOps 环境中配置 MongoDBMultiCluster 资源部署的文档。要了解更多信息,请参阅“为 GitOps 配置资源”。

  • MetadataWrapper(标签和注解包装器)添加到 MongoDB 资源、MongoDBMultiCluster 资源和 MongoDBOpsManager 资源。包装器支持重写 metadata.Labelsmetadata.Annotations

  • 修复了使用 LoadBalancer 服务类型向外部公开 Ops Manager 时无法为 spec.externalConnectivity.port 设置任意端口号的问题。

  • 通过允许 Kubernetes Operator 将 appdb-ca(CA 捆绑包)导入 Ops Manager JVM 信任存储中,修复导致 Ops Manager 拒绝证书的问题。

要查看旧版本操作符的发布说明,请单击 此处