Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Construye una AWS landing zone que incluya MongoDB Atlas
Igor Alekseev, Amazon Web Services
Resumen
Este patrón describe cómo construir una zona de AWS landing que esté integrada con un clúster de MongoDB Atlas. La infraestructura se implementa automáticamente mediante un script de Terraform.
Un AWS entorno multicuenta bien estructurado, denominado landing zone, ofrece escalabilidad y seguridad, especialmente para las empresas. Sirve de base para el despliegue rápido de cargas de trabajo y aplicaciones, y ayuda a garantizar la confianza en la seguridad y la infraestructura. La creación de una landing zone requiere una consideración cuidadosa de los factores técnicos y comerciales, incluida la estructura de la cuenta, las redes, la seguridad y la administración del acceso. Estas consideraciones deben estar alineadas con los objetivos empresariales y de crecimiento futuro de su organización.
Los casos de uso de este patrón incluyen los siguientes.
Plataformas SaaS y PaaS empresariales: las aplicaciones de software como servicio (SaaS) multiusuario y las plataformas de plataforma como servicio (PaaS) que se ejecutan AWS pueden utilizar esta configuración para ayudar a proporcionar un acceso seguro y privado a MongoDB Atlas sin exponer los datos a través de la Internet pública.
Sectores altamente regulados: las cargas de trabajo bancarias, de servicios financieros, sanitarias y gubernamentales que requieren el estricto cumplimiento de normas como la Ley de Portabilidad y Responsabilidad de los Seguros Médicos (HIPAA), el Estándar de Seguridad de Datos de la Industria de Tarjetas de Pago (PCI DSS), los Controles de Sistemas y Organizaciones (2) y el Reglamento General de Protección de Datos (GDPRSOC2) se benefician de:
La conectividad privada y cifrada mediante AWS PrivateLink
Alta disponibilidad de conjuntos de réplicas de MongoDB en zonas de disponibilidad múltiples
AI/ML Cargas de trabajo seguras: las canalizaciones de entrenamiento o inferencia en Amazon Bedrock, SageMaker Amazon AI o modelos de IA personalizados pueden recuperar y almacenar datos de forma segura en MongoDB Atlas over. PrivateLink
Recuperación ante desastres y continuidad empresarial: el diseño Multi-AZ garantiza que ninguna falla en una sola zona de disponibilidad interrumpa las cargas de trabajo. Una réplica de Atlas distribuida en todas las zonas de disponibilidad garantiza la conmutación por error automática. Esto es fundamental para los servicios permanentes, como las aplicaciones de tecnología financiera (fintech), la banca digital o el monitoreo de la atención médica.
Requisitos previos y limitaciones
Requisitos previos
El propietario de la organización tiene acceso a MongoDB Atlas para que pueda crear claves de API de Atlas. Para obtener información sobre este requisito, consulte Administrar el acceso a la organización
en la documentación de MongoDB. Un activo. Cuenta de AWS
Terraform
, instalado y configurado. Un clúster de MongoDB Atlas, creado con MongoDB versión 6.0 o posterior.
Familiaridad con MongoDB y MongoDB Atlas. Para obtener más información, consulte la documentación de MongoDB Atlas
.
Limitaciones
Algunas Servicios de AWS no están disponibles en todos. Regiones de AWS Para ver la disponibilidad por región, consulta Servicios de AWS por región
. Para ver puntos de enlace específicos, consulta Puntos de enlace y cuotas del servicio y elige el enlace para el servicio.
Arquitectura
El siguiente diagrama de arquitectura de referencia ilustra la configuración de despliegue de una AWS landing zone que está integrada con un punto final privado de MongoDB Atlas. Esta arquitectura de referencia demuestra cómo establecer una zona de AWS aterrizaje segura, escalable y de alta disponibilidad integrada con MongoDB Atlas. Al combinar las AWS mejores prácticas, como el despliegue en zonas de disponibilidad múltiples, los controles de seguridad con privilegios mínimos y la conectividad privada, este diseño permite a las organizaciones proporcionar un entorno sólido para las aplicaciones modernas.

Esta arquitectura se compone de lo siguiente:
VPC
Una única nube privada virtual (VPC) abarca tres zonas de disponibilidad.
La VPC se subdivide en subredes alineadas con cada zona de disponibilidad. Estas subredes distribuyen las cargas de trabajo para lograr una alta disponibilidad.
Acceso a Internet
Una puerta de enlace a Internet proporciona conectividad a Internet saliente para los recursos que la necesitan, como los hosts de aplicaciones o bastiones.
Las subredes públicas pueden albergar pasarelas NAT, que permiten que las cargas de trabajo de las subredes privadas descarguen actualizaciones, parches y otros paquetes necesarios sin exponerlos directamente a la Internet pública.
Subredes privadas y tablas de enrutamiento
Los componentes de la aplicación, los microservicios u otros recursos confidenciales suelen residir en subredes privadas.
Las tablas de rutas dedicadas controlan los flujos de tráfico. Las rutas dirigen el tráfico saliente desde las subredes privadas a las puertas de enlace NAT para un acceso seguro a Internet solo desde la salida.
Las solicitudes entrantes de Internet fluyen a través de balanceadores de carga elásticos o hosts bastión (si se utilizan) en subredes públicas y, a continuación, se enrutan adecuadamente a los recursos de subredes privadas.
Conectividad con MongoDB Atlas a través de PrivateLink
La arquitectura utiliza PrivateLink (a través de un punto final de VPC) conectarse de forma segura a MongoDB Atlas sin exponer sus datos a la Internet pública.
Las solicitudes permanecen en la red troncal AWS . Los datos en tránsito se benefician del PrivateLink cifrado y nunca se enrutan a través de la Internet pública.
La VPC dedicada de MongoDB Atlas aloja sus nodos principal y secundario y proporciona un entorno seguro y aislado para su clúster de base de datos gestionado.
Multi-AZ deployment (Implementación Multi-AZ)
Los componentes críticos de la infraestructura (como las puertas de enlace NAT y las subredes de aplicaciones) se distribuyen en al menos tres zonas de disponibilidad. Si una zona de disponibilidad sufre una interrupción, esta arquitectura garantiza que las cargas de trabajo de las zonas de disponibilidad restantes permanezcan operativas.
MongoDB Atlas, de forma predeterminada, ofrece alta disponibilidad a través de conjuntos de réplicas y garantiza que la capa de base de datos siga siendo tolerante a errores. La infraestructura crítica se distribuye en al menos tres zonas de disponibilidad para garantizar su resiliencia.
Herramientas
Servicios de AWS
AWS Secrets Managerle ayuda a sustituir las credenciales codificadas en su código, incluidas las contraseñas, por una llamada a la API para recuperar el secreto mediante programación.
Otros productos y herramientas
MongoDB
Atlas es una base de datos como servicio (DBaaS) totalmente gestionada para implementar y gestionar bases de datos MongoDB en la nube. Terraform
es una herramienta de infraestructura como código (IaC) HashiCorp que le ayuda a crear y administrar recursos locales y en la nube. En este patrón, se utiliza Terraform para ejecutar un script que facilite el despliegue de los recursos necesarios en AWS MongoDB Atlas.
Repositorio de código
El código de este patrón está disponible en el repositorio Atlas AWS Landing Zone y en MongoDB
Epics
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Identifique a las partes interesadas principales. | Identifica a todas las partes interesadas clave y a los miembros del equipo que participan en tu proyecto de landing zone. Esto podría incluir funciones como las siguientes:
| Líder de migración |
Cree un plano estructural. | Cree un plano que describa la estructura deseada de su landing zone AWS y de la que dispone de MongoDB Atlas. | Líder de migración |
Cree un plan de arquitectura. | Trabaje con los arquitectos de sus aplicaciones para analizar los requisitos y diseñar una arquitectura resiliente y tolerante a los fallos. Este patrón proporciona una plantilla de arquitectura inicial para su referencia. Puede personalizar esta plantilla para que se adapte a las necesidades de seguridad e infraestructura de su organización. | Arquitecto de la nube |
Planifique la configuración y el despliegue. | Determine, con todas las partes interesadas, cómo se implementará la arquitectura, cómo se implementarán las medidas de seguridad y cualquier otro aspecto para garantizar que se alinee con los intereses de la organización y del equipo solicitante. | Líder de migración, DevOps ingeniero y administrador de bases de datos |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Clonar el repositorio. | Clona el código del GitHub repositorio
| Desarrollador de aplicaciones, DevOps ingeniero |
Obtenga el ID de su organización de Atlas. |
| Administrador de base de datos |
Genere claves de API a nivel de organización de Atlas. | Administrador de base de datos | |
Cree una entrada secreta. AWS Secrets Manager | Guarde las claves de la API de MongoDB Atlas generadas en el paso anterior como un secreto clave-valor en Secrets Manager. Para obtener instrucciones, consulte la documentación de Secretes Manager. | DevOps ingeniero |
Seleccione el nivel de clúster de Atlas. | Para seleccionar el nivel de clúster de Atlas correcto, siga las instrucciones de la documentación de MongoDB | Administrador de base de datos |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Modifique el script de Terraform. | En tu copia local del GitHub repositorio, actualiza el nombre secreto en el modules/mongodb-atlas/mainarchivo.tf | DevOps ingeniero |
Cree un identificador de clave de AWS acceso y una clave secreta. | Para crear tu identificador de clave de AWS acceso y tu clave secreta, sigue las instrucciones del artículo de AWS Re:post ¿Cómo se crea una clave de AWS acceso Se recomienda asignar políticas con los privilegios mínimos necesarios, pero en este caso, seleccione la Tras crear la clave de acceso, consulte las prácticas recomendadas de seguridad de IAM para obtener información sobre las prácticas recomendadas para gestionar las claves de acceso. | DevOps ingeniero |
Asigne direcciones IP elásticas. | Asigne al menos dos direcciones IP elásticas IDs. Para obtener instrucciones, consulte la documentación de Amazon Virtual Private Cloud (Amazon VPC). | DevOps ingeniero |
Cree un bucket de S3. | Cree un bucket de S3 para almacenar el estado de su implementación de Terraform siguiendo las instrucciones de la documentación de Amazon Simple Storage Service (Amazon S3). | DevOps ingeniero |
Actualice el depósito S3 para su almacenamiento. | Actualice la información del bucket de S3 en su versión local de environments/development/main.tf
En este ejemplo, puede configurar Terraform para que use el key Para obtener más información sobre los prefijos clave de Amazon S3, consulte Organizar objetos mediante prefijos en la documentación de Amazon S3. | DevOps ingeniero |
Establezca las variables de Terraform. | La zona de aterrizaje de muestra define los valores de las variables de entrada mediante los archivos de definición de variables de Terraform El archivo de variables se encuentra en environments/development/variables.tf. | DevOps ingeniero |
Configure las variables de entorno. | Si planea ejecutar el script de Terraform en su máquina local, configure las siguientes variables de entorno:
Para obtener más información sobre la configuración de las variables de entorno, consulte la documentación AWS Command Line Interface (AWS CLI). | DevOps ingeniero |
Compruebe las configuraciones de VPC. | Para seguir las prácticas recomendadas por AWS, configure los ajustes de la VPC y la subred CIDRs, las puertas de enlace NAT, las rutas y las tablas de rutas en el script Terraform para satisfacer las necesidades de su organización. Para obtener información específica, consulta el archivo Léame | DevOps ingeniero |
Etiquetar recursos de . | Puede etiquetar sus AWS recursos para supervisarlos cuando se desplieguen mediante el script Terraform. Para ver ejemplos, consulta el archivo Léame | DevOps ingeniero |
Utilice varios entornos. | El GitHub repositorio proporciona una carpeta de Para añadir un entorno, copie la | DevOps ingeniero |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Inicialice el directorio de trabajo de Terraform. | Para inicializar el directorio de trabajo y descargar los paquetes necesarios, ejecute el comando:
| DevOps ingeniero |
Cree un plan de ejecución. | Para crear un plan de ejecución y visualizar los cambios que Terraform realizará en su infraestructura, ejecute el comando:
| DevOps ingeniero |
Implemente los cambios. | Para implementar los cambios en la infraestructura tal y como se describe en el código, ejecute el comando:
| DevOps ingeniero |
Valide la implementación. | Valide los componentes que Terraform creó o modificó en su infraestructura. Para probar la configuración, aprovisione un recurso informático (por ejemplo, una EC2 instancia o AWS Lambda función de Amazon) en la VPC o adjunto a ella. | DevOps ingeniero, desarrollador de aplicaciones |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Elimine recursos. | Cuando haya terminado las pruebas, ejecute el siguiente comando para destruir los recursos que Terraform ha desplegado en su infraestructura:
| DevOps ingeniero |
Recursos relacionados
Detectar y evaluar
Consejos administrativos para la configuración de la landing zone (AWS Control Tower documentación)
Expectativas para la configuración de la zona de aterrizaje (AWS Control Tower documentación)
Mejores prácticas para las actualizaciones de las zonas de landing zone (AWS Control Tower documentación)
Configuración del Atlas y los entornos de MongoDB AWS
Obtener MongoDB Atlas ()
AWS Marketplace Memoria
(documentación de MongoDB Atlas) Ejemplo de dimensionamiento con conjuntos de datos de muestra de Atlas (documentación
de MongoDB Atlas) Ejemplo de dimensionamiento para aplicaciones móviles (documentación
de MongoDB Atlas) Tráfico de red
(documentación de MongoDB Atlas) El autoscalamiento de clústeres (documentación
de MongoDB Atlas) Plantilla de dimensionamiento de Atlas
(documentación de MongoDB Atlas) Configurar una conexión de interconexión de red (documentación
de MongoDB Atlas) Puntos finales privados en Atlas (documentación
de MongoDB Atlas) Cifrado a nivel de campo del lado del cliente
(documentación de la base de datos de MongoDB) Cifrado automático
(documentación de la base de datos de MongoDB) Selección de un nivel de clúster
(documentación de MongoDB Atlas)
Despliegue de la landing zone
Terraform on AWS (documento técnico sobre CI/CD para redes 5G) AWS
Atlas de MongoDB con Terraform
(documentación de MongoDB)