En un esfuerzo por mejorar la autonomía y eficiencia de los científicos de datos, Amazon SageMaker Projects ha integrado una nueva funcionalidad que simplifica la gestión de herramientas e infraestructura de Amazon Web Services (AWS) para el aprendizaje automático (ML). Este avance es vital para las organizaciones que buscan estandarizar recursos y optimizar procesos a través de plantillas preconfiguradas.
Sin embargo, para aquellos usuarios de AWS que gestionan su infraestructura como código (IaC) a través de Terraform, se presenta un desafío. Tradicionalmente, la habilitación de Amazon SageMaker Projects dependía de AWS CloudFormation, lo que podía generar conflictos con las políticas de TI de algunas empresas que restringen el uso de herramientas específicas del proveedor. En respuesta a esta limitación, ha surgido un método para integrar SageMaker Projects con Terraform Cloud, sustituyendo la dependencia de CloudFormation.
La solución se centra en vincular directamente los SageMaker Projects a productos del AWS Service Catalog. Utilizando el AWS Service Catalog Engine para Terraform Cloud, desarrollado y mantenido por Hashicorp, los proyectos se pueden configurar como productos de Terraform, eliminando el uso imprescindible de CloudFormation.
Para implementar esta integración, se requieren varios pasos y prerrequisitos. Los usuarios necesitan acceso a una cuenta habilitada de AWS, permisos para gestionar SageMaker Projects y un dominio habilitado de Amazon SageMaker Studio. Además, es fundamental contar con un terminal Unix con AWS CLI y Terraform instalados, y una cuenta activa de Terraform Cloud con los permisos necesarios.
El proceso de implementación incluye clonar un repositorio de GitHub, iniciar sesión en Terraform Cloud, obtener el Amazon Resource Name (ARN) del rol del usuario, y configurar parámetros en un archivo de variables. Una vez inicializado y aplicado el espacio de trabajo en Terraform Cloud, los usuarios pueden gestionar y crear proyectos de ML directamente desde la consola de SageMaker, mejorando la eficiencia y reduciendo la dependencia de herramientas adicionales.
Este enfoque no solo simplifica el flujo de trabajo, sino que también permite una mayor personalización al permitir la inclusión de código Terraform personalizado en las plantillas de proyecto de SageMaker, facilitando así una gestión más efectiva de los proyectos de ML dentro de la infraestructura de Terraform Enterprise.