Para proporcionar configuraciones opcionales, edita el Archivo YAML que corresponde a su tipo de implementación en el directorio donde clonó el repositorio de Kubernetes operador:
Vanilla Kubernetes using kubectl: mongodb-kubernetes.yaml
OpenShift usando oc: mongodb-kubernetes-openshift.yaml
Si la configuración que deseas agregar no existe en el archivo YAML, agrégala como un nuevo arreglo de mapeos de pares clave-valor en spec.template.spec.containers.name.env. colección:
Establece el valor de la clave spec.template.spec.contenedores.name.env.name al nombre de la configuración.
Establezca el valor de la clave spec.template.spec.contenedores.name.env.value con el valor del ajuste.
Para completar los valores de las imágenes de contenedores, consulte Imágenes de contenedor.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: INIT_APPDB_IMAGE_REPOSITORY 11 value: quay.io/mongodb/mongodb-kubernetes-init-appdb
AGENT_IMAGE
URL del repositorio del que el Kubernetes Operator descarga la imagen del MongoDB Agent para implementaciones de bases de datos no estáticas. Incluye la versión del MongoDB Agent. Para obtener más información, consulta Imágenes de contenedores.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: AGENT_IMAGE 11 value: quay.io/mongodb/mongodb-agent-ubi:<version>
APPDB_AGENT_VERSION
Versión de la imagen que contiene el MongoDB Agent que la Base de Datos de la Aplicación utiliza.
El valor por defecto es 10.2.15.5958-1_4.2.11.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: APPDB_AGENT_VERSION 11 value: 10.2.15.5958-1_4.2.11
APPDB_IMAGE_REPOSITORY
URL del repositorio desde el cual el Operador de Kubernetes descarga la imagen de la base de datos de la aplicación.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: APPDB_IMAGE_REPOSITORY 11 value: quay.io/mongodb/mongodb-kubernetes-appdb-ubi
CLUSTER_CLIENT_TIMEOUT
Tiempo, en segundos, que el Operador de Kubernetes intenta conectarse al servidor API de Kubernetes del clúster. Este tiempo de espera se establece para todos los clústeres de Kubernetes en las implementaciones de MongoDB con múltiples clústeres de Kubernetes. Si el operador de Kubernetes no recibe una respuesta del servidor API de Kubernetes dentro del tiempo especificado, registra el estado del clúster como "no saludable". Para obtener más información, consulta Solución de problemas de clústeres de Kubernetes.
El valor por defecto es 10.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: CLUSTER_CLIENT_TIMEOUT 11 value: 10
DATABASE_VERSION
Versión de la imagen de MongoDB Enterprise base de datos que implementa el operador de Kubernetes.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: DATABASE_VERSION 11 value: 1.1.0
IMAGE_PULL_POLICY
Política de extracción para la imagen de base de datos MongoDB Enterprise que el operador de Kubernetes implementa.
El Operador de Kubernetes acepta los siguientes valores: Always, IfNotPresent, Never.
El valor por defecto es Always.
INIT_APPDB_IMAGE_REPOSITORY
URL del repositorio de donde se obtiene el initContainer se descarga la imagen que contiene los scripts de inicio de la base de datos de la aplicación y la prueba de preparación.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: INIT_APPDB_IMAGE_REPOSITORY 11 value: quay.io/mongodb/mongodb-kubernetes-init-appdb
INIT_APPDB_VERSION
Versión de la imagen initContainer que contiene los scripts de inicio de la base de datos de la aplicación y la prueba de preparación.
El valor por defecto es 1.1.0.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: INIT_APPDB_VERSION 11 value: 1.1.0
INIT_DATABASE_IMAGE_REPOSITORY
URL del repositorio desde el que se descarga la imagen de initContainer que contiene los scripts de arranque del MongoDB Agent y la sonda de preparación.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: INIT_DATABASE_IMAGE_REPOSITORY 11 value: quay.io/mongodb/mongodb-kubernetes-init-database
INIT_DATABASE_VERSION
Versión de la imagen initContainer que contiene los scripts de inicio del MongoDB Agent y la sonda de preparación.
El valor por defecto es 1.1.0.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: INIT_DATABASE_VERSION 11 value: 1.1.0
INIT_OPS_MANAGER_IMAGE_REPOSITORY
URL del repositorio desde el cual se descarga la imagen initContainer que contiene los scripts de inicio de Ops Manager y la prueba de estado de disposición.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY 11 value: quay.io/mongodb/mongodb-kubernetes-init-ops-manager
INIT_OPS_MANAGER_VERSION
Versión de la imagen initContainer que contiene los scripts de inicio de Ops Manager y la prueba de preparación.
El valor por defecto es 1.1.0.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: INIT_OPS_MANAGER_VERSION 11 value: 1.1.0
LOG_FILE_PATH
Ruta a los archivos de copia de seguridad rotados de readiness.log mantenidos por la Prueba de preparación.
El valor por defecto es /var/log/mongodb-mms-automation/readiness.log.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: LOG_FILE_PATH 11 value: /var/log/mongodb-mms-automation/readiness.log
CONTEXTOS DE SEGURIDAD GESTIONADOS
Bandera que determina si el Kubernetes operador hereda o no la configuración de securityContext que gestiona tu clúster de Kubernetes.
Este valor debe ser verdadero si deseas ejecutar el Operador de Kubernetes en OpenShift o en un entorno restrictivo.
El valor por defecto es false.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MANAGED_SECURITY_CONTEXT 11 value: false
El valor por defecto es true.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MANAGED_SECURITY_CONTEXT 11 value: true
MDB_AGENT_IMAGE_REPOSITORY
URL del repositorio desde el cual el Operador de Kubernetes descarga la imagen del MongoDB Agent para los despliegues de bases de datos. Para obtener más información, consulte Imágenes de contenedores.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MDB_AGENT_IMAGE_REPOSITORY 11 value: quay.io/mongodb/mongodb-agent-ubi
MDB_APPDB_ASSUME_OLD_FORMAT
El valor por defecto es false, que actualiza automáticamente el sufijo de la imagen.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MDB_APPDB_ASSUME_OLD_FORMAT 11 value: false
MDB_AUTOMATIC_RECOVERY_ENABLE
Indicador que determina si el Kubernetes Operator permite la recuperación automática de recursos MongoDB por pod.
El valor por defecto es true.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MDB_AUTOMATIC_RECOVERY_ENABLE 11 value: false
MDB_AUTOMATIC_RECOVERY_BACKOFF_TIME_S
Número de segundos que un recurso personalizado puede permanecer en un estado Pending o Failed antes de que el Operador de Kubernetes recupere automáticamente tus recursos MongoDB.
El valor por defecto es de 1200 segundos (20 minutos).
Para desactivar la recuperación automática, establezca la variable de entorno MDB_AUTOMATIC_RECOVERY_ENABLE en false.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MDB_AUTOMATIC_RECOVERY_BACKOFF_TIME_S 11 value: 3600
MDB_DEFAULT_ARCHITECTURE
Determina la arquitectura de contenedor utilizada por todas sus implementaciones:
Los contenedores no estáticos por defecto que descargan el binario de MongoDB en tiempo de ejecución, o
Contenedores estáticos (Visualización pública) que son inmutables en tiempo de ejecución.
Para habilitar contenedores estáticos para una sola implementación, utiliza metadata.annotations.mongodb.com/v1.architecture en el recurso de MongoDB en su lugar.
El valor es por defecto non-static.
Para habilitar contenedores estáticos, configúrelo en static.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MDB_DEFAULT_ARCHITECTURE 11 value: static
MDB_IMAGE_TYPE
El sufijo de la imagen de la base de datos de la aplicación.
El valor es por defecto -ubi8.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MDB_IMAGE_TYPE 11 value: ubi8
MDB_WITH_AGENT_FILE_LOGGING
Controla si las entradas de registro se envían a la salida estándar, como cuando se ejecuta kubectl describe.
El valor es por defecto true.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MDB_WITH_AGENT_FILE_LOGGING 11 value: true
MDB_MAX_CONCURRENT_RECONCILES
El número de procesos de reconciliación simultáneos que el Operador de Kubernetes puede realizar.
Ejemplo
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - env: 7 - name: MDB_MAX_CONCURRENT_RECONCILES 8 value: "10"
MDB_OPERATOR_TELEMETRY_ENABLED
Habilita al Operador de Kubernetes para recopilar y enviar telemetría a MongoDB para su análisis. Además, MDB_OPERATOR_TELEMETRY_SEND_ENABLED debe establecerse en true para que el operador de Kubernetes envíe telemetría a MongoDB.
El valor por defecto es true. Si se fija en false, el operador Kubernetes no recopila ni envía telemetría a MongoDB.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - env: 7 - name: MDB_OPERATOR_TELEMETRY_ENABLED 8 value: "true"
MDB_OPERATOR_TELEMETRY_SEND_ENABLED
Permite que el Operador de Kubernetes envíe telemetría a MongoDB para su análisis. También se debe establecer MDB_OPERATOR_TELEMETRY_ENABLED en true para que el Operador de Kubernetes envíe telemetría.
El valor por defecto es true. Si se establece en false, el operador de Kubernetes recopila telemetría en el ConfigMap llamado mongodb-kubernetes-operator-telemetry, pero no la envía a MongoDB.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - env: 7 - name: MDB_OPERATOR_TELEMETRY_SEND_ENABLED 8 value: "true"
MDB_PROPAGATE_PROXY_ENV
Permite que el operador de Kubernetes funcione en entornos con restricciones de proxy. Establezca esta variable en true junto con la configuración estándar de proxy (HTTP_PROXY, HTTPS_PROXY, NO_PROXY) para propagar estos ajustes de proxy desde su pod de operador de Kubernetes a los agentes de MongoDB, lo que permite que todos los componentes se comuniquen de manera efectiva a través de los proxies especificados.
Ejemplo
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - env: 7 - name: MDB_PROPAGATE_PROXY_ENV 8 value: "true" 9 - name: HTTP_PROXY 10 value: "http://example-http-proxy:7312" 11 - name: HTTPS_PROXY 12 value: "https://secure-proxy:3242" 13 - name: NO_PROXY 14 value: "google.com"
MONGODB_ENTERPRISE_DATABASE_IMAGE
URL de la imagen de la base de datos MongoDB Enterprise que despliega el operador de Kubernetes.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MONGODB_ENTERPRISE_DATABASE_IMAGE 11 value: quay.io/mongodb/mongodb-kubernetes-database
MONGODB_REPO_URL
URL del repositorio base para imágenes oficiales del servidor MongoDB.
El valor por defecto es quay.io/mongodb.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: MONGODB_REPO_URL 11 value: quay.io/mongodb
OPERATOR_ENV
Etiqueta para el entorno de implementación de Kubernetes Operators. Este valor afecta los tiempos de espera por defecto y el nivel y formato del registro:
Si el valor es | El nivel de registro está configurado en | El formato de registro se establece en |
|---|---|---|
| debug | text |
| información | json |
El valor por defecto es prod.
OPS_MANAGER_IMAGE_PULL_POLICY
Política de extracción para las imágenes de Ops Manager que implementa el operador de Kubernetes.
El operador de Kubernetes admite los siguientes valores: Always (Siempre), IfNotPresent (Si no está presente) y Never (Nunca).
El valor por defecto es Always.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: OPS_MANAGER_IMAGE_PULL_POLICY 11 value: Always
OPS_MANAGER_IMAGE_REPOSITORY
URL del repositorio desde el cual se descarga la imagen para un recurso de Ops Manager.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: OPS_MANAGER_IMAGE_REPOSITORY 11 value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi
READINESS_PROBE_LOGGER_BACKUPS
La cantidad de archivos rotados de copia de seguridad de readiness.log mantenidos por la Sonda de Preparación.
El valor por defecto es 5.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: READINESS_PROBE_LOGGER_BACKUPS 11 value: 1
REGISTRADOR DE COMPROBACIÓN DE PREPARACIÓN COMPRIMIR
Controla si los archivos de copia de seguridad rotados readiness.log mantenidos por la Prueba de Preparación se comprimen en readiness.log.gz archivos.
El valor por defecto es false, que deja los archivos readiness.log sin comprimir.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: READINESS_PROBE_LOGGER_COMPRESS 11 value: true
READINESS_PROBE_LOGGER_MAX_SIZE
El tamaño máximo del archivo readiness.log en MB.
El valor es 100.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: READINESS_PROBE_LOGGER_MAX_SIZE 11 value: 125
READINESS_PROBE_LOGGER_MAX_AGE
El número máximo de días para conservar los archivos rotados de readiness.log, comenzando con la fecha en la marca de tiempo del archivo. Si se establece en 0, el operador de Kubernetes no remueve archivos readiness.log en función de la antigüedad, sino que confía en READINESS_PROBE_LOGGER_BACKUPS para determinar la retención.
El valor por defecto es 0.
1 spec: 2 template: 3 spec: 4 serviceAccountName: mongodb-kubernetes-operator 5 containers: 6 - name: mongodb-kubernetes-operator 7 image: <operatorVersionUrl> 8 imagePullPolicy: <policyChoice> 9 env: 10 - name: READINESS_PROBE_LOGGER_MAX_AGE 11 value: 3
WATCH_NAMESPACE
Espacios de nombres que el Operador de Kubernetes monitorea para cambios en los recursos de MongoDB. Si este namespace es diferente del por defecto, asegúrate de que la ServiceAccount del Operador de Kubernetes puede acceder a este namespace.
Para vigilar todos los namespaces, especifique * y asigne el ClusterRole en el ServiceAccount
mongodb-kubernetes-operatorque utiliza para ejecutar el Kubernetes operador.Para monitorear un subconjunto de todos los espacios de nombres, especifícalos en una lista separada por comas, escapa cada coma con una barra invertida y rodea la lista con comillas, como en
"operator.watchNamespace=ns1\,ns2".
Observar un subconjunto de namespaces es útil en implementaciones donde una sola instancia de Kubernetes operador observa un tipo diferente de recurso en el clúster. Por ejemplo, puedes configurar el operador de Kubernetes para monitorear recursos MongoDB en un subconjunto de namespaces y monitorear recursos MongoDBMultiCluster en otro subconjunto de namespaces. Para evitar condiciones de carrera durante la reconciliación de recursos, para cada tipo de recurso personalizado que quieras que el Operador de Kubernetes observe, asegúrate de establecer el alcance en un subconjunto distinto de espacios de nombres.
Importante
Para implementar Ops Manager y MongoDB recursos en uno o más namespaces distintos al de la implementación del Kubernetes Operator, consulte Configurar el Alcance para Controladores de MongoDB para la implementación del Kubernetes Operator para ver los valores que debe utilizar y los pasos adicionales que podría tener que realizar.
El valor por defecto es <metadata.namespace>.