El operador de Kubernetes de MongoDB Enterprise crea una implementación de Ops Manager en contenedor a partir de archivos de especificaciones que usted escribe.
Después de crear o actualizar una especificación de recursos de Ops Manager, debe indicarle a MongoDB Enterprise Kubernetes Operator que la aplique a su entorno de Kubernetes. Kubernetes Operator crea los servicios y recursos de Kubernetes personalizados que Ops Manager requiere y, a continuación, implementa Ops Manager y su base de datos de aplicaciones de respaldo en contenedores de su entorno de Kubernetes.
Cada recurso de Ops Manager utiliza una especificación de objeto en YAML para definir las características y configuraciones de la implementación.
Ejemplos
Los siguientes ejemplos muestran una especificación de recursos para una implementación de Ops Manager:
1 apiVersion: mongodb.com/v1 2 kind: MongoDBOpsManager 3 metadata: 4 name: om 5 spec: 6 topology: SingleCluster # optional, SingleCluster by default 7 opsManagerURL: https://link.to.configured.load-balancer.example.com # optional OM URL for the operator 8 replicas: 1 9 version: "6.0.18" 10 adminCredentials: ops-manager-admin-secret 11 configuration: 12 mms.fromEmailAddr: admin@example.com 13 mms.security.allowCORS: "false" 14 security: 15 tls: 16 ca: issuer-ca 17 backup: 18 enabled: true 19 encryption: 20 kmip: 21 server: 22 url: kmip.corp.mongodb.com:5696 23 ca: mongodb-kmip-certificate-authority-pem 24 headDB: 25 storage: "30Gi" 26 labelSelector: 27 matchLabels: 28 app: my-app 29 opLogStores: 30 - name: oplog1 31 # Sets labels for the oplog store. 32 assignmentLabels: ["test1", "test2"] 33 mongodbResourceRef: 34 name: my-oplog-db 35 mongodbUserRef: 36 name: my-oplog-user 37 s3Stores: 38 - name: s3store1 39 # Sets labels for the S3 store. 40 assignmentLabels: ["test1", "test2"] 41 42 mongodbResourceRef: 43 name: my-s3-metadata-db 44 mongodbUserRef: 45 name: my-s3-store-user 46 s3SecretRef: 47 name: my-s3-credentials 48 pathStyleAccessEnabled: true 49 s3BucketEndpoint: s3.region.amazonaws.com 50 s3BucketName: my-bucket 51 applicationDatabase: 52 passwordSecretKeyRef: 53 name: om-db-user-secret 54 key: password 55 members: 3 56 topology: SingleCluster 57 version: "6.0.5-ubi8" 58 security: 59 certsSecretPrefix: appdb 60 tls: 61 ca: issuer-ca
1 apiVersion: mongodb.com/v1 2 kind: MongoDBOpsManager 3 metadata: 4 name: om 5 spec: 6 topology: MultiCluster # optional, SingleCluster by default 7 opsManagerURL: https://link.to.configured.lb.example.com # optional OM URL for the operator 8 clusterSpecList: # optional ClusterSpecOMItem list, the type is different than ClusterSpecItem for AppDB and MongoDB 9 - clusterName: cluster-1 # required 10 replicas: 1 # required, OM application replicas 11 # optional parameters to override those defined at MongoDBOpsManager level 12 clusterDomain: cluster-1.example.com # optional, default cluster.local 13 jvmParameters: ["-Xmx4352m","-Xms4352m"] 14 externalConnectivity: # optional to override 15 type: LoadBalancer 16 port: 9090 17 annotations: 18 key: value 19 statefulSet: # StatefulSetSpecWrapper override 20 spec: {} 21 metadata: {} 22 configuration: 23 automation.versions.source: mongodb 24 mms.adminEmailAddr: cloud-manager-support@mongodb.com 25 backup: # MongoDBOpsManagerBackup, optional, we only support a subset of fields 26 members: 1 # backup daemon replicas, optional, default=1 27 assignmentLabels: [] # assignment labels to override 28 jvmParameters: ["-Xmx4352m","-Xms4352m"] # optional 29 statefulSet: # mdbc.StatefulSetConfiguration, optional to override for backup daemon 30 spec: {} 31 metadata: {} 32 - clusterName: cluster-2 33 replicas: 1 34 35 .... 36 37 replicas: 1 38 version: "6.0.18" 39 adminCredentials: ops-manager-admin-secret 40 configuration: 41 mms.fromEmailAddr: admin@example.com 42 mms.security.allowCORS: "false" 43 backup: 44 enabled: true 45 encryption: 46 kmip: 47 server: 48 url: kmip.corp.mongodb.com:5696 49 ca: mongodb-kmip-certificate-authority-pem 50 headDB: 51 storage: "30Gi" 52 labelSelector: 53 matchLabels: 54 app: my-app 55 opLogStores: 56 - name: oplog1 57 # Sets labels for the oplog store. 58 assignmentLabels: ["test1", "test2"] 59 mongodbResourceRef: 60 name: my-oplog-db 61 mongodbUserRef: 62 name: my-oplog-user 63 s3Stores: 64 - name: s3store1 65 # Sets labels for the S3 store. 66 assignmentLabels: ["test1", "test2"] 67 68 mongodbResourceRef: 69 name: my-s3-metadata-db 70 mongodbUserRef: 71 name: my-s3-store-user 72 s3SecretRef: 73 name: my-s3-credentials 74 pathStyleAccessEnabled: true 75 s3BucketEndpoint: s3.region.amazonaws.com 76 s3BucketName: my-bucket 77 security: 78 tls: 79 ca: issuer-ca 80 applicationDatabase: 81 passwordSecretKeyRef: 82 name: om-db-user-secret 83 key: password 84 version: "6.0.5-ubi8" 85 topology: MultiCluster 86 clusterSpecList: 87 - clusterName: cluster1.example.com 88 members: 4 89 - clusterName: cluster2.example.com 90 members: 3 91 - clusterName: cluster3.example.com 92 members: 2 93 security: 94 certsSecretPrefix: appdb 95 tls: 96 ca: issuer-ca
Configuración requerida de Ops Manager
Esta sección describe las configuraciones que debe utilizar para todos los recursos de Ops Manager.
kindTipo: string
Obligatorio. Tipo de recurso de MongoDB Kubernetes que se creará. Establézcalo
MongoDBOpsManageren.
metadata.nameTipo: string
Obligatorio. Nombre del recurso MongoDB Kubernetes que está creando.
Los nombres de recursos deben tener 44 caracteres o menos.
spec.versionTipo: string
Obligatorio. Versión de Ops Manager que desea instalar en este recurso de MongoDB Kubernetes.
spec.adminCredentialsTipo: string
Obligatorio. Nombre del secreto de Kubernetes que creó para el usuario administrador de Ops Manager. Al implementar el recurso de Ops Manager, el operador de Kubernetes crea un usuario con estas credenciales.
Nota
Para evitar almacenar secretos en implementaciones de Kubernetes de un solo clúster, puede migrar todos los secretos a una herramienta de almacenamiento de secretos. Las implementaciones en varios clústeres de Kubernetes no admiten el almacenamiento de secretos en herramientas de almacenamiento de secretos, como HashiCorp Vault.
Al usuario administrador se le otorga el rol Propietario global.
spec.replicasTipo: entero
Condicional. Número de instancias de Ops Manager que se ejecutan en paralelo. Si especifica
SingleClusterspec.topologyen, este parámetro es obligatorio. El valor mínimo aceptado1es.Si especifica
MultiClusteren, este parámetro sespec.topologyignora.
Configuración opcional de Ops Manager
Los recursos de Ops Manager también pueden usar las siguientes configuraciones:
spec.backup.logging.logBackAccessRefTipo: string
Referencia a un ConfigMap que contiene un archivo
logback-access.xmlpersonalizado para configurar los registros de respaldo de Ops Manager.La clave en ConfigMap debe coincidir exactamente con el nombre de
logback-access.xmlpara garantizar que reemplace el archivo predeterminado en los pods de Ops Manager.Para obtener más información, consulte Configurar registros de Ops Manager con CRD.
spec.backup.logging.logBackRefTipo: string
Referencia a un ConfigMap que contiene un archivo
logback.xmlpersonalizado. Este archivo configura el comportamiento general de registro para las copias de seguridad de Ops Manager, incluyendo políticas de rotación de registros, niveles de registro y otros parámetros de registro.La clave en ConfigMap debe coincidir exactamente con el nombre de
logback-access.xmlpara garantizar que reemplace el archivo predeterminado en los pods de Ops Manager. Para obtener más información, consulte Configurar los registros de Ops Manager con el CRD.
spec.logging.logBackAccessRefTipo: string
Referencia a un ConfigMap que contiene un archivo
logback-access.xmlpersonalizado para configurar los registros de Ops Manager.La clave en ConfigMap debe ser exactamente
logback-access.xmlpara garantizar que reemplace el archivo predeterminado en los pods de Ops Manager.Para obtener más información, consulte Configurar registros de Ops Manager con CRD.
spec.logging.logBackRefTipo: string
Referencia a un ConfigMap que contiene un archivo
logback.xmlpersonalizado. Este archivo configura el comportamiento general de registro de Ops Manager, incluyendo políticas de rotación de registros, niveles de registro y otros parámetros de registro.La clave en ConfigMap debe ser exactamente
logback.xmlpara garantizar que reemplace el archivo predeterminado en los pods de Ops Manager.Para obtener más información, consulte Configurar registros de Ops Manager con CRD.
spec.opsManagerURLTipo: string
Opcional. La URL del recurso Ops Manager en el operador de Kubernetes, por
https://link.to.configured.lb.example.comejemplo:.Si omite este parámetro, para conectarse a las instancias de Ops Manager, el operador de Kubernetes utiliza la siguiente URL como predeterminada para la instancia de Ops Manager:.
<om-name>-svc.{namespace}.svc.cluster.localEste es el FQDN del servicio sin interfaz gráfica para Ops Manager.Si especifica este parámetro, podrá cambiar esta URL a una diferente.
Nota
No confunda el con
spec.opsManagerURLla URL que especifica en un ConfigMap para una implementación específica a fin de configurar las implementaciones de MongoDB y los agentes de monitorización para la base de datos de la aplicación. El operador de Kubernetes necesita elspec.opsManagerURLpara conectarse directamente a las instancias de Ops Manager y configurar las implementaciones de Ops Manager y la base de datos de la aplicación. El operador de Kubernetes no utiliza elspec.opsManagerURLpara administrar bases de datos MongoDB específicas.Cambie el parámetro a una URL personalizada en los siguientes
spec.opsManagerURLcasos:Al implementar Ops Manager en varios clústeres de Kubernetes y no se puede acceder a la URL predeterminada desde el pod que aloja Ops Manager. Por ejemplo, al implementar Ops Manager en clústeres de Kubernetes distintos de aquellos en los que se implementa el operador de Kubernetes, es posible que no se pueda acceder al FQDN del servicio Ops Manager. En este caso, puede especificar una URL personalizada.
Al configurar el acceso externo a la instancia de Ops Manager en un dominio externo, puede especificar una URL personalizada. Esto también requiere que el operador de Kubernetes y los agentes de monitorización de la base de datos de la aplicación usen esta URL personalizada en lugar de la predeterminada.
spec.clusterDomainTipo: string
Kubernetes asigna a cada Pod un FQDN. El Operador de Kubernetes calcula el FQDN para cada Pod usando un
clusterDomainproporcionado. Kubernetes no proporciona una API para query estos nombres de host.
spec.clusterNameTipo: string
Kubernetes asigna a cada Pod un FQDN. El Operador de Kubernetes calcula el FQDN para cada Pod usando un
clusterNameproporcionado. Kubernetes no proporciona una API para query estos nombres de host.
spec.configurationTipo: colección
Propiedades de configuración de Ops Manager. Consulte la sección "Ops Manager Configuration Settings" para ver los nombres y descripciones de las propiedades. Cada propiedad toma un valor de
stringtipo.Importante
Si Ops Manager va a gestionar recursos de MongoDB implementados fuera del clúster de Kubernetes en el que está implementado, debes agregar la configuración
mms.centralUrlaspec.configuration.Establezca el valor en la URL mediante la cual Ops Manager se expone fuera del clúster de Kubernetes.
Para obtener más información,consulte Administrar implementaciones externas de MongoDB.
spec.configuration.mms.featureFlag.automation.verifyDownloadsTipo: string
Cuando se configura en
enabled, el Agente MongoDB requiere archivos de firma para todas las implementaciones de MongoDB que administra su instancia de Ops Manager.Cuando actualiza el Agente MongoDB con esta opción habilitada, la versión actual del Agente MongoDB requiere archivos de firma del nuevo binario del Agente MongoDB.
Para obtener más información, consulte Verificar firmas de MongoDB.
spec.configuration.mms.featureFlag.backup.queryableTipo: booleano
Establezca en
falsepara deshabilitar las copias de seguridad consultables.
spec.configuration.mms.featureFlag.backup.wt.queryableTipo: booleano
Establezca en
falsepara deshabilitar las copias de seguridad consultables al usar WiredTiger.
spec.configuration.mms.mongoDbUsage.defaultUsageTypeTipo: string
El tipo de servidor predeterminado del servicio Kubernetes.
Los valores aceptados son:
PRODUCTION_SERVER,TEST_SERVER,DEV_SERVERyRAM_POOL.
spec.jvmParametersTipo: arreglo de cadenas
Opcional. Los parámetros dela JVM se pasan a la aplicación Ops Manager en el contenedor. Los parámetros especificados reemplazan los parámetros predeterminados de la JVM para la aplicación Ops Manager.
Este parámetro del operador de Kubernetes tiene como valor predeterminado una lista vacía.
spec: jvmParameters: ["-XX:+HeapDumpOnOutOfMemoryError","-XX:HeapDumpPath=/tmp"] Importante
Cambie los valores del montón de memoria JVM bajo su propio riesgo
El operador de Kubernetes calcula los valores del montón de memoria de la JVM de la aplicación Ops Manager basándose en la memoria del contenedor. Cambiar los
-Xms-Xmxvalores y puede causar problemas con Ops Manager.
spec.security.certsSecretPrefixTipo: string
Texto para agregar como prefijo al secreto de Kubernetes que creó y que contiene la clave TLS y el certificado de Ops Manager.
Debes nombrar tu secreto
<prefix>-<metadata.name>-cert.Para aprender a configurar su instancia de Ops Manager para que se ejecute mediante HTTPS, consulte Implementar un recurso de Ops Manager.
spec.security.tls.caNombre del ConfigMap de Kubernetes que contiene un archivo CA personalizado para Ops Manager.
Importante
spec.security.tls.caes requerido si utilizas un CA personalizado para firmar tus certificados TLS de Ops Manager.El operador de Kubernetes requiere que usted nombre el certificado para el recurso Ops Manager
mms-ca.crten ConfigMap.Esta CA firma los certificados que:
Los clientes utilizan para conectarse a la aplicación Ops Manager y
Los agentes en los pods de la base de datos de aplicaciones se utilizan para comunicarse con Ops Manager.
Advertencia
Debe concatenar su archivo CA personalizado y toda la cadena de certificados TLS de
downloads.mongodb.compara evitar que Ops Manager deje de funcionar si se reinicia la base de datos de la aplicación.
spec.security.tls.enabledImportante
spec.security.tls.enabledestá obsoleto y se eliminará en una próxima versión. Para habilitar TLS, proporcione un valor para laspec.security.certsSecretPrefixconfiguración.Cifra las comunicaciones mediante certificados TLS entre los clientes y Ops Manager.
spec.statefulSet.specTipo: colección
Especificación para el StatefulSet que el operador MongoDB Enterprise Kubernetes crea para Ops Manager.
Para revisar qué campos puedes agregar
spec.statefulSet.speca, consulta las aplicaciones StatefulSetSpec v1 en la documentación de Kubernetes.
spec.statefulSet.spec.templateTipo: colección
Plantilla para los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para Ops Manager.
Nota
El operador de Kubernetes no valida los campos que proporciona
spec.statefulSet.spec.templateen.
spec.statefulSet.spec.template.metadataTipo: colección
Metadatos para los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para Ops Manager.
Para revisar qué campos puedes agregar a, consulta
spec.statefulSet.spec.template.metadatala documentación de Kubernetes.
spec.statefulSet.spec.template.specTipo: colección
Especificaciones de los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para Ops Manager.
Para revisar la lista completa de campos que puedes agregar a, consulta
spec.statefulSet.spec.template.specla documentación de Kubernetes.El siguiente ejemplo
spec.statefulSet.spec.template.specdefine la capacidad mínima y máxima de CPU y memoria para un contenedor de Ops Manager que implementa el operador de Kubernetes de MongoDB Enterprise:statefulSet: spec: template: spec: containers: - name: mongodb-ops-manager resources: requests: cpu: "0.70" memory: "6Gi" limits: cpu: "1" memory: "7000M"
spec.statefulSet.spec.template.spec.containersTipo: colección
Lista de contenedores que pertenecen a los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para Ops Manager.
Para modificar las especificaciones del contenedor de Ops Manager, debe proporcionar el nombre exacto del contenedor utilizando el campo
name, como se muestra en el siguiente ejemplo:backup: statefulSet: spec: template: spec: containers: - name: mongodb-ops-manager Nota
Al agregar contenedores a
spec.statefulSet.spec.template.spec.containers, el operador de Kubernetes los agrega al pod de Kubernetes. Estos contenedores se agregan a los contenedores de Ops Manager en el pod.
spec.statefulSet.spec.template.spec.containers.resources.requests.cpuTipo: string
Capacidad mínima de CPU que debe estar disponible en un nodo de Kubernetes para alojar Ops Manager.
El valor solicitado debe ser menor o igual a
spec.statefulSet.spec.template.spec.containers.resources.limits.cpu.
spec.statefulSet.spec.template.spec.containers.resources.limits.cpuTipo: string
Capacidad máxima de CPU del nodo que se crea para alojar el Administrador de Operaciones. Si se omite, este valor se establece
spec.statefulSet.spec.template.spec.containers.resources.requests.cpuen.
spec.statefulSet.spec.template.spec.containers.resources.requests.memoryTipo: string
Capacidad mínima de memoria que debe estar disponible en un nodo de Kubernetes para alojar Ops Manager en Kubernetes. Este valor se expresa como un entero seguido de una unidad de memoria en notación JEDEC.
Ejemplo
Si Ops Manager en Kubernetes requiere 6 gigabytes de memoria, configure este valor en
6Gi.Nota
MongoDB recomienda establecer este valor al menos en
5Gi.El valor solicitado debe ser menor o igual a
spec.statefulSet.spec.template.spec.containers.resources.limits.memory.
spec.statefulSet.spec.template.spec.containers.resources.limits.memoryTipo: string
Capacidad máxima de memoria del nodo que se crea para alojar el Administrador de Operaciones. Si se omite, este valor se establece
spec.statefulSet.spec.template.spec.containers.resources.requests.memoryen.El operador de Kubernetes calcula y establece parámetros para el tamaño del montón de Java en función de la memoria del contenedor.
Advertencia
Limite este valor a menos de 32 GB
Configurar este valor en un valor superior a 32 GB (
32Gi) puede causar problemas con el servicio de copia de seguridad. Un montón excesivo puede generar resultados impredecibles en Ops Manager.
Configuración de conectividad externa
Esta sección describe la configuración opcional relacionada con la conectividad externa en Ops Manager. Para la configuración opcional de conectividad externa específica de su implementación multiclúster de Ops Manager, consulte Configuración multiclúster.
spec.externalConnectivityTipo: colección
Objeto de configuración que habilita la conectividad externa con Ops Manager. Si se proporciona, el operador de Kubernetes crea un servicio de Kubernetes que permite que el tráfico procedente de fuera del clúster de Kubernetes llegue a la aplicación Ops Manager.
Si no se proporciona, el operador de Kubernetes no crea un servicio de Kubernetes. Debe crear uno manualmente o usar una solución de terceros que le permita enrutar el tráfico externo a la aplicación Ops Manager en su clúster de Kubernetes.
spec.externalConnectivity.typeTipo: string
El tipo de servicio del servicio Kubernetes que expone Ops Manager fuera de Kubernetes.
Obligatorio si está
spec.externalConnectivity.typepresente.Los valores aceptados son:
LoadBalanceryNodePort. Se recomiendaLoadBalancersi su proveedor de nube lo admite. UseNodePortpara implementaciones locales.
spec.externalConnectivity.portTipo: entero
Valor que indica qué puerto que un servicio de Kubernetes expone la aplicación Ops Manager debe usar para el tráfico externo.
Si
spec.externalConnectivity.typeNodePortes:El servicio Kubernetes expone la aplicación Ops Manager al tráfico externo a través de este puerto.
Si no proporciona un valor, el servicio Kubernetes enruta el tráfico a la aplicación Ops Manager desde un puerto disponible seleccionado aleatoriamente del siguiente rango
spec.externalConnectivity.portpredeterminado:3000032767-.Nota
Debe configurar el firewall de su red para permitir el tráfico a través de este puerto.
Si
spec.externalConnectivity.typeLoadBalanceres:El recurso de balanceador de carga que crea su proveedor de nube expone la aplicación Ops Manager a través de este puerto.
Si no proporciona un valor, el servicio Kubernetes expone la aplicación Ops Manager al tráfico externo a
spec.externalConnectivity.porttravés8080 del8443 puerto HTTP () o HTTPS () predeterminado.
spec.externalConnectivity.loadBalancerIPTipo: string
La dirección IP que utiliza el servicio Kubernetes
LoadBalancercuando el operador de Kubernetes lo crea.Esta configuración solo se puede usar si tu proveedor de nube la admite
spec.externalConnectivity.typeyLoadBalanceres. Para obtener más información sobre el equilibrador de carga de tipo, consulta la documentación de Kubernetes.
spec.externalConnectivity.externalTrafficPolicyTipo: string
Política de enrutamiento para el tráfico externo al servicio Ops Manager de Kubernetes. El servicio enruta el tráfico externo a puntos finales locales del nodo o a nivel de clúster, según el valor de esta configuración.
Los valores aceptados son:
ClusterLocaly. Para saber cuáles cumplen con sus requisitos, consulte "IP de origen en Kubernetes" en la documentación de Kubernetes.Nota
Si selecciona
Cluster, losSource-IPde sus clientes se perderán durante los saltos de red que ocurren en el límite de la red de Kubernetes.
spec.externalConnectivity.annotationsTipo: colección
Pares clave-valor que le permiten proporcionar configuraciones específicas del proveedor de nube.
Para obtener más información sobre las anotaciones y la compatibilidad con TLS en AWS, consulte la documentación de Kubernetes.
Configuración de copias de seguridad
Esta sección describe las opciones de configuración para las copias de seguridad en Ops Manager. Para conocer las opciones de configuración específicas de su implementación multiclúster de Ops Manager, consulte Configuración multiclúster.
spec.backup.assignmentLabelsTipo: arreglo de cadenas
Una lista de etiquetas de asignación para los procesos del servicio Backup Daemon. Use etiquetas de asignación para identificar qué procesos específicos del servicio Backup Daemon están asociados a proyectos específicos. Si configura etiquetas de asignación con el operador de Kubernetes, los valores que configure en el archivo de configuración de Kubernetes para las etiquetas de asignación anulan los valores definidos en la interfaz de usuario de Ops Manager. Las etiquetas de asignación que no configure con el operador de Kubernetes seguirán usando los valores definidos en la interfaz de usuario de Ops Manager.
spec.backup.enabledTipo: booleano
Marca que habilita la copia de seguridad para tu recurso de Ops Manager. Cuando se establece en
false, la copia de seguridad se deshabilita.El valor predeterminado es
true.
spec.backup.encryption.kmipTipo: objeto
Objeto que contiene la configuración del cifrado de copias de seguridad de KMIP. Para obtener más información, consulte Configurar el cifrado de copias de seguridad de KMIP para Ops Manager.
Nota
Si establece este parámetro, la clave API vinculada con el valor de debe
spec.credentialsGlobal Ownertener el rol.
spec.backup.encryption.kmip.serverTipo: objeto
Objeto que contiene la configuración del servidor de cifrado de respaldo KMIP.
spec.backup.encryption.kmip.server.caTipo: string
Etiqueta legible por humanos que identifica el ConfigMap que contiene una entrada para el certificado CA () que se
ca.pemutilizará para la autenticación KMIP.
spec.backup.encryption.kmip.server.urlTipo: string
URL del servidor KMIP que utiliza el
hostname.portformato (por ejemplo,192.168.1.3:5696my-kmip-server.mycorp.com:5696o).
spec.backup.headDBTipo: colección
Configuración de la base de datos principal. El operador de Kubernetes crea una reclamación de volumen persistente con la configuración especificada.
EscalarTipo de datoDescripciónlabelSelectorstring
Etiqueta utilizada para vincular volúmenes montados a directorios.
storagestring
Tamaño mínimo del volumen persistente que debe montarse. Este valor se expresa como un entero seguido de una unidad de almacenamiento en notación JEDEC.
El valor predeterminado es
30Gi.Para obtener más información, consulte Requisitos de hardware del demonio de respaldo.
Por ejemplo, si la base de datos principal requiere 60 gigabytes de espacio de almacenamiento, establezca este valor en
60Gi.storageClassstring
Tipo de almacenamiento especificado en una notificación de volumen persistente. Puede crear este tipo de almacenamiento como un objeto StorageClass antes de usarlo en esta especificación de objeto.
Asegúrese de configurar la clase de almacenamiento
reclaimPolicyen Retener. Esto garantiza que los datos se conserven al eliminar una reclamación de volumen persistente.
spec.backup.jvmParametersTipo: arreglo de cadenas
Opcional. Parámetros de JVM pasados al servicio derespaldo de Ops Manager en el contenedor.
Este parámetro del operador de Kubernetes tiene como valor predeterminado una lista vacía.
spec: backup: jvmParameters: ["-XX:+UseStringCache"] Advertencia
Cambie los valores del montón de memoria JVM bajo su propio riesgo
El operador de Kubernetes calcula los valores del montón de memoria de la JVM del servicio de copia de seguridad en función de la memoria del contenedor. Cambiar los
-Xms-Xmxvalores y puede causar problemas con Ops Manager.
spec.backup.membersTipo: entero
Opcional. Número de servicios de daemon de copias de seguridad para implementar en Kubernetes. Si no se especifica, el valor por defecto es
1. Para garantizar la alta disponibilidad de su servicio de copia de seguridad, implemente múltiples demonios de copias de seguridad en Ops Manager.
spec.backup.opLogStoresTipo: colección
Obligatorio si habilita la copia de seguridad. Matriz de almacenes de registros de operaciones utilizada para la copia de seguridad. Cada elemento de la matriz hace referencia a un recurso de base de datos MongoDB implementado en el clúster de Kubernetes por el operador de Kubernetes.
spec.backup.opLogStores.assignmentLabelsTipo: arreglo de cadenas
Una lista de etiquetas de asignación para el almacén de registros de operaciones. Use etiquetas de asignación para identificar qué almacenes de registros de operaciones están asociados a proyectos específicos. Si configura etiquetas de asignación con el operador de Kubernetes, los valores que configure en el archivo de configuración de Kubernetes para las etiquetas de asignación anulan los valores definidos en la interfaz de usuario de Ops Manager. Las etiquetas de asignación que no configure con el operador de Kubernetes seguirán usando los valores definidos en la interfaz de usuario de Ops Manager.
spec.backup.opLogStores.nameTipo: string
Obligatorio si habilita la copia de seguridad. Nombre del almacén de registros de operaciones.
Importante
Una vez especificado, no edite el nombre del almacén de oplog.
spec.backup.opLogStores.mongodbResourceRef.nameTipo: string
Obligatorio si habilita la copia de seguridad. Nombre del
MongoDBrecurso oMongoDBMultiClusterque crea para almacenar fragmentos de registro de operaciones. Debe implementar este recurso en el mismo espacio de nombres que el recurso de Ops Manager.La base de datos Oplog solo admite el mecanismo de autenticación
SCRAM. No se pueden habilitar otros mecanismos de autenticación.Si habilita la autenticación
SCRAMen la base de datos de oplog, debe:Cree un recurso de usuario MongoDB para conectar Ops Manager a la base de datos oplog.
Especifique el del usuario en la definición de recurso de Ops
nameManager.
Si no existe un recurso de base de datos MongoDB con este nombre, el recurso
backuppasa al estadoPending. El operador de Kubernetes reintenta cada 10 segundos hasta que se crea un recurso de base de datos MongoDB con este nombre.Nota
El operador de Kubernetes comienza a conciliar automáticamente el recurso de Ops Manager al realizar cambios de seguridad en los recursos de la base de datos a los que hace referencia en esta configuración. El operador de Kubernetes actualiza los indicadores
mongoURIysslen la configuración de Ops Manager según los cambios.
spec.backup.opLogStores.mongodbUserRef.nameTipo: string
Necesario si la autenticación SCRAM está habilitada en la base de datos del almacén oplog. Nombre del recurso de usuario de MongoDB utilizado para conectarse a la base de datos del almacén oplog. Implementa este recurso de usuario en el mismo namespace que el recurso de Ops Manager y con todos los siguientes roles:
spec.backup.blockStoresTipo: colección
Obligatorio si habilita la copia de seguridad mediante un almacén de bloques. Matriz de almacenes de bloques utilizada para la copia de seguridad. Cada elemento de la matriz hace referencia a un recurso de base de datos MongoDB implementado en el clúster de Kubernetes por el operador de Kubernetes.
spec.backup.blockStores.assignmentLabelsTipo: arreglo de cadenas
Una lista de etiquetas de asignación para el almacén de bloques. Use etiquetas de asignación para identificar qué almacenes de bloques específicos están asociados a proyectos específicos. Si configura etiquetas de asignación con el operador de Kubernetes, los valores que configure en el archivo de configuración de Kubernetes para las etiquetas de asignación anulan los valores definidos en la interfaz de Ops Manager. Las etiquetas de asignación que no configure con el operador de Kubernetes seguirán usando los valores definidos en la interfaz de Ops Manager.
spec.backup.blockStores.nameTipo: string
Obligatorio si habilita la copia de seguridad mediante un almacén de bloques. Nombre del almacén de bloques.
Importante
Una vez especificado, no edite el nombre del almacén de bloques.
spec.backup.blockStores.mongodbResourceRef.nameTipo: string
Obligatorio si habilita la copia de seguridad mediante un almacén de bloques. Nombre del recurso de base de datos MongoDB que crea para el almacén de bloques. Debe implementar este recurso de base de datos en el mismo espacio de nombres que el recurso de Ops Manager.
La base de datos de almacenamiento en bloques solo admite el mecanismo de autenticación
SCRAM. No puedes habilitar otros mecanismos de autenticación.Si habilita la autenticación
SCRAMen la base de datos del almacén de bloques, debe:Cree un recurso de usuario MongoDB para conectar Ops Manager a la base de datos de blockstore.
Especifique el del usuario en la definición de recurso de Ops
nameManager.
Si no existe un recurso de base de datos MongoDB con este nombre, el recurso
backuppasa al estadoPending. El operador de Kubernetes reintenta cada 10 segundos hasta que se crea un recurso de base de datos MongoDB con este nombre.Nota
El operador de Kubernetes comienza a conciliar automáticamente el recurso de Ops Manager al realizar cambios de seguridad en los recursos de la base de datos a los que hace referencia en esta configuración. El operador de Kubernetes actualiza los indicadores
mongoURIysslen la configuración de Ops Manager según los cambios.
spec.backup.blockStores.mongodbUserRef.nameTipo: string
Obligatorio si la autenticación SCRAM está habilitada en la base de datos del almacén de bloques. Nombre del recurso de usuario de MongoDB utilizado para conectarse a la base de datos del almacén de bloques. Implemente este recurso de usuario en el mismo espacio de nombres que el recurso de Ops Manager y con todos los roles siguientes:
spec.backup.queryableBackupSecretRef.nameTipo: string
Nombre del secreto que contiene el archivo queryable.pem de Ops Manager, que se usará para acceder y consultar las copias de seguridad según los requisitos TLS de su implementación. El archivo PEM contiene un certificado de clave pública y su clave privada asociada, necesarios para acceder y ejecutar consultas en las instantáneas de copia de seguridad en Ops Manager. Para consultar las copias de seguridad, especifique el valor de este parámetro. Si no se configura, las copias de seguridad no se verán afectadas, pero no podrá consultarlas.
spec.backup.statefulSet.specTipo: colección
Especificación para el StatefulSet que el operador MongoDB Enterprise Kubernetes crea para el servicio de demonio de respaldo.
Para revisar qué campos puedes agregar
spec.backup.statefulSet.speca, consulta las aplicaciones StatefulSetSpec v1 en la documentación de Kubernetes.
spec.backup.statefulSet.spec.templateTipo: colección
Plantilla para los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para el servicio de demonio de respaldo.
Nota
El operador de Kubernetes no valida los campos que proporciona
spec.backup.statefulSet.spec.templateen.
spec.backup.statefulSet.spec.template.metadataTipo: colección
Metadatos para los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para el servicio de demonio de respaldo.
Para revisar qué campos puedes agregar a, consulta
spec.backup.statefulSet.spec.template.metadatala documentación de Kubernetes.
spec.backup.statefulSet.spec.template.specTipo: colección
Especificaciones de los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para el servicio de demonio de respaldo.
Para revisar la lista completa de campos que puedes agregar a, consulta
spec.backup.statefulSet.spec.template.specla documentación de Kubernetes.El siguiente ejemplo
spec.backup.statefulSet.spec.template.specdefine la capacidad mínima y máxima de CPU y memoria para un contenedor de servicio de demonio de respaldo que implementa el operador de Kubernetes de MongoDB Enterprise:statefulSet: spec: template: spec: containers: - name: mongodb-backup-daemon resources: requests: cpu: "0.50" memory: "4500M" limits: cpu: "1" memory: "6000M"
spec.backup.statefulSet.spec.template.spec.containersTipo: colección
Lista de contenedores que pertenecen a los pods de Kubernetes en el StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para el servicio de demonio de respaldo.
Para modificar las especificaciones del contenedor del servicio de demonio de respaldo, debe proporcionar el nombre exacto del contenedor utilizando el
namecampo, como se muestra en el siguiente ejemplo:backup: statefulSet: spec: template: spec: containers: - name: mongodb-backup-daemon Nota
Al agregar contenedores
spec.backup.statefulSet.spec.template.spec.containersa, el operador de Kubernetes los agrega al pod de Kubernetes. Estos contenedores se agregan a los contenedores del servicio Backup Daemon del pod.
spec.backup.statefulSet.spec.template.spec.containers.resources.requests.cpuTipo: string
Capacidad mínima de CPU que debe estar disponible en un nodo de Kubernetes para alojar el serviciode demonio de respaldo.
El valor solicitado debe ser menor o igual a
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.cpu.
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.cpuTipo: string
Capacidad máxima de CPU del nodo que se crea para alojar el servicio de demonio de copia de seguridad. Si se omite, este valor se establece
spec.backup.statefulSet.spec.template.spec.containers.resources.requests.cpuen.
spec.backup.statefulSet.spec.template.spec.containers.resources.requests.memoryTipo: string
Capacidad mínima de memoria que debe estar disponible en un nodo de Kubernetes para alojar el servicio de demonio de copia de seguridad en Kubernetes. Este valor se expresa como un entero seguido de una unidad de memoria en notación JEDEC.
Nota
Establece este valor en al menos
4.5Gi. Valores menores a4.5Gipueden resultar en un error.El valor solicitado debe ser menor o igual a
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.memory.
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.memoryTipo: string
Capacidad máxima de memoria del nodo que se crea para alojar el servicio de demonio de copia de seguridad. Si se omite, este valor se establece
spec.backup.statefulSet.spec.template.spec.containers.resources.requests.memoryen.El operador de Kubernetes calcula y establece parámetros para el tamaño del montón de Java en función de la memoria del contenedor.
Advertencia
Limite este valor a menos de 32 GB
Configurar este valor en un valor superior a 32 GB (
32Gi) puede causar problemas con el servicio de copia de seguridad. Un montón excesivo puede generar resultados impredecibles en Ops Manager.
Configuración de S3
Puede configurar Ops Manager para usar S3 para almacenar registros de operaciones e instantáneas de respaldo, y proteger conexiones a S3 con TLS usando claves emitidas por CA personalizada.
Para configurar claves de CA personalizadas, utilice el ConfigMap con el que configuró TLS para su base de datos de aplicación como se describe en la TLS-Encrypted Connection (HTTPS) Pestaña "Implementar un recurso de spec.applicationDatabase.security.tls.ca Ops Manager". Establezca en este ConfigMap.
Puede utilizar TLS tanto para S3 como para su base de datos de aplicación, o solo para S.3
Para usar TLS para ambos, obtenga certificados para ambos propósitos del mismo
ca-pemreferenciado en ConfigMap.Para utilizar TLS solo para S,3 no defina
spec.security.applicationDatabase.certsSecretPrefixen su ConfigMap.
spec.backup.s3OpLogStores.assignmentLabelsTipo: arreglo de cadenas
Una lista de etiquetas de asignación para 3 almacenes de registros de operaciones S. Use etiquetas de asignación para identificar qué almacenes de registros de operaciones S están asociados a3 proyectos específicos. Si configura etiquetas de asignación mediante el operador de Kubernetes, los valores que configure en el archivo de configuración de Kubernetes para las etiquetas de asignación anulan los valores definidos en la interfaz de usuario de Ops Manager. Las etiquetas de asignación que no configure mediante el operador de Kubernetes seguirán usando los valores definidos en la interfaz de usuario de Ops Manager.
spec.backup.s3OpLogStores.customCertificateTipo: booleano
Obsoleto. Utiliza
spec.backup.s3OpLogStores.customCertificateSecretRefsen su lugar.Marca que indica si se utilizan certificados
appdb-cade AppDB () como certificado TLS personalizado para el3 almacén de registros de operaciones S. El valor predeterminadoFalsees.
spec.backup.s3OpLogStores.customCertificateSecretRefsTipo: matriz de objetos
Lista de certificados personalizados para su almacén de oplog S3 usando secretos de Kubernetes. El certificado x.509 codificado en base64debe estar presente en un secreto de Kubernetes con una clave y debe ser parseable por el Java CertifcateFactory. No puedes especificar múltiples certificados en una cadena en un solo secreto. Si especificas múltiples certificados en una cadena en un solo secreto, el operador de Kubernetes utiliza solo el primer certificado en la cadena. Si también proporciona la configuración
customCertificate, el operador de Kubernetes usa elspec.applicationDatabase.security.tls.cacomo certificado personalizado para copias de seguridad.Cada entrada de la lista especifica y. Si especifica varios secretos, Kubernetes Operator utiliza todos los certificados de los secretos
namekeyespecificados.Si no proporciona esta configuración, Ops Manager utiliza el almacén de confianza predeterminado de JVM utilizado por Ops Manager.
spec.backup.s3OpLogStores.customCertificateSecretRefs.nameTipo: string
Necesario para usar certificados personalizados en el almacén de registros de3 operaciones S. Secreto de Kubernetes que contiene el certificado personalizado.
spec.backup.s3OpLogStores.customCertificateSecretRefs.keyTipo: string
Necesario para usar certificados personalizados para el3 almacén de registros de operaciones S. Archivo que representa la clave del secreto que contiene el64509 certificado x. codificado en base. Si no se especifica esta configuración, el operador de Kubernetes no podrá usar el certificado personalizado para las copias de seguridad del 3 almacén de registros de operaciones S.
spec.backup.s3OpLogStores.irsaEnabledTipo: booleano
Flag que permite usar AWS roles IAM para cuentas de servicio en AWS EKS para configurar un almacén de S3 oplog. El valor por defecto es
False. Si no utilizas AWS EKS, esta bandera no tiene efecto. Cuando se configura enFalse, el uso de roles IAM de AWS para cuentas de servicio en EKS para configurar un almacén de S3 oplog está deshabilitado. Para aprender más, consulta Roles IAM para cuentas de servicio en EKS.
spec.backup.s3OpLogStores.nameTipo: string
Necesario para almacenar el registro de operaciones mediante un almacén S.3 Nombre del almacén 3 S.
spec.backup.s3OpLogStores.mongodbResourceRef.nameTipo: string
Nombre del recurso de base de datos MongoDB que crea para almacenar metadatos para el almacén de registros de operaciones S. Debe implementar este recurso de base de datos en el mismo espacio de nombres que el recurso Ops 3 Manager.
Nota
Omita esta configuración para utilizar la base de datos de la aplicación para almacenar metadatos para el almacén de registros de operaciones S.3
Si omite esta configuración, también debe omitir la configuración de
spec.backup.s3OpLogStores.mongodbUserRef.name. El operador de Kubernetes gestiona la autenticación de usuarios deSCRAMinternamente.Si habilita la autenticación
SCRAMen esta base de datos, debe:Cree un recurso de usuario MongoDB para conectar Ops Manager a la base de datos.
Especifique el del usuario en la definición de recurso de Ops
nameManager.
spec.backup.s3OpLogStores.mongodbUserRef.nameTipo: string
Obligatorio si creó un recurso de base de datos MongoDB para almacenar3 metadatos del registro de operaciones S y SCRAM está habilitado en esta base de datos. Nombre del recurso de usuario MongoDB utilizado para conectarse a la base de datos de metadatos del almacén de 3 registros de operaciones S. Implemente este recurso de usuario en el mismo espacio de nombres que el recurso Ops Manager y con todos los roles siguientes:
Importante
Una vez especificado, no edite el nombre de usuario del almacén de registros de operaciones de metadatos S.3
spec.backup.s3OpLogStores.s3SecretRef.nameTipo: string
Necesario para almacenar el registro de operaciones mediante un almacén S.3 Nombre del secreto que contiene los
accessKeysecretKeycampos y. El servicio de demonio de copia de seguridad utiliza los valores de estos campos como credenciales para acceder a su bucket compatible con AWS S3 o 3S. Para configurar el almacén de 3 registros de operaciones S, debe especificar ambas claves en el secreto.
spec.backup.s3OpLogStores.pathStyleAccessEnabledTipo: booleano
Indica el estilo de la URL del punto final del bucket.
ValorDescripciónEjemplotrueURL de estilo de ruta
s3.amazonaws.com/<bucket>falseURL de estilo de host virtual
<bucket>.s3.amazonaws.comPara obtener más información sobre las anotaciones y la compatibilidad con TLS en AWS, consulte la documentación de Kubernetes.
El valor predeterminado es
true.
spec.backup.s3OpLogStores.s3BucketEndpointTipo: string
Necesario para almacenar el registro de operaciones mediante un3 almacén S. URL del depósito AWS S3 o del depósito compatible con S que aloja el almacén del registro de operaciones.3
Nota
Si su punto final no incluye una región en su URL, especifique el
s3RegionOverridecampo.
spec.backup.s3OpLogStores.s3BucketNameTipo: string
Necesario para almacenar el registro de operaciones mediante un almacén S.3 Nombre del depósito AWS S3 o del depósito compatible con S que aloja el almacén del registro de operaciones.3
spec.backup.s3OpLogStores.s3RegionOverrideTipo: string
Región donde reside su bucket compatible con S. Use este campo solo si el de su almacén 3de registros de
s3BucketEndpointoperaciones S3no admite el alcance regional. El alcance regional se produce cuando su punto de conexión no incluye una región en su URL.No utilice este campo con buckets de AWS S.3 Para obtener más información, consulte 3 Configuración del almacén de bloques S.
spec.backup.s3Stores.assignmentLabelsTipo: arreglo de cadenas
Una lista de etiquetas de asignación para los buckets compatibles con S3 o S3donde se almacenan las instantáneas de copia de seguridad de la base de datos. Use etiquetas de asignación para identificar qué almacenes S3 específicos están asociados a proyectos específicos. Si configura etiquetas de asignación con el operador de Kubernetes, los valores que configure en el archivo de configuración de Kubernetes para las etiquetas de asignación anulan los valores definidos en la interfaz de usuario de Ops Manager. Las etiquetas de asignación que no configure con el operador de Kubernetes seguirán usando los valores definidos en la interfaz de usuario de Ops Manager.
spec.backup.s3Stores.customCertificateTipo: booleano
Obsoleto. Utiliza
spec.backup.s3Stores.customCertificateSecretRefsen su lugar.Marca que indica si se utilizan los certificados
appdb-cade la base de datos de la aplicación () como certificado TLS personalizado para las copias de seguridad de S. El valor predeterminado3Falsees.
spec.backup.s3Stores.customCertificateSecretRefsTipo: matriz de objetos
Lista de certificados personalizados para su almacén de instantáneas S3 que utiliza secretos de Kubernetes.64El509 certificado x. con codificación base debe estar presente en un secreto de Kubernetes con una clave y debe ser analizable por Java CertifcateFactory. No se pueden especificar varios certificados en una cadena dentro de un mismo secreto. Si se especifican varios certificados en una cadena dentro de un mismo secreto, Kubernetes Operator solo usa el primer certificado de la cadena. Si también se proporciona la
spec.backup.s3Stores.customCertificateconfiguración, Kubernetes Operator usaspec.applicationDatabase.security.tls.cacomo certificado personalizado para las copias de seguridad.Cada entrada de la lista especifica y. Si especifica varios secretos, el operador de Kubernetes los usa
namekeytodos.Si no proporciona esta configuración, el operador de Kubernetes utiliza el almacén de confianza predeterminado de JVM que utiliza Ops Manager para las copias de seguridad.
spec.backup.s3Stores.customCertificateSecretRefs.nameTipo: string
Necesario para usar certificados personalizados en el almacén de registros de3 operaciones S. Secreto de Kubernetes que contiene el certificado personalizado.
spec.backup.s3Stores.customCertificateSecretRefs.keyTipo: string
Requerido para usar certificados personalizados para tu almacenamiento S3 oplog. Archivo que representa la clave en el secreto que contiene el certificado codificado en base64-x.509. Si no se especifica este ajuste, el operador de Kubernetes no puede utilizar el certificado personalizado para el almacenamiento de snapshot S3 y recurre al almacén de confianza JVM {Java Virtual Machine) por defecto utilizado por Ops Manager.
spec.backup.s3Stores.irsaEnabledTipo: booleano
Marca que habilita el uso de roles de IAM de AWS para cuentas de servicio en AWS EKS para configurar un almacén3 de instantáneas S. El valor predeterminado
Falsees. Si no utiliza AWS EKS, esta marca no tiene efecto. Cuando se establece en, se deshabilita elFalseuso de roles de IAM de AWS para cuentas de servicio en EKS para configurar un3 almacén de instantáneas S. Para obtener más información, consulte Roles de IAM para cuentas de servicio en EKS.
spec.backup.s3Stores.nameTipo: string
Necesario para almacenar el registro de operaciones mediante un almacén S.3 Nombre del 3 almacén de instantáneas S.
Importante
Una vez especificado, no edite el nombre del 3 almacén de instantáneas S. Es probable que este cambio falle si las copias de seguridad usan el nombre anterior. Las consecuencias de un cambio exitoso son impredecibles.
spec.backup.s3Stores.mongodbResourceRef.nameTipo: string
Nombre del recurso
MongoDBo recursoMongoDBMultiClusterque crees para almacenar metadatos para el almacén de snapshots de S3. Debes implementar este recurso de base de datos en el mismo namespace que el recurso Ops Manager.Nota
Omita esta configuración para utilizar la base de datos de la aplicación para almacenar metadatos para el almacén3 de instantáneas S.
Si omite esta configuración, también debe omitir la configuración de
spec.backup.s3Stores.mongodbUserRef.name. El operador de Kubernetes gestiona la autenticación de usuarios deSCRAMinternamente.Si habilita la autenticación
SCRAMen esta base de datos, debe:Cree un recurso de usuario MongoDB para conectar Ops Manager a la base de datos.
Especifique el del usuario en la definición de recurso de Ops
nameManager.
Importante
Una vez especificado, no edite el nombre del 3 almacén de instantáneas S. Es probable que este cambio falle si las copias de seguridad usan el nombre anterior. Las consecuencias de un cambio exitoso son impredecibles.
Si no existe un recurso de base de datos MongoDB con este nombre, el recurso
backuppasa al estadoPending. El operador de Kubernetes reintenta cada 10 segundos hasta que se crea un recurso de base de datos MongoDB con este nombre.Nota
El operador de Kubernetes comienza a conciliar automáticamente el recurso de Ops Manager al realizar cambios de seguridad en los recursos de la base de datos a los que hace referencia en esta configuración. El operador de Kubernetes actualiza los indicadores
mongoURIysslen la configuración de Ops Manager según los cambios.
spec.backup.s3Stores.mongodbUserRef.nameTipo: string
Obligatorio si creó un recurso de base de datos MongoDB para almacenar3metadatos de instantáneas |s | y SCRAM está habilitado en esta base de datos. Nombre del recurso de usuario MongoDB utilizado para conectarse a la base de datos de metadatos del 3 almacén de instantáneas S. Implemente este recurso de usuario en el mismo espacio de nombres que el recurso Ops Manager y con todos los roles siguientes:
Importante
Una vez especificado, no edite el nombre de usuario del almacén de instantáneas de metadatos S.3
spec.backup.s3Stores.s3SecretRef.nameTipo: string
Obligatorio si habilita3 la
accessKeysecretKeycopia de seguridad mediante un almacén S. Nombre del secreto que contiene los campos y. El servicio de demonio de copia de seguridad utiliza los valores de estos campos como credenciales para acceder a su bucket compatible con AWS 3 S3o S. El almacén de instantáneas S3 no se puede configurar si al secreto le falta alguna de las claves.
spec.backup.s3Stores.pathStyleAccessEnabledTipo: booleano
Indica el estilo de la URL del punto final del bucket.
ValorDescripciónEjemplotrueURL de estilo de ruta
s3.amazonaws.com/<bucket>falseURL de estilo de host virtual
<bucket>.s3.amazonaws.comEl valor predeterminado es
true.
spec.backup.s3Stores.s3BucketEndpointTipo: string
Obligatorio si habilita3 la copia de seguridad mediante un almacén S. URL del depósito AWS S3 o del depósito compatible con S que aloja el almacén de instantáneas.3
Nota
Si su punto final no incluye una región en su URL, especifique el
s3RegionOverridecampo.
spec.backup.s3Stores.s3BucketNameTipo: string
Obligatorio si habilita la copia de seguridad mediante un almacén S.3 Nombre del depósito de AWS S3 o del depósito compatible con S que aloja el almacén de instantáneas.3
spec.backup.s3Stores.s3RegionOverrideTipo: string
Región donde reside su bucket compatible con S. Use este campo solo si el de su3almacén
s3BucketEndpointS3no admite el alcance regional. El alcance regional se produce cuando su punto de conexión no incluye una región en su URL.No utilice este campo con buckets de AWS S.3 Para obtener más información, consulte 3 Configuración del almacén de bloques S.
Configuración requerida de la base de datos de la aplicación
En esta sección se describen las configuraciones que debe utilizar además de las configuraciones requeridas de Ops Manager para configurar la base de datos de la aplicación Ops Manager.
spec.applicationDatabase.versionTipo: string
Obligatorio. Versión de MongoDB instalada en la base de datos de la aplicación Ops Manager. Debe especificar una versión empresarial de MongoDB compatible según la etiqueta en el registro de contenedores. Por ejemplo,.
6.0.0-ubi8A partir de la versión. del operador de Kubernetes,1 20las etiquetas ya no terminan-enten.Importante
Asegúrese de elegir una versión de MongoDB Server compatible.
Las versiones compatibles difieren según la imagen base que utiliza el recurso de base de datos MongoDB.
Nota
Si actualiza este valor a una versión posterior de MongoDB para la base de datos de la aplicación, la versión de compatibilidad de funciones se mantendrá en la versión de MongoDB que está actualizando para que pueda cambiar a una versión inferior si es necesario. Si desea que la versión de compatibilidad de funciones coincida con la nueva versión de MongoDB, debe configurar manualmente el
featureCompatibilityVersionparámetrospec.applicationDatabaseen.
Configuración opcional de la base de datos de la aplicación
Esta sección describe las opciones de configuración de la base de datos de la aplicación Ops Manager. Para obtener información sobre la configuración opcional de la base de datos de la aplicación específica para su implementación multiclúster de Ops Manager, consulte Configuración multiclúster.
spec.applicationDatabaseTipo: colección
Definición de recursos de base de datos de la aplicación Ops Manager.
Las siguientes configuraciones de la especificación de recursos del conjunto de réplicas son opcionales.
spec.applicationDatabase.agent.logLevelTipo: string
Predeterminado: INFO
Configura el nivel de registro del agente de automatización dentro del pod. Los valores aceptados incluyen:
DEBUGINFOWARNERRORFATAL
spec.applicationDatabase.agent.<component>.logRotateTipo: objeto
Reemplace el componente con uno de los siguientes valores:
mongodmonitoringAgent
Objeto de configuración de MongoDB para rotar los registros de MongoDB de un proceso. Para usar la
agent.<component>.logRotateconfiguración, debe establecersystemLog.destinationen,fileya que no puede usar laagent.<component>.logRotateconfiguración si escribe registros en el sistema syslog del host.
spec.applicationDatabase.agent.mongod.logRotate.numTotalTipo: entero
Por defecto:
0Número total de archivos de registro que Ops Manager conserva. Si no cambia la configuración predeterminada, Ops Manager basa la rotación en sus otras
agent.<compenet>.logRotateconfiguraciones.
spec.applicationDatabase.agent.mongod.logRotate.numUncompressedTipo: entero
Por defecto:
5Número máximo de archivos de registro totales que se dejarán sin comprimir, incluido el archivo de registro actual.
spec.applicationDatabase.agent.mongod.logRotate.percentOfDiskspaceTipo: número
Por defecto:
0.02Porcentaje máximo del espacio total en disco que Ops Manager puede usar para almacenar los archivos de registro, expresado en decimales. Si se supera estelímite, Ops Manager elimina los archivos de registro comprimidos hasta alcanzarlo. Ops Manager elimina primero los archivos de registro más antiguos.
spec.applicationDatabase.agent.<component>.logRotate.sizeThresholdMBTipo: número
Reemplace el componente con uno de los siguientes valores:
mongodmonitoringAgent
Obligatorio si se rotan registros. Tamaño máximo en MB para un archivo de registro individual antes de que Ops Manager lo rote. Ops Manager rota el archivo de registro inmediatamente si cumple con el valor especificado en este
sizeThresholdMBlogRotate.timeThresholdHrslímite o.
spec.applicationDatabase.agent.<component>.logRotate.timeThresholdHrsTipo: entero
Reemplace el componente con uno de los siguientes valores:
mongodmonitoringAgent
Obligatorio si se rotan registros. Duración máxima en horas para un archivo de registro individual antes de la siguiente rotación. El tiempo transcurrido es desde la última rotación. Ops Manager rota el archivo de registro inmediatamente si cumple con el valor especificado en
timeThresholdHrso ellogRotate.sizeThresholdMlímite de.
spec.applicationDatabase.agent.mongod.auditlogRotateTipo: objeto
Objeto de configuración de MongoDB para rotar los registros de auditoría de MongoDB de un proceso.
spec.applicationDatabase.agent.mongod.auditlogRotate.numTotalTipo: entero
Por defecto:
0Número total de archivos de registro de auditoría que Ops Manager conserva. Si no cambia el valor predeterminado, Ops Manager basará la rotación en sus otras
agent.mongod.auditlogRotateconfiguraciones.
spec.applicationDatabase.agent.mongod.auditlogRotate.numUncompressedTipo: entero
Por defecto:
5Número máximo de archivos de registro de auditoría totales que se dejarán sin comprimir, incluido el archivo de registro de auditoría actual.
spec.applicationDatabase.agent.mongod.auditlogRotate.percentOfDiskspaceTipo: número
Por defecto:
0.02Porcentaje máximo del espacio total en disco que Ops Manager puede usar para almacenar los archivos de registro de auditoría, expresado en decimales. Si se supera este límite, Ops Manager eliminará los archivos de registro de auditoría comprimidos hasta alcanzarlo. Ops Manager eliminará primero los archivos de registro de auditoría más antiguos.
spec.applicationDatabase.agent.mongod.auditlogRotate.sizeThresholdMBTipo: número
Obligatorio si se rotan los registros de auditoría. Tamaño máximo en MB para un archivo de registro de auditoría individual antes de que Ops Manager lo rote. Ops Manager rota el archivo de registro de auditoría inmediatamente si alcanza el valor en
sizeThresholdMBo el límiteauditlogRotate.timeThresholdHrsde.
spec.applicationDatabase.agent.mongod.auditlogRotate.timeThresholdHrsTipo: entero
Obligatorio si se rotan los registros de auditoría. Duración máxima en horas de un archivo de registro de auditoría individual antes de la siguiente rotación. El tiempo transcurrido es desde la última rotación. Ops Manager rota el archivo de registro de auditoría inmediatamente si alcanza el valor en el
timeThresholdHrsauditlogRotate.sizeThresholdMlímite o.
spec.applicationDatabase.agent.startupOptionsTipo: objeto
Objeto de configuración de MongoDB para las opciones de inicio. Consulte la configuración del agente de MongoDB para ver los campos disponibles.
spec.applicationDatabase.agent.systemLogTipo: objeto
Objeto de configuración de MongoDB para configurar las opciones
systemLog.
spec.applicationDatabase.agent.systemLog.pathTipo: string
Por defecto:
/var/log/mongodb-mms-automation/mongodb.logLa ruta del archivo de registro al que
mongodo deben enviar toda la información de registro demongosdiagnóstico, en lugar de la salida estándar o el syslog del host. MongoDB crea el archivo de registro en la ruta especificada.Los scripts de inicio de los paquetes de Linux no esperan que
systemLog.pathcambie de los valores predeterminados. Si usa los paquetes de Linux y cambiasystemLog.path, deberá usar sus propios scripts de inicio y deshabilitar los scripts integrados.
spec.applicationDatabase.agent.systemLog.logAppendTipo: booleano
Por defecto:
falseCuando,
truemongosu añade nuevas entradas al finalmongodmongosdelmongodarchivo de registro existentemongodal reiniciar la instancia o. Sin esta opción, creará una copia de seguridad del registro existente y creará un nuevo archivo.
spec.applicationDatabase.agent.systemLog.destinationTipo: string
El destino al que MongoDB envía todos los registros de salida. Especifica
fileosyslog. Si especificasfile, también debes especificarsystemLog.path.Si no especifica, MongoDB envía toda la salida del registro a la salida
systemLog.pathestándar.Advertencia
El demonio syslog genera marcas de tiempo al registrar un mensaje, no cuando MongoDB lo emite. Este comportamiento puede generar marcas de tiempo erróneas en las entradas de registro, especialmente cuando el sistema está sometido a una gran carga. Recomendamos usar la opción
fileen sistemas de producción para garantizar la precisión de las marcas de tiempo.
spec.applicationDatabase.memberConfigTipo: matriz de objetos
Especificación para cada miembro del conjunto de réplicas de la base de datos de aplicaciones en su implementación de Ops Manager.
Importante
Si
spec.topologyconfiguraMultiClustercomo, usespec.applicationDatabase.clusterSpecList.memberConfigen lugar de. En una implementación de Ops Manager multiclúster, el operador de Kubernetes ignora todos los parámetros porspec.applicationDatabase.memberConfigdebajospec.applicationDatabase.memberConfigde.El número de elementos en la
memberConfiglista debe ser igualspec.applicationDatabase.membersa.El orden de los elementos en la lista
memberConfigdebe reflejar el orden de los miembros en el conjunto de réplicas. Por ejemplo, el primer elemento de la matriz afecta al pod en el índice0, el segundo elemento afecta al índice1, y así sucesivamente.Ejemplo
Considere la siguiente especificación de ejemplo para un conjunto de réplicas de tres miembros para la base de datos de la aplicación:
spec: applicationDatabase: memberConfig: - votes: 1 priority: "0.5" tags: tag1: "value1" environment: "prod" - votes: 1 priority: "1.5" tags: tag2: "value2" environment: "prod" - votes: 0 priority: "0" tags: tag2: "value2" environment: "prod"
spec.applicationDatabase.memberConfig.priorityTipo: string
Número que indica la probabilidad relativa de que un miembro del conjunto de réplicas de la base de datos de aplicaciones se convierta en el principal.
Para aumentar la probabilidad relativa de que un miembro del conjunto de réplicas se convierta en el principal, especifique un valor
prioritymás alto.Para disminuir la probabilidad relativa de que un miembro del conjunto de réplicas se convierta en el principal, especifique un valor
prioritymás bajo.
Por ejemplo, un miembro con un
memberConfig.priorityde1.5tiene más probabilidades de convertirse en el principal que un miembro con unmemberConfig.priorityde0.5.Un miembro con un
memberConfig.priorityde0no puede ser el miembro principal. Para obtener más información, consulte Prioridad de miembros.
spec.applicationDatabase.memberConfig.tagsTipo: mapa
Mapa de etiquetas de conjuntos de réplicas para dirigir operaciones de lectura y escritura a miembros específicos de su conjunto de réplicas de la base de datos de aplicaciones.
spec.applicationDatabase.memberConfig.votesTipo: número
Determina si un miembro del conjunto de réplicas de la base de datos de la aplicación puede votar en una elección. Se establece en
1para permitir que el miembro vote. Se establece en0para excluir al miembro de una elección.
spec.applicationDatabase.passwordSecretKeyRef.nameTipo: string
Nombre del secreto que contiene la contraseña del usuario de la base de datos de Ops
mongodb-ops-managerManager. Ops Manager utiliza esta contraseña para autenticarse en la base de datos de la aplicación.
spec.applicationDatabase.passwordSecretKeyRef.keyTipo: string
Nombre del campo en el secreto que contiene la contraseña del usuario de la base de datos de Ops
mongodb-ops-managerManager. Ops Manager utiliza esta contraseña para autenticarse en la base de datos de la aplicación.El valor por defecto es
password.
spec.applicationDatabase.security.certsSecretPrefixTipo: string
Texto para agregar como prefijo al secreto de Kubernetes que creó y que contiene la clave TLS y el certificado de su base de datos de aplicaciones.
Debes nombrar tu secreto
<prefix>-<metadata.name>-db-cert.Para aprender a configurar su instancia de Ops Manager para que se ejecute mediante HTTPS, consulte Implementar un recurso de Ops Manager.
spec.applicationDatabase.security.tls.caTipo: string
Nombre del ConfigMap de Kubernetes que contiene el archivo CA para la base de datos de la aplicación.
Importante
spec.applicationDatabase.security.tls.caes necesario si utiliza una CA personalizada para firmar los certificados TLS de su base de datos de aplicaciones.El operador de Kubernetes requiere que usted nombre el certificado de la base de datos de la aplicación
ca-pemen ConfigMap.La CA especificada en esta sección también se utiliza para configurar certificados TLS personalizados para el3 almacenamiento S
spec.backup.s3OpLogStores.customCertificatecuando ospec.backup.s3Stores.customCertificateestán configuradostrueen.Esta CA firma los certificados que:
Los miembros del conjunto de réplicas de la base de datos de aplicaciones se utilizan para comunicarse entre sí y
Ops Manager utiliza para comunicarse con el set de réplicas de la base de datos de la aplicación.
Advertencia
Debe concatenar su archivo CA personalizado y toda la cadena de certificados TLS de
downloads.mongodb.compara evitar que Ops Manager deje de funcionar si se reinicia la base de datos de la aplicación.
spec.applicationDatabase.security.tls.enabledImportante
spec.security.applicationDatabase.tls.enabledEstá obsoleto y se eliminará en una próxima versión. Para habilitar TLS, proporcione un valor para laspec.security.applicationDatabase.certsSecretPrefixconfiguración.Cifra las comunicaciones mediante certificados TLS entre Ops Manager y la base de datos de la aplicación.
Configuraciones de Prometheus
Las siguientes configuraciones se aplican cuando utiliza Prometheus con su base de datos de aplicación:
spec.applicationDatabase.prometheusTipo: arreglo
Opcional. Lista que contiene los parámetros para exponer métricas a Prometheus.
spec.applicationDatabase.prometheus.metricsPathTipo: string
Por defecto:
"/metrics"Opcional. String legible para el usuario que indica la ruta al endpoint de métricas. Si no especificas esta configuración, se aplica la por defecto.
spec.applicationDatabase.prometheus.passwordSecretRefTipo: objeto
Objeto condicional que contiene los detalles del secreto para la autenticación HTTP básica. Si desea utilizar Prometheus con la base de datos de su aplicación, debe especificar esta configuración.
spec.applicationDatabase.prometheus.passwordSecretRef.keyTipo: string
Por defecto:
"password"Opcional. Cadena legible que identifica la clave del secreto que almacena la contraseña para la autenticación HTTP básica. Si no se especifica esta configuración, se aplica la predeterminada.
spec.applicationDatabase.prometheus.passwordSecretRef.nameTipo: string
Condicional
Etiqueta legible que identifica el secreto que contiene la contraseña para la autenticación HTTP básica. Si desea usar Prometheus con la base de datos de su aplicación, debe especificar esta configuración.
spec.applicationDatabase.prometheus.portTipo: entero
Por defecto: 9216
Opcional. Número que identifica el puerto al que se vinculará el punto final de métricas. Si no se especifica esta configuración, se aplica el valor predeterminado.
spec.applicationDatabase.prometheus.tlseSecretKeyRefTipo: objeto
Opcional. Objeto que contiene los detalles del secreto para la autenticación TLS.
spec.applicationDatabase.prometheus.tlseSecretKeyRef.keyTipo: string
Por defecto:
"password"Opcional. Cadena legible que identifica la clave del secreto que almacena la contraseña para la autenticación TLS. Si no se especifica esta configuración, se aplica la predeterminada.
spec.applicationDatabase.prometheus.tlseSecretKeyRef.nameTipo: string
Condicional. Etiqueta legible que identifica el secreto que contiene la contraseña para la autenticación TLS. Si desea usar Prometheus con la base de datos de su aplicación y usar la autenticación TLS, debe especificar esta configuración.
Configuración de varios clústeres
Configuración requerida de Ops Manager
En esta sección se describen las configuraciones que debe utilizar para su implementación de Ops Manager de varios clústeres, además de las configuraciones de Ops Manager requeridas.
spec.clusterSpecList.membersTipo: entero
Condicional. El número de miembros de Ops Manager en el clúster de Ops Manager en una implementación de MongoDB con clústeres multi-Kubernetes. Al
spec.topologyestablecerMultiClusteren, debe especificar el valor de este parámetro. Omítalo en implementaciones de un solo clúster. Si establece este parámetro en cero, se eliminará este clúster miembro de Ops Manager de la lista de clústeres miembros en el clúster multi-Kubernetes de instancias de Ops Manager.
spec.topologyTipo: string
El tipo de implementación de Kubernetes para el recurso Ops Manager.
Los valores son
SingleClusteroMultiCluster. Si se omite, el valor predeterminado esSingleCluster.Si especifica
MultiCluster:Añadir el recurso
MongoDBMultiClustera la lista de recursos supervisados. Esto indica al operador de Kubernetes que debe trabajar en modo multiclúster de Kubernetes y realizar las acciones de configuración necesarias para gestionar recursos multi-Kubernetes.Especifique al menos un clúster miembro en el que desea implementar Ops Manager, utilizando y
spec.clusterSpecListspec.clusterSpecList.clusterNamespec.clusterSpecList.memberssus parámetros anidados y.Si
MultiClusterespecifica, el operador de Kubernetes ignorará cualquier valor que establezca para.spec.membersConsulte el ejemplo de la especificación del recurso.
Configuración opcional de Ops Manager
Los recursos de Ops Manager también pueden usar las siguientes configuraciones específicas para implementaciones de Ops Manager de varios clústeres:
spec.clusterSpecListTipo: colección
Condicional. Detalles de los clústeres miembros de Kubernetes seleccionados en un clúster multi-Kubernetes donde se pretende implementar instancias de Ops Manager o Backup Daemon.Consulte también el ejemplo de la especificación de recursos.
Al establecer
spec.topologyen,MultiClusterdebe especificar el valor de. Todosspec.clusterSpecList.membersspec.clusterSpecListlos demás parámetros bajo son opcionales.Cuando se
spec.topologyestableceSingleClusteren, el operador de Kubernetes ignora todos los parámetrosspec.clusterSpecListbajo.
spec.clusterSpecList.clusterNameTipo: string
Opcional. Nombre del miembro del clúster de Kubernetes en una implementación de MongoDB con varios clústeres de Kubernetes donde el operador de Kubernetes de MongoDB Enterprise programa el StatefulSet para Ops Manager o el Backup Daemon.
spec.clusterSpecList.clusterDomainTipo: string
Opcional. Se
spec.clusterDomainanula para el clúster miembro de Ops Manager específico. Si se omite este valor, se toma como predeterminado el valor establecidospec.clusterDomainen. Kubernetes asigna un FQDN a cada pod. El operador de Kubernetes calcula el FQDN de cada pod utilizando elclusterDomainvalor proporcionado. Kubernetes no proporciona una API para consultar estos nombres de host.
spec.clusterSpecList.configurationTipo: colección
Opcional. Propiedades de configuración de Ops Manager que anulan las propiedades configuradas en para el
spec.configurationclúster específico. Consulte la sección "Ops Manager Configuration Settings" para ver los nombres y descripciones de las propiedades. Cada propiedad toma un valor destringtipo. Por ejemplo, configurar estas propiedades le permite cambiar las variables de entorno que debe pasar a Ops Manager y al Daemon de Backup en ese clúster miembro en particular.Si omite la especificación de valores, se tomarán como predeterminados los valores establecidos
spec.configurationen.
spec.clusterSpecList.jvmParametersTipo: arreglo de cadenas
Opcional. Parámetros de JVM pasados a las instancias de OpsManager y Backup Daemon para este clúster miembro.
Si especifica este parámetro, sus valores anulan los especificados en. Para ver ejemplos
spec.jvmParametersde valores, consulte el ejemplo de la especificación del recurso.Si omite este parámetro,
spec.jvmParametersse utilizan los valores de para las instancias de Ops Manager y Backup Daemon en este clúster miembro.
spec.clusterSpecList.externalConnectivityTipo: colección
Opcional. Objeto de configuración que habilita la conectividad externa con Ops Manager para el clúster específico. Esto anula la configuración para
spec.externalConnectivityel clúster específico.Especifique los valores de este parámetro para cambiar la forma en que la aplicación Ops Manager se expone externamente en diferentes clústeres. Por ejemplo, si implementa Ops Manager en nodos de Kubernetes de diferentes proveedores de nube, es posible que deba especificar valores específicos del proveedor para este parámetro.
Si establece este parámetro:
El operador de Kubernetes no utiliza valores para este clúster miembro de Ops
spec.externalConnectivityManager.El operador de Kubernetes crea un servicio de Kubernetes,
<om-name>-svc-extllamado, que permite que el tráfico que se origina fuera del clúster de Kubernetes llegue a la aplicación Ops Manager en este clúster miembro.
Si omite este parámetro, el operador de Kubernetes utiliza valores de para este clúster
spec.externalConnectivitymiembro.
spec.clusterSpecList.statefulSet.specTipo: colección
Opcional. Especificación del StatefulSet que el operador de Kubernetes de MongoDB Enterprise crea para un clúster miembro específico en la implementación de Ops Manager con varios clústeres de Kubernetes. Este parámetro
spec.statefulSet.specanula. Si se omite, el operador de Kubernetes utiliza los valoresspec.statefulSet.specde. Por ejemplo, puede usar este parámetro para especificar diferentes valores de almacenamiento para cada uno de sus clústeres de Ops Manager en la implementación de MongoDB con varios clústeres de Kubernetes.Para revisar qué campos puedes agregar
spec.clusterSpecList.statefulSet.speca, consulta las aplicaciones StatefulSetSpec v1 en la documentación de Kubernetes.
spec.clusterSpecList[*].backupOpcional. Configuraciones de copia de seguridad que anulan los valores especificados en
spec.backuppara ese clúster miembro en particular.Puedes establecer estos valores solo si está
spec.backup.enabledestablecidotrueen.Si omite configurar algún valor para este parámetro, se establecerán de forma predeterminada los valores especificados en la configuración en
spec.backup.Esta anulación no admite todas las configuraciones de copia de seguridad. No se pueden anular las siguientes configuraciones de copia de seguridad, ya que se aplican globalmente a todos los clústeres miembros si se especifican en
spec.backup:externalServiceEnabledheadDBopLogStoresblockStoress3StoresfileSystemStoresqueryableBackupSecretRefencryption
spec.clusterSpecList[*].backup.membersTipo: entero
Opcional.
spec.backup.membersAnulación de. Número de instancias de Backup Daemon que se implementarán en este clúster. Si omite este valor o0proporciona, el operador de Kubernetes no implementará instancias de Backup Daemon en un clúster miembro específico.
spec.clusterSpecList[*].backup.assignmentLabelsTipo: arreglo de cadenas
Opcional. Anulación para
spec.backup.assignmentLabels. Si se especifica, el operador de Kubernetes utiliza los valores especificados en esta anulación para todas las instancias del Daemon de copia de seguridad de un clúster miembro específico. Si omite los valores de este parámetro, los valores predeterminados son los especificados enspec.backup.assignmentLabelspara todas las instancias del Daemon de copia de seguridad de un clúster miembro.
spec.clusterSpecList[*].backup.jvmParametersTipo: arreglo de cadenas
Opcional.
spec.backup.jvmParametersAnulación para. Permite personalizar el valor de JVM para las instancias del Daemon de copia de seguridad en un clúster miembro específico.
spec.clusterSpecList[*].backup.statefulSetTipo: string
Opcional. Anulación para
spec.backup.statefulSet.spec. Permite personalizar los valores de un demonio de copia de seguridad en un clúster miembro específico. Para ver qué campos se pueden agregar aspec.clusterSpecList[*].backup.statefulSet, consulte las aplicaciones StatefulSetSpec v1 en la documentación de Kubernetes.
Configuración requerida de la base de datos de la aplicación
Esta sección describe las configuraciones específicas de su implementación de Ops Manager de múltiples clústeres que debe usar para su base de datos de aplicaciones.
spec.applicationDatabase.clusterSpecListTipo: colección
Detalles de clústeres miembros de Kubernetes seleccionados en una implementación de MongoDB de múltiples clústeres de Kubernetes que sirven como nodos que alojan la base de datos de la aplicación.
spec.applicationDatabase.clusterSpecList.clusterNameTipo: string
Nombre del clúster nodo de Kubernetes en una implementación de MongoDB de clúster múltiple donde el Enterprise Kubernetes Operator de MongoDB programa el StatefulSet para la base de datos de la aplicación.
Importante
No se puede convertir una única instancia de Ops Manager en un clúster de múltiples Kubernetes en una instancia de implementación de MongoDB modificando
topologylasclusterSpecListconfiguraciones y en el CRD.
spec.applicationDatabase.clusterSpecList.membersTipo: número
Número de nodos statefulSet en el clúster miembro dado. El clúster miembro es uno de los clústeres que aloja la base de datos de la aplicación en una implementación de MongoDB con varios clústeres de Kubernetes.
spec.applicationDatabase.topologyTipo: string
El tipo de implementación de Kubernetes para la base de datos de la aplicación.
Los valores son
SingleClusteroMultiCluster. Si se omite, el valor predeterminado esSingleCluster.Si especifica
MultiCluster, debe especificar al menos un miembroclúster en el que deseas implementar la base de datos de la aplicación utilizando los parámetros
clusterSpecList,clusterName,members.Si
MultiClusterespecifica, el operador de Kubernetes ignora los valores que configure para elspec.applicationDatabase.memberscampo.
Para obtener más información, consulte el ejemplo de la especificación de recursos de múltiples clústeres.
Configuración opcional de la base de datos de la aplicación
Esta sección describe configuraciones específicas para su implementación de Ops Manager de múltiples clústeres que puede usar para su base de datos de aplicaciones.
spec.applicationDatabase.clusterSpecList.memberConfigTipo: arreglo de cadenas
Especificación para cada miembro del conjunto de réplicas de la base de datos de aplicaciones en su implementación de Ops Manager de varios clústeres.
Importante
Si
spec.topologySingleClusterestablece en, utilicespec.applicationDatabase.memberConfigspec.applicationDatabase.clusterSpecList.memberConfigenlugar de.El número de elementos en la
memberConfiglista debe ser igualspec.applicationDatabase.clusterSpecList.membersa.El orden de los elementos en la lista
memberConfigdebe reflejar el orden de los miembros en el conjunto de réplicas. Por ejemplo, el primer elemento de la matriz afecta al pod en el índice0, el segundo elemento afecta al índice1, y así sucesivamente.Ejemplo
Considere la siguiente especificación de ejemplo para un conjunto de réplicas de tres miembros para la base de datos de la aplicación:
spec: replicas: 3 version: 4.4.1 backup: enabled: true storage: resources: requests: storage: 10Gi storageClassName: standard applicationDatabase: clusterSpecList: - name: appdb members: 3 memberConfig: - votes: 1 priority: "0.5" tags: tag1: "value1" environment: "prod" - votes: 1 priority: "1.5" tags: tag2: "value2" environment: "prod" - votes: 0 priority: "0" tags: tag2: "value2" environment: "prod"
spec.applicationDatabase.clusterSpecList.memberConfig.priorityTipo: string
Número que indica la probabilidad relativa de que un miembro del conjunto de réplicas de la base de datos de aplicaciones se convierta en el principal.
Para aumentar la probabilidad relativa de que un miembro del conjunto de réplicas se convierta en el principal, especifique un valor
prioritymás alto.Para disminuir la probabilidad relativa de que un miembro del conjunto de réplicas se convierta en el principal, especifique un valor
prioritymás bajo.
Por ejemplo, un miembro con un
memberConfig.priorityde1.5tiene más probabilidades de convertirse en el principal que un miembro con unmemberConfig.priorityde0.5.Un miembro con un
memberConfig.priorityde0no puede ser el miembro principal. Para obtener más información, consulte Prioridad de miembros.
spec.applicationDatabase.clusterSpecList.memberConfig.tagsTipo: mapa
Mapa de etiquetas de conjuntos de réplicas para dirigir operaciones de lectura y escritura a miembros específicos de su conjunto de réplicas de la base de datos de aplicaciones.