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.
Deduzca los errores de instalación del operador mediante una consola de SageMaker IA
Descripción general: Al instalar el operador de inferencia a través de la consola de SageMaker IA mediante una instalación rápida o una instalación personalizada, es posible que las CloudFormation pilas subyacentes fallen debido a varios problemas. En esta sección se describen los escenarios de error más comunes y sus soluciones.
Deduzca el error en la instalación del complemento por parte del operador mediante una instalación rápida o personalizada
Problema: la creación del HyperPod clúster se completa correctamente, pero se produce un error al instalar el complemento del operador de inferencia.
Causas habituales:
Se han superado los límites de capacidad del pod en los nodos del clúster. La instalación del operador de inferencia requiere un mínimo de 13 pods. El tipo de instancia mínimo recomendado es
ml.c5.4xlarge.Problemas con los permisos de IAM
Restricciones de cuota de recursos
Problemas de configuración de red o VPC
Síntomas y diagnóstico
Síntomas:
El complemento Inference Operator muestra el estado CREATE_FAILED o DEGRADED en la consola
CloudFormation la pila asociada al complemento tiene el estado CREATE_FAILED
El progreso de la instalación se detiene o muestra mensajes de error
Pasos de diagnóstico:
-
Compruebe el estado del complemento del operador de inferencia:
aws eks describe-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name amazon-sagemaker-hyperpod-inference \ --region $REGION \ --query "addon.{Status:status,Health:health,Issues:issues}" \ --output json -
Compruebe si hay problemas con el límite de los pods:
# Check current pod count per node kubectl get nodes -o json | jq '.items[] | {name: .metadata.name, allocatable: .status.allocatable.pods, capacity: .status.capacity.pods}' # Check pods running on each node kubectl get pods --all-namespaces -o wide | awk '{print $8}' | sort | uniq -c # Check for pod evictions or failures kubectl get events --all-namespaces --sort-by='.lastTimestamp' | grep -i "pod\|limit\|quota" -
Comprueba el estado de la CloudFormation pila (si utilizas la instalación de la consola):
# List CloudFormation stacks related to the cluster aws cloudformation list-stacks \ --region $REGION \ --query "StackSummaries[?contains(StackName, '$EKS_CLUSTER_NAME') && StackStatus=='CREATE_FAILED'].{Name:StackName,Status:StackStatus,Reason:StackStatusReason}" \ --output table # Get detailed stack events aws cloudformation describe-stack-events \ --stack-name <stack-name> \ --region $REGION \ --query "StackEvents[?ResourceStatus=='CREATE_FAILED']" \ --output table
Resolución
Para resolver el error de instalación, guarde la configuración actual, elimine el complemento fallido, corrija el problema subyacente y, a continuación, vuelva a instalar el operador de inferencia a través de la consola de SageMaker IA (se recomienda) o la AWS CLI.
Paso 1: Guarde la configuración actual
-
Extraiga y guarde la configuración del complemento antes de eliminarla:
# Save the current configuration aws eks describe-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name amazon-sagemaker-hyperpod-inference \ --region $REGION \ --query 'addon.configurationValues' \ --output text > addon-config-backup.json # Verify the configuration was saved cat addon-config-backup.json # Pretty print for readability cat addon-config-backup.json | jq '.'
Paso 2: Eliminar el complemento fallido
-
Elimine el complemento del operador de inferencia:
aws eks delete-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name amazon-sagemaker-hyperpod-inference \ --region $REGION # Wait for deletion to complete echo "Waiting for add-on deletion..." aws eks wait addon-deleted \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name amazon-sagemaker-hyperpod-inference \ --region $REGION 2>/dev/null || sleep 60
Paso 3: Solucione el problema subyacente
Elija la solución adecuada en función de la causa del error:
Si se ha superado el límite de cápsulas del problema:
# The inference operator requires a minimum of 13 pods. # The minimum recommended instance type is ml.c5.4xlarge. # # Option 1: Add instance group with higher pod capacity # Different instance types support different maximum pod counts # For example: m5.large (29 pods), m5.xlarge (58 pods), m5.2xlarge (58 pods) aws sagemaker update-cluster \ --cluster-name $HYPERPOD_CLUSTER_NAME \ --region $REGION \ --instance-groups '[{"InstanceGroupName":"worker-group-2","InstanceType":"ml.m5.xlarge","InstanceCount":2}]' # Option 2: Scale existing node group to add more nodes aws eks update-nodegroup-config \ --cluster-name $EKS_CLUSTER_NAME \ --nodegroup-name <nodegroup-name> \ --scaling-config minSize=2,maxSize=10,desiredSize=5 \ --region $REGION # Option 3: Clean up unused pods kubectl delete pods --field-selector status.phase=Failed --all-namespaces kubectl delete pods --field-selector status.phase=Succeeded --all-namespaces
Paso 4: Vuelva a instalar el operador de inferencia
Tras solucionar el problema subyacente, vuelva a instalar el operador de inferencia mediante uno de los métodos siguientes:
-
SageMaker Consola de IA con instalación personalizada (recomendada): reutilice las funciones de IAM y el depósito de TLS existentes de la instalación anterior. Para ver los pasos, consulte Método 1: instalar el complemento HyperPod Inference a través de una consola de SageMaker IA (recomendado).
-
AWS CLI con configuración guardada: utilice la configuración de la que hizo una copia de seguridad en el paso 1 para volver a instalar el complemento. Para ver todos los pasos de instalación de la CLI, consulteMétodo 2: Instalación del operador de inferencia mediante la CLI AWS.
aws eks create-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name amazon-sagemaker-hyperpod-inference \ --addon-version v1.0.0-eksbuild.1 \ --configuration-values file://addon-config-backup.json \ --region $REGION -
SageMaker Consola de IA con instalación rápida: crea automáticamente nuevas funciones de IAM, un depósito de TLS y complementos de dependencia. Para ver los pasos, consulte Método 1: instalar el complemento HyperPod Inference a través de una consola de SageMaker IA (recomendado).
Paso 5: Compruebe que la instalación se ha realizado correctamente
# Check add-on status aws eks describe-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name amazon-sagemaker-hyperpod-inference \ --region $REGION \ --query "addon.{Status:status,Health:health}" \ --output table # Verify pods are running kubectl get pods -n hyperpod-inference-system # Check operator logs kubectl logs -n hyperpod-inference-system deployment/hyperpod-inference-controller-manager --tail=50
La instalación de Cert-Manager falló debido a que el webhook de Kueue no estaba listo
Problema: la instalación del complemento cert-manager falla y se produce un error de webhook porque el servicio de webhook de Task Governance (Kueue) no tiene puntos de enlace disponibles. Se trata de una condición de carrera que se produce cuando cert-manager intenta crear recursos antes de que los módulos de webhook de Task Governance estén en pleno funcionamiento. Esto puede ocurrir cuando se instala el complemento Task Governance junto con el operador de inferencia durante la creación del clúster.
Síntomas y diagnóstico
Mensaje de error:
AdmissionRequestDenied Internal error occurred: failed calling webhook "mdeployment.kb.io": failed to call webhook: Post "https://kueue-webhook-service.kueue-system.svc:443/mutate-apps-v1-deployment?timeout=10s": no endpoints available for service "kueue-webhook-service"
Causa raíz:
El complemento Task Governance instala y registra un webhook mutante que intercepta todas las creaciones de Deployment
El complemento Cert-Manager intenta crear recursos de despliegue antes de que los webhooks de Task Governance estén listos
El control de admisión de Kubernetes llama webhook a Task Governance, pero no tiene puntos de conexión (los pods aún no se están ejecutando)
Paso de diagnóstico:
-
Compruebe el estado del complemento cert-manager:
aws eks describe-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name cert-manager \ --region $REGION \ --query "addon.{Status:status,Health:health,Issues:issues}" \ --output json
Resolución
Solución: elimine y vuelva a instalar cert-manager
El webhook de Task Governance estará listo en 60 segundos. Simplemente elimina y vuelve a instalar el complemento cert-manager:
-
Elimine el complemento cert-manager fallido:
aws eks delete-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name cert-manager \ --region $REGION -
Espere entre 30 y 60 segundos hasta que el webhook de Task Governance esté listo y, a continuación, vuelva a instalar el complemento cert-manager:
sleep 60 aws eks create-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name cert-manager \ --region $REGION