Docs Menu
Docs Home
/
Enterprise Kubernetes Operator

Notas de versión para MongoDB Enterprise Kubernetes Operator

Publicado el 2024-04-30

  • RecursoMongoDBOpsManager. El operador de Kubernetes ya no es compatible con Ops Manager. 5.0 Actualice a una versión posterior de Ops Manager. Si bien Ops Manager 5.0 puede seguir funcionando con el operador de Kubernetes, MongoDB no probará el operador de Kubernetes con Ops 5.0 Manager.

  • Recurso MongoDBOpsManager: Añade compatibilidad para implementar la aplicación Ops Manager en varios clústeres de Kubernetes. Para obtener más información, consulte Implementar recursos de Ops Manager en varios clústeres de Kubernetes.

  • (Vista previa pública) MongoDB, recursos deOpsManager: presenta contenedores estáticos opcionales (vista previa pública) para todo tipo de implementaciones.

    • En esta versión, use contenedores estáticos solo para pruebas. Es posible que se conviertan en la opción predeterminada en una versión posterior.

    • Para activar el modo de contenedores estáticos, configure el MDB_DEFAULT_ARCHITECTURE Variable de entorno en el nivel de operador de Kubernetes a static. Alternativamente, anote un recurso personalizado específico MongoDB o OpsManager con mongodb.com/v1.architecture: "static".

    • El operador de Kubernetes facilita la migración fluida entre las arquitecturas estáticas y no estáticas. Para obtener más información, consulte:

  • Recurso OpsManager: agrega el spec.internalConnectivity campo para permitir anulaciones del servicio utilizado por el operador de Kubernetes para garantizar la conectividad interna con los OpsManager pods que alojan el recurso.

  • Recurso deMongoDB: Puede recuperar un recurso debido a una configuración de automatización defectuosa en clústeres fragmentados. En versiones anteriores, se podían recuperar otros tipos de recursos, pero no clústeres fragmentados. Para obtener más información, consulte Recuperar un recurso debido a una configuración de automatización defectuosa.

  • Recursos MongoDB, MongoDBMultiCluster: estos recursos ahora le permiten agregar marcadores de posición en servicios externos.

  • El complemento kubectl mongodb: le permite imprimir información de compilación al usar el complemento.

  • El setup comando del kubectl mongodb complemento: Agrega la configuración registry.imagePullSecrets. Si se especifica, las cuentas de servicio creadas hacen referencia al secreto especificado en el imagePullSecrets campo.

  • Mejora el manejo de las configuraciones cuando el operador de Kubernetes supervisa más de un espacio de nombres y cuando se instala el operador de Kubernetes en un espacio de nombres que difiere del espacio de nombres en el que el operador de Kubernetes supervisa los recursos.

  • Optimiza la configuración de roles y permisos en los clústeres de Kubernetes miembro mediante una única cuenta de servicio por clúster de Kubernetes con roles y enlaces de roles configurados correctamente (no se necesitan roles de clúster) para cada espacio de nombres supervisado.

  • Amplía el proceso de conciliación basado en eventos existente con una conciliación basada en tiempo que se activa cada 24 horas. Esto garantiza que todos los agentes de monitorización se actualicen siempre de forma oportuna.

  • Operador de OpenShift y OLM: Se elimina el requisito de permisos para todo el clúster. Anteriormente, el operador de Kubernetes necesitaba estos permisos para configurar los webhooks de admisión. A partir de esta versión,OLM configura automáticamente los webhooks.

  • Añade una variable de entorno MDB_WEBHOOK_REGISTER_CONFIGURATION opcional para el operador de Kubernetes. Esta variable controla si el operador de Kubernetes debe configurar automáticamente el webhook de admisión. El valor predeterminado es true. La variable se establece en false para las implementaciones de OLM y OpenShift.

  • Añade un nuevo parámetro operator.webhook.registerConfiguration que controla si el operador de Kubernetes debe configurar automáticamente el webhook de admisión mediante la variable de entorno MDB_WEBHOOK_REGISTER_CONFIGURATION. El valor predeterminado es true. La variable se establece en false para las implementaciones de OLM y OpenShift.

  • Cambia el valor predeterminado agent.version a 107.0.0.8502-1. Esto cambia el agente predeterminado que se usa en las implementaciones de Kubernetes Operator que se instalan mediante un gráfico de Helm.

  • Agrega la variable operator.additionalArguments con el valor predeterminado de [] para permitirle pasar argumentos adicionales para el binario del operador de Kubernetes.

  • Añade la variable operator.createResourcesServiceAccountsAndRoles con el valor predeterminado true para controlar si se instalan roles y cuentas de servicio para los recursos MongoDB y OpsManager. Al usar el complemento kubectl mongodb para configurar el operador de Kubernetes en una implementación de varios clústeres de Kubernetes, el complemento instala todos los roles y cuentas de servicio necesarios. Por lo tanto, para evitar conflictos, en algunos casos no instale esos roles mediante el gráfico Helm del operador de Kubernetes.

  • Recurso MongoDBMultiCluster: Se solucionó un problema por el cual el operador de Kubernetes informaba que spec.externalAccess.externalDomain spec.clusterSpecList[*].externalAccess.externalDomains los campos y eran obligatorios aunque no se utilizaban. El operador de Kubernetes activaba prematuramente una validación para estos campos cuando los recursos personalizados contenían una spec.externalAccess estructura definida. A partir de esta versión, el operador de Kubernetes comprueba la unicidad de los dominios externos solo cuando se definen en las configuraciones spec.externalAccess.externalDomain spec.clusterSpecList[*].externalAccess.externalDomains o.

  • RecursoMongoDB: corrige un error en el cual, al eliminar un MongoDB recurso, las controlledFeature políticas permanecían establecidas en la instancia relacionada de Ops Manager o Cloud Manager, lo que hacía imposible la limpieza en la interfaz de usuario en caso de perder el operador de Kubernetes.

  • Recurso deOpsManager: Se solucionó un problema por el cual admin-key se eliminaba el secreto al eliminar el recurso OpsManager personalizado. La corrección de la admin-key eliminación del secreto facilita la reinstalación de Ops Manager.

  • Sonda de preparación de MongoDB: Corrige un mensaje de error engañoso para la sonda de preparación:. "... kubelet Readiness probe failed:..." Esto afecta a todas las implementaciones de MongoDB.

  • Operador: corrige casos en los que, en algunas instancias, al comunicarse con el OpsManager recurso personalizado, el operador de Kubernetes omitió la verificación de TLS, incluso si habilitó TLS.

  • Plugin de Kubectl: Los kubectl mongodb binarios del plugin ya están firmados y las firmas se publican con los recursos de la versión. La clave pública está disponible en esta dirección. Los kubectl mongodb binarios del plugin también están notarizados para macOS.

  • Imágenes publicadas firmadas: Todas las imágenes de contenedor publicadas para el operador de Kubernetes están firmadas criptográficamente. Esto es visible en el registro de MongoDB Quay. Puede verificar las firmas con la clave pública de MongoDB. Las imágenes publicadas están disponibles en esta dirección.

Publicado el 2023-12-21

  • Agrega soporte para la próxima serie Ops Manager 7.0.x.

  • Corrige un problema que impedía finalizar una copia de seguridad correctamente.

Publicado el 13 de noviembre de 2023

  • Soluciona un problema con el escalado de un set de réplicas en una implementación de MongoDB de varios clústeres de Kubernetes cuando un clúster nodo ha perdido la conectividad. La solución aborda ambos procedimientos de recuperación manual y automatizada.

  • Se solucionó un problema que impedía que, al cambiar los nombres de los registros de auditoría del agente de automatización y de MongoDB, se enviaran a los registros del pod de Kubernetes. A partir de Kubernetes Operator 1.22, no hay restricciones en los nombres de archivo de los registros de auditoría de MongoDB.

  • Permite que los siguientes nuevos tipos de registros del contenedor mongodb-enterprise-database se transmitan directamente a los registros de Kubernetes:

    • agent-launcher-script

    • monitoring-agent

    • backup-agent

  • Corrige un problema que impedía almacenar el recurso MongoDBUser en el espacio de nombres establecido en spec.mongodbResourceRef.namespace.

Publicado el 21 de septiembre de 2023

El operador de Kubernetes ya no usa el estado Reconciling para todos los recursos personalizados. En la mayoría de los casos, este estado se ha reemplazado por Pending y su mensaje correspondiente. Si usa herramientas de monitorización con los recursos personalizados de MongoDB implementados con el operador de Kubernetes, es posible que deba ajustar sus paneles y reglas de alerta para usar el nombre de estado Pending.

  • Añade un mecanismo de recuperación automática para los recursos MongoDB cuando un recurso personalizado permanece en estado Pending o Failed durante un periodo prolongado. Además, introduce las siguientes variables de entorno:

    Para obtener más información, consulte Recuperar recursos debido a una configuración de automatización rota.

  • Permite enrutar los registros de auditoría del recurso MongoDB a los registros del pod de Kubernetes. Asegúrese de escribir los registros de auditoría del recurso MongoDB en el archivo /var/log/mongodb-mms-automation/mongodb-audit.log. El pod que aloja el recurso supervisa este archivo y añade su contenido a sus registros de Kubernetes.

    Para enviar registros de auditoría a los registros del pod de Kubernetes, utilice la siguiente configuración de ejemplo en el recurso MongoDB:

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

    El operador de Kubernetes etiqueta las entradas del registro de auditoría con la clave mongodb-audit en los registros del pod.

    Para extraer entradas del registro de auditoría, utilice un comando similar al siguiente ejemplo:

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

Corrige un problema por el cual no se podía establecer spec.backup.autoTerminateOnDeletion el true valor en para clústeres fragmentados. Este valor controla si el operador de Kubernetes detiene y finaliza la copia de seguridad al eliminar un recurso de MongoDB. Si se omite, el valor predeterminado false es.

Publicado el 25 de agosto de 2023

  • Cambia el nombre de la variable de entorno CURRENT_NAMESPACE NAMESPACEa. Esta variable rastrea el espacio de nombres del operador de Kubernetes. Si configuró esta variable editando los MongoDB recursos, actualice CURRENT_NAMESPACE a NAMESPACE al actualizar el operador de Kubernetes.

  • Corrige un problema en el que las etiquetas de anulación StatefulSet no podían anular StatefulSet.

  • Admite la configuración de copias de seguridad de la base de datos de la aplicación y MongoDB para el recurso MongoDBMultiCluster.

  • Añade documentación para configurar una implementación de MongoDBMultiCluster recursos en un entorno de GitOps. Para obtener más información, consulta Configurar recursos para GitOps.

  • Añade MetadataWrapper, un contenedor de etiquetas y anotaciones, a los recursos MongoDB, MongoDBMultiCluster y MongoDBOpsManager. Este contenedor permite anular metadata.Labels y metadata.Annotations.

  • Corrige un problema que impedía establecer un número de puerto arbitrario para al usar spec.externalConnectivity.port el LoadBalancer tipo de servicio para exponer Ops Manager externamente.

  • Corrige un problema que causaba que el Ops Manager rechazara los certificados al habilitar que el operador de Kubernetes importe el appdb-ca, que es un paquete de CAs, en el almacén de confianza JVM de Ops Manager.

Para ver las notas de la versión de versiones anteriores del operador, haga clic aquí.

En esta página