MongoDB Atlas proporciona herramientas que permiten la gestión programática de la implementación, escalado y mantenimiento de sus clústeres de Atlas.
Atlas proporciona la flexibilidad de implementar Infrastructure as Code (IaC) utilizando tanto la programación imperativa como la declarativa. Por ejemplo, los desarrolladores pueden escribir scripts imperativos que llamen a funciones de nuestro Atlas Go Cliente SDK o administre recursos de Atlas mediante herramientas IaC declarativas como Atlas Kubernetes Operator, Terraform, AWS CloudFormation o AWS CDK.
Las herramientas IaC de Atlas son especialmente útiles a escala empresarial. Recomendamos a nuestros clientes de empresas que usen herramientas IaC para los siguientes beneficios:
Coherencia: IaC Las herramientas permiten repetibilidad en todos los entornos, de modo que las implementaciones generen resultados coherentes.
Escalabilidad: Las herramientas de IaC permiten escalamiento automático para ajustar automáticamente el nivel o la capacidad de almacenamiento de los clústeres en respuesta al uso en tiempo real.
Reducción de errores humanos: las herramientasIaC automatizan la sobrecarga operativa, reduciendo las intervenciones manuales que producen errores humanos comunes.
Desarrollo más rápido: las herramientas IaC agilizan las operaciones para promover un desarrollo más eficiente.
Gestión de cambios mejorada: las herramientas de IaC admiten revisiones y estandarización de la infraestructura, lo que permite mejores prácticas de gestión de cambios y cumplimiento.
Funcionalidades para Atlas Automation
Puedes automatizar la configuración, el aprovisionamiento y la gestión de los componentes de Atlas, como usuarios y roles de base de datos, clústeres de Atlas, proyectos y organizaciones. También puedes automatizar varias tareas de configuración y gestión de los recursos del clúster, incluyendo la habilitación del escalado automático de cómputo y almacenamiento, la creación y actualización de clústeres multi-nube, la supervisión del desempeño y el estado del clúster, la automatización de copias de seguridad y restauraciones, la definición de políticas de copia de seguridad, y más.
Puedes alinear la elección de herramientas con tu flujo de trabajo preferido para asegurar una integración sin interrupciones de MongoDB Atlas en tus procesos existentes. Las siguientes herramientas de MongoDB Atlas permiten implementar y gestionar Atlas fácilmente a gran escala con procesos repetibles, precisos y escalables.
API de Administración de Atlas
La API de administración de Atlas proporciona una interfaz RESTful que te permite usar tu cliente preferido, como cURL o Postman, para interactuar directamente con los endpoints de API que corresponden a los recursos de Atlas. También se pueden llamar directamente en tu lenguaje de programación favorito o en un script bash.
Para aprender más, Comienza con la API de administración de Atlas.
Atlas CLI
Le permite crear, administrar y automatizar de forma manual o programática tareas relacionadas con los recursos de Atlas desde una herramienta de línea de comandos unificada.
Para aprender más, consulta los siguientes recursos:
También puedes utilizar los ejemplos de Atlas CLI en el Atlas Architecture Center, como los ejemplos Org, Proyecto y clúster, para comenzar.
Proveedor de HashiCorp Terraform MongoDB Atlas
Aprovisiona recursos de Atlas en diferentes proveedores denube (AWS, Azure, GCP) en el flujo de trabajo que prefieras. Te permite integrar Atlas en tus flujos de trabajo de entrega continua con el plugin oficial.
Alternativamente, puede utilizar CDKTF para implementar Atlas en lenguajes preferidos como JavaScript, TypeScript, Python, Java, C# y Go.
Para obtener más información, consulta Primeros pasos con Terraform y el proveedor MongoDB Atlas y la docs de Terraform del proveedor MongoDB Atlas. También puede usar los ejemplos de Terraform en el Atlas Architecture Center, como los ejemplos de Organización, Proyecto y Clúster, para empezar.
Tip
Para ejemplos de Terraform que aplican nuestras recomendaciones en todos los pilares, consulta uno de los siguientes ejemplos en GitHub:
Cliente SDK de Atlas Go
El cliente Atlas Go SDK simplifica la interacción con la API de Administración de Atlas al proporcionar funciones predefinidas y una cobertura completa de los puntos finales de la API. El SDK proporciona herramientas, bibliotecas y documentación específicas de la plataforma y del lenguaje GoLang para facilitar la creación de aplicaciones de forma rápida y sencilla.
Para obtener más información, consulta Atlas Go SDK.
Consulta todos los ejemplos de Atlas Architecture Center Go SDK en un único proyecto en el repositorio de Atlas Architecture Go SDK en GitHub.
Recursos de CloudFormation
Los recursos para administrar Atlas incluyen:
Plantillas JSON y YAML te permiten aprovechar múltiples tipos diferentes de recursos de Atlas en el AWS CloudFormation Public Registry.
AWS Cloud Development Kit (CDK) define la infraestructura usando lenguajes de programación familiares como JavaScript, TypeScript, Python, Java, C# y Go.
Para obtener más información, consulta Implementa MongoDB Atlas con AWS CloudFormation..
Operador de Atlas Kubernetes
Permite implementar y gestionar recursos de Atlas utilizando tus herramientas existentes de Kubernetes. El operador permite la gestión de Atlas a través de recursos personalizados aplicados en Kubernetes, que el Operador utiliza para configurar Atlas.
Para obtener más información, consulta Inicio rápido.
Recomendaciones para la automatización de Atlas
Las siguientes recomendaciones se aplican a todos los paradigmas de implementación.
Si ya tienes una herramienta existente integrada en tu flujo de trabajo de implementación que utilizas actualmente, te recomendamos que utilices esa herramienta para la automatización. Por ejemplo, si tus desarrolladores y el equipo de operaciones ya están implementando en Kubernetes, aplica las configuraciones de Atlas a través de las mismas herramientas y pipelines y utiliza el Atlas Kubernetes Operator para automatizar la actualización de Atlas.
Si aún no tiene una herramienta integrada en su flujo de trabajo de desarrollo, le recomendamos una herramienta IaC porque proporciona opciones más sólidas para el aprovisionamiento de infraestructura y la gestión del estado.
También puede usar una combinación de varias herramientas. Por ejemplo, utilice herramientas de IaC para el aprovisionamiento y la gestión de estados, y aproveche la API de administración de Atlas, el SDK de Atlas Go y la CLI de Atlas para tareas administrativas rápidas y efímeras. La CLI de Atlas es ideal para el desarrollo local, así como para la integración en un conjunto de pruebas como parte de su flujo de trabajo de CI/CD para el desarrollo de aplicaciones, ya que mejora los tiempos de respuesta y reduce los costos.