Introducción a la compatibilidad con Amazon EKS en SageMaker HyperPod - Amazon SageMaker AI

Introducción a la compatibilidad con Amazon EKS en SageMaker HyperPod

Además de los Requisitos previos para utilizar SageMaker HyperPod generales de SageMaker HyperPod, consulte los siguientes requisitos y aspectos que se deben tener en cuenta a la hora de orquestar clústeres de SageMaker HyperPod mediante Amazon EKS.

importante

Puede configurar los recursos para crear clústeres de SageMaker HyperPod con la Consola de administración de AWS y CloudFormation. Para obtener más información, consulte Creación de un clúster de SageMaker HyperPod con la orquestación de Amazon EKS y Creación de clústeres de SageMaker HyperPod con plantillas de CloudFormation.

Requisitos

nota

Antes de crear un clúster de HyperPod, necesita un clúster de Amazon EKS en ejecución configurado con VPC e instalado mediante Helm.

A la hora de aprovisionar el clúster de Amazon EKS, tenga en cuenta lo siguiente:

  1. Compatibilidad con la versión de Kubernetes

    • SageMaker HyperPod es compatible con las versiones 1.28, 1.29, 1.30, 1.31 y 1.32 de Kubernetes.

  2. Modo de autenticación de clústeres de Amazon EKS

    • El modo de autenticación de un clúster de Amazon EKS compatible con SageMaker HyperPod es API y API_AND_CONFIG_MAP.

  3. Redes

    • SageMaker HyperPod requiere la versión 1.18.3 o posterior del complemento de interfaz de red de contenedores (CNI) de Amazon VPC.

      nota

      Complemento CNI de AWS VPC para Kubernetes es el único CNI compatible con SageMaker HyperPod.

    • El tipo de la subred de la VPC debe ser privado para los clústeres de HyperPod.

  4. Roles de IAM

  5. Complementos de clústeres de Amazon EKS

    • Puede seguir utilizando los distintos complementos proporcionados por Amazon EKS, como, por ejemplo, Kube-proxy, CoreDNS, el complemento Interfaz de red de contenedores (CNI) de Amazon VPC, Amazon EKS Pod Identity, el agente de GuardDuty, el controlador de Interfaz de almacenamiento de contenedores (CSI) de Amazon FSx, el controlador de CSI de Mountpoint para Amazon S3, el agente de AWS Distro para OpenTelemetry y el agente de observabilidad de CloudWatch.

Aspectos que se deben tener en cuenta a la hora de configurar los clústeres de SageMaker HyperPod con Amazon EKS

  • Debe utilizar roles de IAM distintos en función del tipo de nodo. Para los nodos de HyperPod, utilice un rol basado en Rol de IAM para SageMaker HyperPod. Para los nodos de Amazon EKS, consulte Rol de IAM de nodo de Amazon EKS.

  • Puede aprovisionar y montar volúmenes de Amazon EBS adicionales en los nodos de SageMaker HyperPod con dos enfoques: InstanceStorageConfigs para el aprovisionamiento de volúmenes en el clúster (disponible al crear o actualizar grupos de instancias) o el controlador de Interfaz de almacenamiento de contenedores (CSI) de Amazon Elastic Block Store (Amazon EBS) para la administración dinámica de volúmenes en pod. Con InstanceStorageConfigs, defina la ruta local en /opt/sagemaker para montar correctamente los volúmenes en los pods de Amazon EKS. Para obtener más información sobre cómo implementar el controlador Amazon EBS CSI en los nodos de HyperPod, consulte Uso del controlador CSI de Amazon EBS en clústeres de SageMaker HyperPod EKS.

  • Si utiliza etiquetas de tipo de instancia para definir las restricciones de programación, asegúrese de utilizar los tipos de instancia de ML de SageMaker AI con el prefijo ml. Por ejemplo, para las instancias P5, utilice ml.p5.48xlarge en lugar de p5.48xlarge.

Aspectos que se deben tener en cuenta a la hora de configurar la red para los clústeres de SageMaker HyperPod con Amazon EKS

  • Cada instancia de clúster de HyperPod admite una interfaz de red elástica (ENI). Para conocer la cantidad máxima de pods por tipo de instancia, consulte la siguiente tabla.

    Tipo de instancia Número máximo de pods
    ml.p4d.24xlarge 49
    ml.p4de.24xlarge 49
    ml.p5.48xlarge 49
    ml.trn1.32xlarge 49
    ml.trn1n.32xlarge 49
    ml.g5.xlarge 14
    ml.g5.2xlarge 14
    ml.g5.4xlarge 29
    ml.g5.8xlarge 29
    ml.g5.12xlarge 49
    ml.g5.16xlarge 29
    ml.g5.24xlarge 49
    ml.g5.48xlarge 49
    ml.c5.large 9
    ml.c5.xlarge 14
    ml.c5.2xlarge 14
    ml.c5.4xlarge 29
    ml.c5.9xlarge 29
    ml.c5.12xlarge 29
    ml.c5.18xlarge 49
    ml.c5.24xlarge 49
    ml.c5n.large 9
    ml.c5n.2xlarge 14
    ml.c5n.4xlarge 29
    ml.c5n.9xlarge 29
    ml.c5n.18xlarge 49
    ml.m5.large 9
    ml.m5.xlarge 14
    ml.m5.2xlarge 14
    ml.m5.4xlarge 29
    ml.m5.8xlarge 29
    ml.m5.12xlarge 29
    ml.m5.16xlarge 49
    ml.m5.24xlarge 49
    ml.t3.medium 5
    ml.t3.large 11
    ml.t3.xlarge 14
    ml.t3.2xlarge 14
    ml.g6.xlarge 14
    ml.g6.2xlarge 14
    ml.g6.4xlarge 29
    ml.g6.8xlarge 29
    ml.g6.12xlarge 29
    ml.g6.16xlarge 49
    ml.g6.24xlarge 49
    ml.g6.48xlarge 49
    ml.gr6.4xlarge 29
    ml.gr6.8xlarge 29
    ml.g6e.xlarge 14
    ml.g6e.2xlarge 14
    ml.g6e.4xlarge 29
    ml.g6e.8xlarge 29
    ml.g6e.12xlarge 29
    ml.g6e.16xlarge 49
    ml.g6e.24xlarge 49
    ml.g6e.48xlarge 49
    ml.p5e.48xlarge 49
  • De forma predeterminada, solo los pods con hostNetwork = true tienen acceso al servicio de metadatos de instancias (IMDS) de Amazon EC2. Use Amazon EKS Pod Identity o los roles de IAM para las cuentas de servicio (IRSA) para administrar el acceso a las credenciales AWS de los pods.

  • Los clústeres de HyperPod orquestados por EKS admiten modos de direccionamiento IP dual, lo que permite configurar con IPv4 o IPv6 para los clústeres de Amazon EKS con IPv6 en entornos de subred y VPC habilitados para IPv6. Para obtener más información, consulte Configuración de SageMaker HyperPod con una Amazon VPC personalizada.

Aspectos que se deben tener en cuenta sobre el uso de las características de resiliencia del clúster de HyperPod

  • No se admite el reemplazo automático de nodos en las instancias de CPU.

  • El agente de supervisión del estado de HyperPod debe estar instalado para que funcione la recuperación automática de los nodos. El agente se puede instalar mediante Helm. Para obtener más información, consulte Instalación de paquetes en el clúster de Amazon EKS mediante Helm.

  • El agente de supervisión y comprobación de estado de HyperPod es compatible con instancias de GPU y Trn.

  • SageMaker AI aplica la siguiente taint a los nodos cuando se someten a comprobaciones de estado exhaustivas:

    effect: NoSchedule key: sagemaker.amazonaws.com/node-health-status value: Unschedulable
    nota

    No puede añadir taints personalizadas a los nodos de los grupos de instancias con la opción DeepHealthChecks activada.

Una vez que el clúster de Amazon EKS esté en ejecución, configúrelo con el administrador de paquetes de Helm, tal y como se indica en Instalación de paquetes en el clúster de Amazon EKS mediante Helm antes de crear el clúster de HyperPod.