SageMaker Operadores de IA para Kubernetes - Amazon SageMaker AI

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.

SageMaker Operadores de IA para Kubernetes

SageMaker Los operadores de IA para Kubernetes facilitan a los desarrolladores y científicos de datos que utilizan Kubernetes la formación, el ajuste y la implementación de modelos de aprendizaje automático (ML) en la IA. SageMaker Puede instalar estos operadores de SageMaker IA en su clúster de Kubernetes en Amazon Elastic Kubernetes Service (Amazon EKS SageMaker ) para crear trabajos de IA de forma nativa mediante la API de Kubernetes y las herramientas de Kubernetes de línea de comandos, como. kubectl Esta guía muestra cómo configurar y usar los operadores para ejecutar el entrenamiento de modelos, el ajuste de hiperparámetros o la inferencia (en tiempo real y por lotes) sobre la IA desde un clúster de Kubernetes. SageMaker Los procedimientos y directrices de este capítulo dan por sentado que está familiarizado con Kubernetes y sus comandos básicos.

importante

Vamos a detener el desarrollo y el soporte técnico de la versión original de Operators for Kubernetes. SageMaker

Si actualmente utilizas la versión v1.2.2 o anterior de SageMaker Operators for Kubernetes, te recomendamos migrar tus recursos al controlador de servicios ACK para Amazon. SageMaker El controlador de servicios ACK es una nueva generación de SageMaker operadores para Kubernetes basada en Controllers for Kubernetes (ACK).AWS

Para obtener información sobre los pasos de migración, consulte Migrar recursos a los operadores más recientes.

Para obtener respuestas a las preguntas frecuentes sobre la finalización del soporte de la versión original de Operators for Kubernetes, consulte SageMaker Anunciamos el fin del soporte de la versión original de SageMaker AI Operators para Kubernetes

nota

El uso de estos operadores no supone ningún cargo adicional. Se le cobrará por cualquier recurso de SageMaker IA que utilice a través de estos operadores.

¿Qué es un operador?

Un operador de Kubernetes es un controlador de aplicaciones que administra las aplicaciones en nombre de un usuario de Kubernetes. Los controladores del plano de control incluyen varios bucles de control que escuchan a un administrador de estado central (ETCD) para regular el estado de la aplicación que controlan. Algunos ejemplos de estas aplicaciones incluyen la C loud-controller-manager ykube-controller-manager. Los operadores suelen proporcionar una abstracción de mayor nivel que la API de Kubernetes sin procesar, lo que facilita a los usuarios la implementación y la administración de las aplicaciones. Para agregar nuevas capacidades a Kubernetes, los desarrolladores pueden ampliar la API de Kubernetes mediante la creación de un recurso personalizado que contenga la lógica y los componentes específicos de la aplicación o del dominio. Los operadores de Kubernetes permiten a los usuarios invocar estos recursos personalizados de forma nativa y automatizar los flujos de trabajo asociados.

¿Cómo funciona AWS Controllers for Kubernetes (ACK)?

Los operadores de SageMaker IA para Kubernetes le permiten gestionar los trabajos en SageMaker IA desde su clúster de Kubernetes. La última versión de SageMaker AI Operators for Kubernetes se basa en Controllers for Kubernetes (ACK). AWS ACK incluye un controlador de tiempo de ejecución común, un generador de código y un conjunto de controladores AWS específicos para cada servicio, uno de los cuales es el controlador AI. SageMaker

El siguiente diagrama ilustra cómo funciona ACK.

Explicación del operador de SageMaker IA basado en ACK para Kubernetes.

En este diagrama, un usuario de Kubernetes quiere realizar un entrenamiento modelo sobre SageMaker IA desde el clúster de Kubernetes mediante la API de Kubernetes. El usuario hace una llamada a y le envía un archivo que describe un kubectl apply recurso personalizado de Kubernetes que describe el trabajo de formación. SageMaker kubectl applypasa este archivo, denominado manifiesto, al servidor API de Kubernetes que se ejecuta en el nodo del controlador de Kubernetes (paso 1 del diagrama de flujo de trabajo). El servidor de la API de Kubernetes recibe el manifiesto con la especificación del trabajo de SageMaker formación y determina si el usuario tiene permisos para crear un tipo de recurso personalizado y si el recurso personalizado tiene el sageMaker.services.k8s.aws/TrainingJob formato correcto (paso 2). Si el usuario está autorizado y el recurso personalizado es válido, el servidor de API de Kubernetes escribe (paso 3) el recurso personalizado en su almacén de datos etcd y, a continuación, responde (paso 4) al usuario diciéndole que se ha creado el recurso personalizado. El controlador de SageMaker IA, que se ejecuta en un nodo de trabajo de Kubernetes en el contexto de un pod de Kubernetes normal, recibe una notificación (paso 5) de que se ha creado un nuevo recurso personalizado de este tipo. sageMaker.services.k8s.aws/TrainingJob A continuación, el controlador de SageMaker IA se comunica (paso 6) con la SageMaker API y llama a la API de SageMaker IA para crear el trabajo de CreateTrainingJob formación. AWS Tras comunicarse con la SageMaker API, el controlador de SageMaker IA llama al servidor de la API de Kubernetes para actualizar (paso 7) el estado del recurso personalizado con la información que ha recibido de la IA. SageMaker Por lo tanto, el controlador de SageMaker IA proporciona a los desarrolladores la misma información que la que habrían recibido con el SDK. AWS

Información general de los permisos

Los operadores acceden a los recursos de SageMaker IA en tu nombre. La función de IAM que asume el operador para interactuar con AWS los recursos difiere de las credenciales que se utilizan para acceder al clúster de Kubernetes. La función también difiere de la que se AWS asume al ejecutar las tareas de aprendizaje automático.

La siguiente imagen explica las distintas capas de autenticación.

SageMaker AI Operator para Kubernetes: varios niveles de autenticación.