Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.

Configurar TLS para una migración a Kubernetes

Cuando migra un set de réplicas habilitado para TLS de máquinas virtuales a Kubernetes, un set de réplicas es un dominio de confianza. Emita los certificados de nodo de Kubernetes de la misma autoridad de certificación (CA) que firmó los certificados de la máquina virtual. Este es el único requisito de TLS específico de la migración. La documentación general de TLS para el operador de Kubernetes cubre todo lo demás sobre la configuración de TLS. Una falta de coincidencia de CA hace que la ejecución de prueba falle, por diseño. Para aprender cómo la ejecución de prueba detecta ese error, consulte Validar la preparación de la migración con una ejecución de prueba.

Importante

Los campos de esta página existen únicamente para la migración. No los configure en una implementación nueva de operador de Kubernetes a menos que la descripción del campo indique lo contrario.

Para aprender a emitir certificados, estructurar Secrets y ConfigMaps y configurar los ajustes generales de TLS en el recurso personalizado MongoDB, consulte:

Cuando siga esa documentación para una migración, emita los certificados de nodo de Kubernetes de la misma CA que firmó los certificados de máquina virtual, no de una nueva CA. La CA ConfigMap denominada <resourceName>-ca debe contener una clave ca-pem rellenada desde esa misma CA.

Necesita lo siguiente:

  • El certificado de CA existente y el material clave de la implementación de la máquina virtual.

  • cert-manager o una herramienta equivalente para emitir los certificados de nodo de Kubernetes de la misma CA.

  • El MongoDB recurso personalizado generado de Migrar un set de réplicas a Kubernetes.

1

Siga Configurar una integración de cert-manager o Generar509 certificados de kubernetes.io/tls Secret cliente X.509 para crear el <certsSecretPrefix>-<resourceName>-cert denominado, emitiendo el certificado desde la misma CA que firmó los certificados de la máquina virtual.

Cree la CA ConfigMap denominada <resourceName>-ca con una clave ca-pem rellenada desde esa misma CA.

Si utiliza la autenticación de agente X.509, cree también el <certsSecretPrefix>-<resourceName>-agent-certs Secret y configure spec.security.authentication.agents.clientCertificateSecretRef para que haga referencia a él. Este requisito se aplica únicamente a la autenticación de agente, no a la autenticación de clúster interna (spec.security.authentication.internalCluster).

2

Estos campos existen únicamente para que la vista del operador de Kubernetes de las rutas de archivo coincida con la forma en que la implementación de la máquina virtual ya organiza sus certificados y archivos de claves. Configure únicamente los que se apliquen a su implementación de origen:

  • spec.security.tls.caFilePath: la ruta absoluta a la que se proyecta la CA dentro del Pod. Se establece por defecto en /mongodb-automation/tls/ca/ca-pem. La ruta debe contener al menos dos segmentos de ruta. Este campo no es compatible con la base de datos de la aplicación. Si su podTemplate monta otro volumen sobre esta ruta, ese montaje oculta la CA proyectada y el MongoDB Ops Manager agente no puede leerla.

  • spec.security.authentication.agents.autoPEMKeyFilePath: la ruta absoluta del archivo PEM combinado del agente dentro de los Pods de la base de datos. Este campo configura solo la autenticación de agente. Al establecer este campo, se establece el valor tls.autoPEMKeyFilePath de Ops Manager y se monta el Secret al que hace referencia clientCertificateSecretRef en esa ruta. Por defecto, utiliza una ruta de montaje del certificado del agente derivada de hash, y para configurarlo, es necesario que spec.security.authentication.agents.clientCertificateSecretRef ya esté configurado. Establezca este campo solo cuando la implementación de la máquina virtual utilice una ruta PEM de agente no por defecto.

  • spec.downloadBase: el directorio donde el Ops Manager agente binario se descarga. Se establece en /var/lib/mongodb-mms-automation por defecto. El operador de Kubernetes deriva la ruta del archivo de claves de este valor como <downloadBase>/keyfile.

3

Si la implementación de la máquina virtual nunca configuró TLS, establezca net.tls.mode en disabled en MongoDB Ops Manager o Cloud Manager en la implementación de la máquina virtual existente antes de migrar. No establezca este campo en el recurso personalizado MongoDB.

Si deja sin establecer el modo TLS de la implementación de origen, el operador de Kubernetes intenta un cambio de implementación que no coincide con la configuración de automatización de origen, porque su vista predeterminada de TLS difiere de una implementación que nunca configuró TLS. Al establecer el campo en disabled en la implementación de origen, la vista del operador de Kubernetes coincide con la implementación de la máquina virtual y se evita ese cambio espurio.

4

Aplicar el recurso con la anotación de ejecutar en seco aún presente y comprobar la condición NetworkConnectivityVerified. Para aprender a leer el resultado y qué hacer si falla, consulte Validar la preparación para la migración con una prueba en seco.

Un clúster particionado necesita un certificado por componente, siguiendo el patrón <resourceName>-config-* para el servidor de configuración, <resourceName>-<shardIndex>-* para cada partición y <resourceName>-mongos-* para los mongos enrutadores.

Nota

Confirme los nombres exactos de Secret por componente con el recurso generado antes de conciliar. Para saber cómo una migración de clúster particionado difiere de una migración de set de réplicas, consulte Migrar un clúster particionado a Kubernetes.