Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Controladores de MongoDB para el operador de Kubernetes kubectl y oc Configuración de instalación

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.

1spec:
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

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.

1spec:
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>

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.

1spec:
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

URL del repositorio desde el cual el Operador de Kubernetes descarga la imagen de la base de datos de la aplicación.

1spec:
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

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.

1spec:
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

Versión de la imagen de MongoDB Enterprise base de datos que implementa el operador de Kubernetes.

1spec:
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

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.

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.

1spec:
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

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.

1spec:
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

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.

1spec:
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

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.

1spec:
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

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.

1spec:
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

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.

1spec:
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

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.

1spec:
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

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.

1spec:
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.

1spec:
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

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.

1spec:
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

El valor por defecto es false, que actualiza automáticamente el sufijo de la imagen.

1spec:
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

Indicador que determina si el Kubernetes Operator permite la recuperación automática de recursos MongoDB por pod.

El valor por defecto es true.

1spec:
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

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.

1spec:
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

Determina la arquitectura de contenedor utilizada por todas sus implementaciones:

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.

1spec:
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

El sufijo de la imagen de la base de datos de la aplicación.

El valor es por defecto -ubi8.

1spec:
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

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.

1spec:
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

El número de procesos de reconciliación simultáneos que el Operador de Kubernetes puede realizar.

Ejemplo

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-kubernetes-operator
5 containers:
6 - env:
7 - name: MDB_MAX_CONCURRENT_RECONCILES
8 value: "10"

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.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-kubernetes-operator
5 containers:
6 - env:
7 - name: MDB_OPERATOR_TELEMETRY_ENABLED
8 value: "true"

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.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-kubernetes-operator
5 containers:
6 - env:
7 - name: MDB_OPERATOR_TELEMETRY_SEND_ENABLED
8 value: "true"

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

1spec:
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"

URL de la imagen de la base de datos MongoDB Enterprise que despliega el operador de Kubernetes.

1spec:
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

URL del repositorio base para imágenes oficiales del servidor MongoDB.

El valor por defecto es quay.io/mongodb.

1spec:
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

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

dev

debug

text

prod

información

json

El valor por defecto es prod.

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.

1spec:
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

URL del repositorio desde el cual se descarga la imagen para un recurso de Ops Manager.

1spec:
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

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.

1spec:
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

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.

1spec:
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

El tamaño máximo del archivo readiness.log en MB.

El valor es 100.

1spec:
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

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.

1spec:
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

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-operator que 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>.

Volver

Configuraciones de instalación para empresas