Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Fehler bei der Installation von Inference Operatoren über die SageMaker KI-Konsole
Überblick: Bei der Installation des Inferenzoperators über die SageMaker KI-Konsole mithilfe von Quick Install oder Custom Install können die zugrunde liegenden CloudFormation Stacks aufgrund verschiedener Probleme ausfallen. In diesem Abschnitt werden häufig auftretende Fehlerszenarien und deren Lösungen behandelt.
Fehler bei der Installation des Inference Operator-Add-ons über die Schnellinstallation oder benutzerdefinierte Installation
Problem: Die HyperPod Clustererstellung wurde erfolgreich abgeschlossen, aber die Installation des Inferenzoperator-Add-ons schlägt fehl.
Häufige Ursachen:
Die Kapazitätsgrenzen der Pods wurden auf den Clusterknoten überschritten. Für die Installation des Inferenzoperators sind mindestens 13 Pods erforderlich. Der empfohlene Mindestinstanztyp ist
ml.c5.4xlarge.Probleme mit IAM-Berechtigungen
Einschränkungen beim Ressourcenkontingent
Netzwerk- oder VPC-Konfigurationsprobleme
Symptome und Diagnose
Symptome:
Das Inferenzoperator-Add-on zeigt in der Konsole den Status CREATE_FAILED oder DEGRADED an
CloudFormation Der dem Add-on zugeordnete Stack befindet sich im Status CREATE_FAILED
Der Installationsvorgang wird gestoppt oder es werden Fehlermeldungen angezeigt
Diagnoseschritte:
-
Überprüfen Sie den Status des Add-ons für den Inferenzoperator:
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 -
Suchen Sie nach Problemen mit dem Pod-Limit:
# 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" -
Überprüfen Sie den CloudFormation Stack-Status (wenn Sie die Konsoleninstallation verwenden):
# 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
Auflösung
Um den Installationsfehler zu beheben, speichern Sie die aktuelle Konfiguration, löschen Sie das fehlgeschlagene Add-on, beheben Sie das zugrunde liegende Problem und installieren Sie dann den Inferenzoperator über die SageMaker AI-Konsole (empfohlen) oder die AWS CLI erneut.
Schritt 1: Speichern Sie die aktuelle Konfiguration
-
Extrahieren und speichern Sie die Add-On-Konfiguration vor dem Löschen:
# 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 '.'
Schritt 2: Löschen Sie das fehlgeschlagene Add-on
-
Löschen Sie das Add-on für den Inferenzoperator:
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
Schritt 3: Beheben Sie das zugrunde liegende Problem
Wählen Sie je nach Fehlerursache die passende Lösung aus:
Wenn das Problem darin besteht, dass das Pod-Limit überschritten wurde:
# 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
Schritt 4: Installieren Sie den Inferenzoperator erneut
Nachdem Sie das zugrunde liegende Problem behoben haben, installieren Sie den Inferenzoperator erneut mit einer der folgenden Methoden:
-
SageMaker AI-Konsole mit benutzerdefinierter Installation (empfohlen): Verwenden Sie vorhandene IAM-Rollen und den TLS-Bucket aus Ihrer vorherigen Installation wieder. Informationen zu den erforderlichen Schritten finden Sie unter Methode 1: Installieren Sie das HyperPod Inference Add-on über die SageMaker AI-Konsole (empfohlen).
-
AWS CLI mit gespeicherter Konfiguration: Verwenden Sie die Konfiguration, die Sie in Schritt 1 gesichert haben, um das Add-on erneut zu installieren. Die vollständigen CLI-Installationsschritte finden Sie unterMethode 2: Installation des Inferenzoperators mit der 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 AI-Konsole mit Schnellinstallation: Erstellt automatisch neue IAM-Rollen, TLS-Buckets und Abhängigkeits-Add-Ons. Informationen zu den erforderlichen Schritten finden Sie unter Methode 1: Installieren Sie das HyperPod Inference Add-on über die SageMaker AI-Konsole (empfohlen).
Schritt 5: Überprüfen Sie die erfolgreiche Installation
# 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
Die Installation von CERT-Manager ist fehlgeschlagen, da der Kueue-Webhook nicht bereit ist
Problem: Die Installation des Cert-Manager-Add-ons schlägt mit einem Webhook-Fehler fehl, da für den Task Governance (Kueue) -Webhook-Dienst keine verfügbaren Endpunkte verfügbar sind. Dies ist eine Race-Bedingung, die auftritt, wenn der Cert-Manager versucht, Ressourcen zu erstellen, bevor die Task Governance-Webhook-Pods vollständig ausgeführt werden. Dies kann passieren, wenn das Task Governance-Add-on zusammen mit dem Inferenzoperator während der Clustererstellung installiert wird.
Symptome und Diagnose
Fehlermeldung:
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"
Grundursache:
Das Task Governance-Add-on installiert und registriert einen mutierenden Webhook, der alle Deployment-Erstellungen abfängt
Das CERT-Manager-Add-on versucht, Bereitstellungsressourcen zu erstellen, bevor die Task Governance-Webhook-Pods bereit sind
Die Kubernetes-Zugangssteuerung ruft den Task Governance-Webhook auf, hat aber keine Endpunkte (Pods laufen noch nicht)
Diagnoseschritt:
-
Überprüfen Sie den Status des Cert-Manager-Add-ons:
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
Auflösung
Lösung: Löschen Sie den Cert-Manager und installieren Sie ihn erneut
Der Task Governance-Webhook ist innerhalb von 60 Sekunden bereit. Löschen Sie einfach das Cert-Manager-Add-on und installieren Sie es erneut:
-
Löschen Sie das fehlgeschlagene Cert-Manager-Add-On:
aws eks delete-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name cert-manager \ --region $REGION -
Warten Sie 30-60 Sekunden, bis der Task Governance-Webhook bereit ist, und installieren Sie dann das cert-manager-Add-on erneut:
sleep 60 aws eks create-addon \ --cluster-name $EKS_CLUSTER_NAME \ --addon-name cert-manager \ --region $REGION