Docs Menu
Docs Home
/ /

Arquitectura, capacidades y limitaciones

Existen las siguientes limitaciones para las implementaciones de MongoDB en clústeres de Kubernetes múltiples:

  • Utilice versiones de Ops Manager posteriores a 5.0.7.

  • Use solo secretos de Kubernetes para su herramienta de almacenamiento de secretos. La herramienta de almacenamiento de secretos HashiCorp Vault no es compatible.

  • Para las implementaciones en las que la misma instancia de Kubernetes Operator no administra los recursos personalizados MongoDBOpsManager y MongoDB, debe configurar manualmente Configuración del cliente de cifrado de copias de seguridad deKMIP en Ops Manager. Para obtener más información, consulte Configurar manualmente el cifrado de copias de seguridad de KMIP.

  • No agregue un ServiceMonitor a su MongoDBMultiCluster Recursos. El operador de Kubernetes no admite la integración con Prometheus.

  • Puede crear una nueva implementación de MongoDB con varios clústeres de Kubernetes y contactar con el soporte de MongoDB para que le ayuden a migrar datos de su implementación de Kubernetes existente a una implementación de MongoDB con varios clústeres de Kubernetes. No puede extender una implementación de un solo clúster de Kubernetes existente a nuevos clústeres de Kubernetes.

Esta sección describe las capacidades de implementación de MongoDB en varios clústeres de Kubernetes que puedes configurar utilizando los mismos procedimientos que para clústeres individuales de recursos de MongoDB implementados con el Operador de Kubernetes. Otras capacidades de implementación de MongoDB en varios clústeres de Kubernetes tienen su propia documentación en esta guía.

Para conectarse como usuario a la base de datos de la implementación de MongoDB en varios clústeres de Kubernetes, puede usar la cadena connectionString.standardSrv de conexión: lista de semillas DNS. Esta cadena se incluye en el secreto que el operador de Kubernetes crea para su implementación de MongoDB en varios clústeres de Kubernetes. Para conectarse a la implementación de MongoDB en varios clústeres de Kubernetes, siga el mismo procedimiento que para los clústeres individuales implementados con el operador de Kubernetes. Consulte "Conectarse a un recurso de base de datos de MongoDB desde Kubernetes" y seleccione la pestaña. Using the Kubernetes Secret.

Utilice estos métodos para gestionar la seguridad de los usuarios de la base de datos:

Estos procedimientos son los mismos que los procedimientos para clústeres individuales implementados con el operador de Kubernetes, con las siguientes excepciones:

Si implementa una instancia de Ops Manager en un solo clúster de Kubernetes con el operador de Kubernetes, el clúster que aloja el operador también podría alojar Ops Manager. En este caso, puede configurar copias de seguridad consultables para los recursos de Ops Manager. Las copias de seguridad consultables no se admiten en implementaciones de recursos de Ops Manager en varios clústeres de Kubernetes.

Puede crear implementaciones de MongoDB en varios clústeres de Kubernetes con o sin una malla de servicios. Para obtener más información, consulte "Planificar la conectividad externa: ¿Debería usar una malla de servicios?".

En los siguientes diagramas, el operador de Kubernetes de MongoDB Enterprise realiza estas acciones:

  • Monitorea la creación de la especificación del recurso MongoDBMultiCluster en el clúster del operador.

  • Utiliza el archivo kubeconfig montado para comunicarse con los clústeres miembros.

  • Crea los recursos necesarios, como ConfigMaps, Secrets, Services y objetos StatefulSet de Kubernetes en cada clúster miembro correspondiente a la cantidad de miembros del conjunto de réplicas en el clúster MongoDB.

  • Identifica el clúster para implementar cada conjunto de réplicas de MongoDB utilizando la especificación de recurso MongoDBMultiCluster correspondiente e implementa los conjuntos de réplicas de MongoDB.

  • Relojes para los eventos CentralCluster y MemberCluster.

  • Reconcilia los recursos que creó para confirmar que la implementación de MongoDB del clúster multi-Kubernetes se encuentra en el estado deseado.

Una implementación de MongoDB en un clúster de Kubernetes múltiple que utiliza el operador de Kubernetes de MongoDB Enterprise consta de un clúster de operador y uno o más clústeres miembros en Kubernetes:

  • El clúster de operadores tiene la siguiente función:

    • Aloja el operador Kubernetes de MongoDB Enterprise

    • Actúa como plano de control para la implementación de MongoDB en múltiples clústeres Kubernetes

    • Aloja la especificación de recursos MongoDBMultiCluster para el set de réplicas de MongoDB.

    • Hosts Ops Manager, si implementa Ops Manager con el operador de Kubernetes

    • También puede alojar miembros del conjunto de réplicas de MongoDB

    Importante

    El clúster de operadores también se conoce como clúster de operadores. Las referencias al clúster de operadores podrían cambiar de nombre en futuras versiones.

  • Los nodos clústeres alojan los conjuntos de réplicas de MongoDB.

Tenga en cuenta que si el clúster del operador (también conocido como clúster del operador) falla, no puede utilizar el Operador de Kubernetes para cambiar su implementación hasta que restablezca el acceso a este clúster o hasta que vuelva a implementar el Operador de Kubernetes en otro clúster de Kubernetes disponible. Para obtener más información, consulta Recuperación ante desastres.

El siguiente diagrama muestra la arquitectura general de una implementación de MongoDB con múltiples clústeres de Kubernetes en diferentes regiones y zonas de disponibilidad. Esta implementación utiliza una malla de servicios, como Istio. La malla de servicios:

  • Administra el descubrimiento de nodos MongoDB implementados en diferentes clústeres miembros de Kubernetes.

  • Maneja la comunicación entre los miembros del conjunto de réplicas.

Puede alojar su aplicación en cualquiera de los clústeres miembros dentro de la malla de servicio, como:

  • En clústeres de Kubernetes fuera de los que implementa con el operador de Kubernetes, o

  • En los clústeres miembros de una implementación de MongoDB de varios clústeres de Kubernetes.

Diagrama que muestra la arquitectura de alto nivel de una implementación de Kubernetes multi-clúster a través de regiones y zonas de disponibilidad utilizando el MongoDB Enterprise Kubernetes Operator, con un service mesh
haga clic para ampliar

El siguiente diagrama muestra la arquitectura general de una implementación de MongoDB con varios clústeres de Kubernetes en diferentes regiones y zonas de disponibilidad. Esta implementación no depende de una malla de servicios para la conectividad entre los clústeres de Kubernetes que alojan pods con instancias de MongoDB.

Para manejar la comunicación externa entre los miembros del conjunto de réplicas de MongoDB alojados en pods en distintos clústeres de Kubernetes, utilice dominios externos y zonas DNS.

Un diagrama que muestra la arquitectura de alto nivel de una implementación multinube de Kubernetes a través de regiones y zonas de disponibilidad utilizando MongoDB Enterprise Kubernetes Operator, y sin un malla de servicio.
haga clic para ampliar

Puede alojar su aplicación en cualquiera de los clústeres miembros.

Volver

Overview