AWS Identity and Access Management para SageMaker HyperPod
AWS Identity and Access Management (IAM) es un servicio de AWS que ayuda al administrador a controlar de forma segura el acceso a los recursos de AWS. Los administradores de IAM controlan quién está autenticado (ha iniciado sesión) y autorizado (tiene permisos) para utilizar recursos de Amazon EKS. IAM es un servicio de AWS que puede utilizar sin cargo adicional.
importante
Las políticas de IAM personalizadas que permiten a Amazon SageMaker Studio o Amazon SageMaker Studio Classic crear recursos de Amazon SageMaker también deben conceder permisos para añadir etiquetas a dichos recursos. El permiso para añadir etiquetas a los recursos es necesario porque Studio y Studio Classic etiquetan automáticamente todos los recursos que crean. Si una política de IAM permite a Studio y Studio Classic crear recursos, pero no permite el etiquetado, se pueden producir errores AccessDenied al intentar crear recursos. Para obtener más información, consulte Concesión de permisos para etiquetar recursos de SageMaker.
Las Políticas administradas de AWS para Amazon SageMaker que conceden permisos para crear recursos de SageMaker ya incluyen permisos para añadir etiquetas al crear esos recursos.
Supongamos que hay dos capas principales de usuarios de SageMaker HyperPod: usuarios administradores de clústeres y usuarios científicos de datos.
-
Usuarios administradores de clústeres: son los responsables de crear y administrar los clústeres de SageMaker HyperPod. Esto incluye configurar los clústeres de HyperPod y administrar el acceso de los usuarios a ellos.
-
Crean y configuran clústeres de SageMaker HyperPod con Slurm o Amazon EKS.
-
Crean y configuran roles de IAM para los usuarios científicos de datos y los recursos de clúster de HyperPod.
-
Para la orquestación de SageMaker HyperPod con Amazon EKS, crean y configuran las entradas de acceso de EKS, el control de acceso basado en roles (RBAC) y Pod Identity para cumplir con los casos de uso de ciencia de datos.
-
-
Usuarios científicos de datos: se centran en el entrenamiento de modelos de ML. Utilizan el orquestador de código abierto o la CLI de SageMaker HyperPod para enviar y administrar los trabajos de entrenamiento.
-
Asumen y utilizan el rol de IAM proporcionado por los usuarios administradores de clústeres.
-
Interactúan con las CLI del orquestador de código abierto compatibles con SageMaker HyperPod (Slurm o Kubernetes) o la CLI de SageMaker HyperPod para comprobar la capacidad de los clústeres, conectarse al clúster y enviar las cargas de trabajo.
-
Configuran roles de IAM para los administradores de clústeres asociando los permisos o políticas correctos para utilizar clústeres de SageMaker HyperPod. Los administradores de clústeres también deben crear roles de IAM para proporcionar a SageMaker HyperPod recursos que deben asumir para ejecutar y comunicarse con los recursos necesarios de AWS, como Amazon S3, Amazon CloudWatch y AWS Systems Manager (SSM). Por último, el administrador de la cuenta de AWS o los administradores de clústeres deben conceder a los científicos permisos para acceder a los clústeres de SageMaker HyperPod y ejecutar cargas de trabajo de ML.
Según el orquestador que elija, los permisos necesarios para el administrador de clústeres y los científicos pueden variar. También puede controlar el alcance de los permisos para las distintas acciones de los roles mediante las claves de condición de cada servicio. Utilice las siguientes referencias de autorizaciones de servicio para añadir el alcance detallado de los servicios relacionados con SageMaker HyperPod.
-
Amazon Elastic Container Registry (para la orquestación de clústeres de SageMaker HyperPod con Amazon EKS)
-
Amazon Elastic Kubernetes Service (para la orquestación de clústeres de SageMaker HyperPod con Amazon EKS)
Temas
Usuarios de IAM para la administración de clústeres
Los administradores de clústeres (administradores) utilizan y configuran los clústeres de SageMaker HyperPod, y realizan tareas de Funcionamiento de SageMaker HyperPod. En el siguiente ejemplo de política, se incluye el conjunto mínimo de permisos para que los administradores de clústeres ejecuten las API principales de SageMaker HyperPod y administren los clústeres de SageMaker HyperPod dentro de su cuenta de AWS.
Para conceder permisos de acceso a la consola de SageMaker, utilice el ejemplo de política que se proporciona en Permisos necesarios para utilizar la consola de Amazon SageMaker.
Para conceder permisos de acceso a la consola de Amazon EC2 Systems Manager, utilice el ejemplo de política que se proporciona en Mediante la consola de AWS Systems Manager en la Guía del usuario de AWS Systems Manager.
También podría considerar la posibilidad de asociar la política AmazonSageMakerFullAccess al rol; sin embargo, tenga en cuenta que la política AmazonSageMakerFullAccess
otorga permisos a todos los recursos, características y llamadas a la API de SageMaker.
Para obtener más información sobre los usuarios de IAM en general, consulte Usuarios de IAM en la Guía del usuario de AWS Identity and Access Management.
Usuarios de IAM para científicos
Los científicos inician sesión y ejecutan cargas de trabajo de ML en los nodos del clúster de SageMaker HyperPod aprovisionados por los administradores del clúster. A los científicos de su cuenta de AWS, les debe conceder el permiso "ssm:StartSession"
para ejecutar el comando start-session
de SSM. A continuación, se muestra una política de ejemplo para usuarios de IAM.
Rol de IAM para SageMaker HyperPod
Para que los clústeres de SageMaker HyperPod se ejecuten y se comuniquen con los recursos necesarios de AWS, debe crear un rol de IAM que debe asumir el clúster de HyperPod.
Comience por asociar el rol administrado Política administrada de AWS: AmazonSageMakerHyperPodServiceRolePolicy. Con esta política administrada de AWS, los grupos de instancias del clúster de SageMaker HyperPod asumen el rol de comunicarse con Amazon CloudWatch, Amazon S3 y AWS Systems Manager Agent (SSM Agent). Esta política administrada es el requisito mínimo para que los recursos de SageMaker HyperPod se ejecuten correctamente, por lo que debe proporcionar un rol de IAM con esta política a todos los grupos de instancias.
sugerencia
En función de sus preferencias a la hora de diseñar el nivel de permisos para varios grupos de instancias, también puede configurar varios roles de IAM y asociarlos a distintos grupos de instancias. Al configurar el acceso de los usuarios del clúster a nodos específicos del clúster de SageMaker HyperPod, los nodos asumen el rol con los permisos selectivos que haya asociado manualmente.
Al configurar el acceso de los científicos a nodos específicos del clúster a través de AWS Systems Manager
Cuando haya terminado de crear los roles de IAM, tome nota de sus nombres y ARN. Los roles se utilizan al crear un clúster de SageMaker HyperPod y conceden los permisos correctos que necesita cada grupo de instancias para comunicarse con los recursos necesarios de AWS.