

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 des Inferenzoperators über CLI AWS
<a name="sagemaker-hyperpod-model-deployment-ts-cli"></a>

**Überblick:** Bei der Installation des Inferenzoperators über die AWS CLI kann die Installation von Add-Ons aufgrund fehlender Abhängigkeiten fehlschlagen. In diesem Abschnitt werden häufig auftretende CLI-Installationsfehlerszenarien und deren Lösungen behandelt.

## Die Installation des Inference Add-ons ist aufgrund fehlender CSI-Treiber fehlgeschlagen
<a name="sagemaker-hyperpod-model-deployment-ts-missing-csi-drivers"></a>

**Problem:** Die Erstellung des Inferenzoperator-Add-ons schlägt fehl, da die erforderlichen CSI-Treiberabhängigkeiten nicht auf dem EKS-Cluster installiert sind.

**Symptome und Diagnose:**

**Fehlermeldungen:**

Die folgenden Fehler treten in den Protokollen zur Erstellung von Add-ons oder in den Protokollen der Inferenzoperatoren auf:

```
S3 CSI driver not installed (missing CSIDriver s3.csi.aws.com). 
Please install the required CSI driver and see the troubleshooting guide for more information.

FSx CSI driver not installed (missing CSIDriver fsx.csi.aws.com). 
Please install the required CSI driver and see the troubleshooting guide for more information.
```

**Diagnoseschritte:**

1. Prüfen Sie, ob CSI-Treiber installiert sind:

   ```
   # Check for S3 CSI driver
   kubectl get csidriver s3.csi.aws.com
   kubectl get pods -n kube-system | grep mountpoint
   
   # Check for FSx CSI driver  
   kubectl get csidriver fsx.csi.aws.com
   kubectl get pods -n kube-system | grep fsx
   ```

1. Überprüfen Sie den Status des EKS-Add-ons:

   ```
   # List all add-ons
   aws eks list-addons --cluster-name $EKS_CLUSTER_NAME --region $REGION
   
   # Check specific CSI driver add-ons
   aws eks describe-addon --cluster-name $EKS_CLUSTER_NAME --addon-name aws-mountpoint-s3-csi-driver --region $REGION 2>/dev/null || echo "S3 CSI driver not installed"
   aws eks describe-addon --cluster-name $EKS_CLUSTER_NAME --addon-name aws-fsx-csi-driver --region $REGION 2>/dev/null || echo "FSx CSI driver not installed"
   ```

1. Ü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
   ```

**Auflösung**

**Schritt 1: Installieren Sie den fehlenden S3-CSI-Treiber**

1. Erstellen Sie die IAM-Rolle für den S3-CSI-Treiber (falls nicht bereits erstellt):

   ```
   # Set up service account role ARN (from installation steps)
   export S3_CSI_ROLE_ARN=$(aws iam get-role --role-name $S3_CSI_ROLE_NAME --query 'Role.Arn' --output text 2>/dev/null || echo "Role not found")
   echo "S3 CSI Role ARN: $S3_CSI_ROLE_ARN"
   ```

1. Installieren Sie das S3 CSI-Treiber-Add-On:

   ```
   aws eks create-addon \
       --cluster-name $EKS_CLUSTER_NAME \
       --addon-name aws-mountpoint-s3-csi-driver \
       --addon-version v1.14.1-eksbuild.1 \
       --service-account-role-arn $S3_CSI_ROLE_ARN \
       --region $REGION
   ```

1. Überprüfen Sie die Installation des S3 CSI-Treibers:

   ```
   # Wait for add-on to be active
   aws eks wait addon-active --cluster-name $EKS_CLUSTER_NAME --addon-name aws-mountpoint-s3-csi-driver --region $REGION
   
   # Verify CSI driver is available
   kubectl get csidriver s3.csi.aws.com
   kubectl get pods -n kube-system | grep mountpoint
   ```

**Schritt 2: Fehlenden FSx CSI-Treiber installieren**

1. Erstellen Sie die IAM-Rolle für FSx den CSI-Treiber (falls nicht bereits erstellt):

   ```
   # Set up service account role ARN (from installation steps)
   export FSX_CSI_ROLE_ARN=$(aws iam get-role --role-name $FSX_CSI_ROLE_NAME --query 'Role.Arn' --output text 2>/dev/null || echo "Role not found")
   echo "FSx CSI Role ARN: $FSX_CSI_ROLE_ARN"
   ```

1.  FSx CSI-Treiber-Add-On installieren:

   ```
   aws eks create-addon \
       --cluster-name $EKS_CLUSTER_NAME \
       --addon-name aws-fsx-csi-driver \
       --addon-version v1.6.0-eksbuild.1 \
       --service-account-role-arn $FSX_CSI_ROLE_ARN \
       --region $REGION
   
   # Wait for add-on to be active
   aws eks wait addon-active --cluster-name $EKS_CLUSTER_NAME --addon-name aws-fsx-csi-driver --region $REGION
   
   # Verify FSx CSI driver is running
   kubectl get pods -n kube-system | grep fsx
   ```

**Schritt 3: Überprüfen Sie alle Abhängigkeiten**

Stellen Sie nach der Installation der fehlenden Abhängigkeiten sicher, dass sie ordnungsgemäß ausgeführt werden, bevor Sie erneut versuchen, den Inferenzoperator zu installieren:

```
# Check all required add-ons are active
aws eks describe-addon --cluster-name $EKS_CLUSTER_NAME --addon-name aws-mountpoint-s3-csi-driver --region $REGION
aws eks describe-addon --cluster-name $EKS_CLUSTER_NAME --addon-name aws-fsx-csi-driver --region $REGION
aws eks describe-addon --cluster-name $EKS_CLUSTER_NAME --addon-name metrics-server --region $REGION
aws eks describe-addon --cluster-name $EKS_CLUSTER_NAME --addon-name cert-manager --region $REGION

# Verify all pods are running
kubectl get pods -n kube-system | grep -E "(mountpoint|fsx|metrics-server)"
kubectl get pods -n cert-manager
```

## Benutzerdefinierte Inferenzressourcendefinitionen fehlen während der Modellbereitstellung
<a name="sagemaker-hyperpod-model-deployment-ts-crd-not-exist"></a>

**Problem:** Benutzerdefinierte Ressourcendefinitionen (CRDs) fehlen, wenn Sie versuchen, Modellbereitstellungen zu erstellen. Dieses Problem tritt auf, wenn Sie das Inferenz-Add-on zuvor installiert und gelöscht haben, ohne Modellbereitstellungen mit Finalizern zu bereinigen.

**Symptome und Diagnose:**

**Grundursache:**

Wenn Sie das Inferenz-Add-on löschen, ohne zuerst alle Modellbereitstellungen zu entfernen, verbleiben benutzerdefinierte Ressourcen mit Finalizern im Cluster. Diese Finalizer müssen abgeschlossen sein, bevor Sie sie löschen können. CRDs Beim Löschen von Add-Ons wird nicht darauf gewartet, dass das Löschen der CRD abgeschlossen ist. Dadurch verbleibt das CRDs Add-On im Endzustand und Neuinstallationen werden verhindert.

**Um dieses Problem zu diagnostizieren**

1. Prüfen Sie, ob CRDs es existiert.

   ```
   kubectl get crd | grep inference.sagemaker.aws.amazon.com
   ```

1. Suchen Sie nach festgefahrenen benutzerdefinierten Ressourcen.

   ```
   # Check for JumpStartModel resources
   kubectl get jumpstartmodels -A
   
   # Check for InferenceEndpointConfig resources
   kubectl get inferenceendpointconfigs -A
   ```

1. Untersuchen Sie die Finalizer für festgefahrene Ressourcen.

   ```
   # Example for a specific JumpStartModel
   kubectl get jumpstartmodels <model-name> -n <namespace> -o jsonpath='{.metadata.finalizers}'
   
   # Example for a specific InferenceEndpointConfig
   kubectl get inferenceendpointconfigs <config-name> -n <namespace> -o jsonpath='{.metadata.finalizers}'
   ```

**Auflösung**

Entfernen Sie die Finalizer manuell aus allen Modellbereitstellungen, die nicht gelöscht wurden, als Sie das Inferenz-Add-on entfernt haben. Führen Sie die folgenden Schritte für jede festgefahrene benutzerdefinierte Ressource aus.

**Um Finalizer aus Ressourcen zu entfernen JumpStartModel **

1. Listet alle JumpStartModel Ressourcen in allen Namespaces auf.

   ```
   kubectl get jumpstartmodels -A
   ```

1. Entfernen Sie für jede JumpStartModel Ressource die Finalizer, indem Sie die Ressource so patchen, dass metadata.finalizers auf ein leeres Array gesetzt wird.

   ```
   kubectl patch jumpstartmodels <model-name> -n <namespace> -p '{"metadata":{"finalizers":[]}}' --type=merge
   ```

   Das folgende Beispiel zeigt, wie eine Ressource mit dem Namen kv-l1-only gepatcht wird.

   ```
   kubectl patch jumpstartmodels kv-l1-only -n default -p '{"metadata":{"finalizers":[]}}' --type=merge
   ```

1. Stellen Sie sicher, dass die Modellinstanz gelöscht wurde.

   ```
   kubectl get jumpstartmodels -A
   ```

   Wenn alle Ressourcen bereinigt sind, sollte die folgende Ausgabe angezeigt werden.

   ```
   Error from server (NotFound): Unable to list "inference.sagemaker.aws.amazon.com/v1, Resource=jumpstartmodels": the server could not find the requested resource (get jumpstartmodels.inference.sagemaker.aws.amazon.com)
   ```

1. Stellen Sie sicher, dass die JumpStartModel CRD entfernt wurde.

   ```
   kubectl get crd | grep jumpstartmodels.inference.sagemaker.aws.amazon.com
   ```

   Wenn die CRD erfolgreich entfernt wurde, gibt dieser Befehl keine Ausgabe zurück.

**Um Finalizer aus Ressourcen zu entfernen InferenceEndpointConfig **

1. Listet alle InferenceEndpointConfig Ressourcen in allen Namespaces auf.

   ```
   kubectl get inferenceendpointconfigs -A
   ```

1. Entfernen Sie für jede InferenceEndpointConfig Ressource die Finalizer.

   ```
   kubectl patch inferenceendpointconfigs <config-name> -n <namespace> -p '{"metadata":{"finalizers":[]}}' --type=merge
   ```

   Das folgende Beispiel zeigt, wie eine Ressource mit dem Namen gepatcht wird. my-inference-config

   ```
   kubectl patch inferenceendpointconfigs my-inference-config -n default -p '{"metadata":{"finalizers":[]}}' --type=merge
   ```

1. Stellen Sie sicher, dass die Konfigurationsinstanz gelöscht wurde.

   ```
   kubectl get inferenceendpointconfigs -A
   ```

   Wenn alle Ressourcen bereinigt sind, sollte die folgende Ausgabe angezeigt werden.

   ```
   Error from server (NotFound): Unable to list "inference.sagemaker.aws.amazon.com/v1, Resource=inferenceendpointconfigs": the server could not find the requested resource (get inferenceendpointconfigs.inference.sagemaker.aws.amazon.com)
   ```

1. Stellen Sie sicher, dass die InferenceEndpointConfig CRD entfernt wurde.

   ```
   kubectl get crd | grep inferenceendpointconfigs.inference.sagemaker.aws.amazon.com
   ```

   Wenn die CRD erfolgreich entfernt wurde, gibt dieser Befehl keine Ausgabe zurück.

**Um das Inferenz-Add-on neu zu installieren**

Nachdem Sie alle festgefahrenen Ressourcen bereinigt und sichergestellt haben, dass sie entfernt wurden, installieren CRDs Sie das Inferenz-Add-on erneut. Weitere Informationen finden Sie unter [Installation des Inference Operators mit dem EKS-Add-on](sagemaker-hyperpod-model-deployment-setup.md#sagemaker-hyperpod-model-deployment-setup-install-inference-operator-addon).

**Überprüfung:**

1. Stellen Sie sicher, dass das Inferenz-Add-on erfolgreich installiert wurde.

   ```
   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
   ```

   Der Status sollte AKTIV sein und die Health sollte GESUND sein.

1. Stellen Sie sicher, dass sie ordnungsgemäß installiert CRDs sind.

   ```
   kubectl get crd | grep inference.sagemaker.aws.amazon.com
   ```

   In der Ausgabe sollten die Informationen zu den CRDs Inferenzen aufgeführt sein.

1. Testen Sie die Erstellung einer neuen Modellbereitstellung, um sicherzustellen, dass das Problem behoben ist.

   ```
   # Create a test deployment using your preferred method
   kubectl apply -f <your-model-deployment.yaml>
   ```

**Vorbeugung:**

Um dieses Problem zu vermeiden, führen Sie die folgenden Schritte aus, bevor Sie das Inferenz-Add-on deinstallieren.

1. Löschen Sie alle Modellbereitstellungen.

   ```
   # Delete all JumpStartModel resources
   kubectl delete jumpstartmodels --all -A
   
   # Delete all InferenceEndpointConfig resources
   kubectl delete inferenceendpointconfigs --all -A
   
   # Wait for all resources to be fully deleted
   kubectl get jumpstartmodels -A
   kubectl get inferenceendpointconfigs -A
   ```

1. Stellen Sie sicher, dass alle benutzerdefinierten Ressourcen gelöscht wurden.

1. Nachdem Sie bestätigt haben, dass alle Ressourcen bereinigt wurden, löschen Sie das Inferenz-Add-on.

## Die Installation des Inference-Add-Ons ist aufgrund des fehlenden Cert-Managers fehlgeschlagen
<a name="sagemaker-hyperpod-model-deployment-ts-missing-cert-manager"></a>

**Problem:** Die Erstellung des Add-Ons für den Inferenzoperator schlägt fehl, weil das EKS-Add-On für Cert-Manager nicht installiert ist, was dazu führt, dass benutzerdefinierte Ressourcendefinitionen () fehlen. CRDs

**Symptome und Diagnose:**

**Fehlermeldungen:**

Die folgenden Fehler treten in den Protokollen zur Erstellung von Add-ons oder in den Protokollen der Inferenzoperatoren auf:

```
Missing required CRD: certificaterequests.cert-manager.io. 
The cert-manager add-on is not installed. Please install cert-manager and see the troubleshooting guide for more information.
```

**Diagnoseschritte:**

1. Prüfen Sie, ob cert-manager installiert ist:

   ```
   # Check for cert-manager CRDs
   kubectl get crd | grep cert-manager
   kubectl get pods -n cert-manager
   
   # Check EKS add-on status
   aws eks describe-addon --cluster-name $EKS_CLUSTER_NAME --addon-name cert-manager --region $REGION 2>/dev/null || echo "Cert-manager not installed"
   ```

1. Ü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
   ```

**Auflösung**

**Schritt 1: Installieren Sie das Cert-Manager-Add-On**

1. Installieren Sie das cert-manager EKS-Add-on:

   ```
   aws eks create-addon \
       --cluster-name $EKS_CLUSTER_NAME \
       --addon-name cert-manager \
       --addon-version v1.18.2-eksbuild.2 \
       --region $REGION
   ```

1. Überprüfen Sie die Installation von cert-manager:

   ```
   # Wait for add-on to be active
   aws eks wait addon-active --cluster-name $EKS_CLUSTER_NAME --addon-name cert-manager --region $REGION
   
   # Verify cert-manager pods are running
   kubectl get pods -n cert-manager
   
   # Verify CRDs are installed
   kubectl get crd | grep cert-manager | wc -l
   # Expected: Should show multiple cert-manager CRDs
   ```

**Schritt 2: Versuchen Sie erneut, den Inference Operator zu installieren**

1. Versuchen Sie nach der Installation des Cert-Managers erneut, den Inferenzoperator zu installieren:

   ```
   # Delete the failed add-on if it exists
   aws eks delete-addon \
       --cluster-name $EKS_CLUSTER_NAME \
       --addon-name amazon-sagemaker-hyperpod-inference \
       --region $REGION 2>/dev/null || echo "Add-on not found, proceeding with installation"
   
   # Wait for deletion to complete
   sleep 30
   
   # Reinstall the inference operator add-on
   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.json \
       --region $REGION
   ```

1. Überwachen Sie die Installation:

   ```
   # Check installation 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 inference operator pods are running
   kubectl get pods -n hyperpod-inference-system
   ```

## Die Installation des Inference-Add-ons ist aufgrund des fehlenden ALB-Controllers fehlgeschlagen
<a name="sagemaker-hyperpod-model-deployment-ts-missing-alb"></a>

**Problem:** Die Erstellung des Inferenzoperator-Add-ons schlägt fehl, weil der Load AWS Balancer Controller für das Inferenz-Add-on nicht installiert oder nicht richtig konfiguriert ist.

**Symptome und Diagnose:**

**Fehlermeldungen:**

Die folgenden Fehler treten in den Protokollen zur Erstellung von Add-ons oder in den Protokollen der Inferenzoperatoren auf:

```
ALB Controller not installed (missing aws-load-balancer-controller pods). 
Please install the Application Load Balancer Controller and see the troubleshooting guide for more information.
```

**Diagnoseschritte:**

1. Prüfen Sie, ob ALB Controller installiert ist:

   ```
   # Check for ALB Controller pods
   kubectl get pods -n kube-system | grep aws-load-balancer-controller
   kubectl get pods -n hyperpod-inference-system | grep aws-load-balancer-controller
   
   # Check ALB Controller service account
   kubectl get serviceaccount aws-load-balancer-controller -n kube-system 2>/dev/null || echo "ALB Controller service account not found"
   kubectl get serviceaccount aws-load-balancer-controller -n hyperpod-inference-system 2>/dev/null || echo "ALB Controller service account not found in inference namespace"
   ```

1. Überprüfen Sie die Konfiguration des Zusatzmoduls 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,ConfigurationValues:configurationValues}" \
       --output json
   ```

**Auflösung**

Wählen Sie je nach Konfiguration eine der folgenden Optionen:

**Option 1: Lassen Sie das Inferenz-Add-on den ALB Controller installieren (empfohlen)**
+ Stellen Sie sicher, dass die ALB-Rolle in Ihrer Add-On-Konfiguration erstellt und ordnungsgemäß konfiguriert ist:

  ```
  # Verify ALB role exists
  export ALB_ROLE_ARN=$(aws iam get-role --role-name alb-role --query 'Role.Arn' --output text 2>/dev/null || echo "Role not found")
  echo "ALB Role ARN: $ALB_ROLE_ARN"
  
  # Update your addon-config.json to enable ALB
  cat > addon-config.json << EOF
  {
    "executionRoleArn": "$EXECUTION_ROLE_ARN",
    "tlsCertificateS3Bucket": "$BUCKET_NAME",
    "hyperpodClusterArn": "$HYPERPOD_CLUSTER_ARN",
    "alb": {
      "enabled": true,
      "serviceAccount": {
        "create": true,
        "roleArn": "$ALB_ROLE_ARN"
      }
    },
    "keda": {
      "auth": {
        "aws": {
          "irsa": {
            "roleArn": "$KEDA_ROLE_ARN"
          }
        }
      }
    }
  }
  EOF
  ```

**Option 2: Verwenden Sie die vorhandene ALB Controller-Installation**
+ Wenn Sie ALB Controller bereits installiert haben, konfigurieren Sie das Add-On so, dass es die bestehende Installation verwendet:

  ```
  # Update your addon-config.json to disable ALB installation
  cat > addon-config.json << EOF
  {
    "executionRoleArn": "$EXECUTION_ROLE_ARN",
    "tlsCertificateS3Bucket": "$BUCKET_NAME",
    "hyperpodClusterArn": "$HYPERPOD_CLUSTER_ARN",
    "alb": {
      "enabled": false
    },
    "keda": {
      "auth": {
        "aws": {
          "irsa": {
            "roleArn": "$KEDA_ROLE_ARN"
          }
        }
      }
    }
  }
  EOF
  ```

**Schritt 3: Versuchen Sie erneut, den Inference Operator zu installieren**

1. Installieren Sie das Inferenzoperator-Add-on mit der aktualisierten Konfiguration erneut:

   ```
   # Delete the failed add-on if it exists
   aws eks delete-addon \
       --cluster-name $EKS_CLUSTER_NAME \
       --addon-name amazon-sagemaker-hyperpod-inference \
       --region $REGION 2>/dev/null || echo "Add-on not found, proceeding with installation"
   
   # Wait for deletion to complete
   sleep 30
   
   # Reinstall with updated configuration
   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.json \
       --region $REGION
   ```

1. Stellen Sie sicher, dass der ALB Controller funktioniert:

   ```
   # Check ALB Controller pods
   kubectl get pods -n hyperpod-inference-system | grep aws-load-balancer-controller
   kubectl get pods -n kube-system | grep aws-load-balancer-controller
   
   # Check service account annotations
   kubectl describe serviceaccount aws-load-balancer-controller -n hyperpod-inference-system 2>/dev/null
   kubectl describe serviceaccount aws-load-balancer-controller -n kube-system 2>/dev/null
   ```

## Die Installation des Inference Add-ons ist aufgrund eines fehlenden KEDA-Operators fehlgeschlagen
<a name="sagemaker-hyperpod-model-deployment-ts-missing-keda"></a>

**Problem:** Die Erstellung des Add-ons für den Inferenzoperator schlägt fehl, weil der Operator KEDA (Kubernetes Event Driven Autoscaler) nicht installiert oder für das Inferenz-Add-on nicht richtig konfiguriert ist.

**Symptome und Diagnose:**

**Fehlermeldungen:**

Die folgenden Fehler treten in den Protokollen zur Erstellung von Add-ons oder in den Protokollen der Inferenzoperatoren auf:

```
KEDA operator not installed (missing keda-operator pods). 
KEDA can be installed separately in any namespace or via the Inference addon.
```

**Diagnoseschritte:**

1. Prüfen Sie, ob der KEDA-Operator installiert ist:

   ```
   # Check for KEDA operator pods in common namespaces
   kubectl get pods -n keda-system | grep keda-operator 2>/dev/null || echo "KEDA not found in keda-system namespace"
   kubectl get pods -n kube-system | grep keda-operator 2>/dev/null || echo "KEDA not found in kube-system namespace"
   kubectl get pods -n hyperpod-inference-system | grep keda-operator 2>/dev/null || echo "KEDA not found in inference namespace"
   
   # Check for KEDA CRDs
   kubectl get crd | grep keda 2>/dev/null || echo "KEDA CRDs not found"
   
   # Check KEDA service account
   kubectl get serviceaccount keda-operator -A 2>/dev/null || echo "KEDA service account not found"
   ```

1. Überprüfen Sie die Konfiguration des Zusatzmoduls 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,ConfigurationValues:configurationValues}" \
       --output json
   ```

**Auflösung**

Wählen Sie je nach Konfiguration eine der folgenden Optionen:

**Option 1: Lassen Sie das Inferenz-Add-on KEDA installieren (empfohlen)**
+ Stellen Sie sicher, dass die KEDA-Rolle in Ihrer Add-On-Konfiguration erstellt und ordnungsgemäß konfiguriert ist:

  ```
  # Verify KEDA role exists
  export KEDA_ROLE_ARN=$(aws iam get-role --role-name keda-operator-role --query 'Role.Arn' --output text 2>/dev/null || echo "Role not found")
  echo "KEDA Role ARN: $KEDA_ROLE_ARN"
  
  # Update your addon-config.json to enable KEDA
  cat > addon-config.json << EOF
  {
    "executionRoleArn": "$EXECUTION_ROLE_ARN",
    "tlsCertificateS3Bucket": "$BUCKET_NAME",
    "hyperpodClusterArn": "$HYPERPOD_CLUSTER_ARN",
    "alb": {
      "serviceAccount": {
        "create": true,
        "roleArn": "$ALB_ROLE_ARN"
      }
    },
    "keda": {
      "enabled": true,
      "auth": {
        "aws": {
          "irsa": {
            "roleArn": "$KEDA_ROLE_ARN"
          }
        }
      }
    }
  }
  EOF
  ```

**Option 2: Verwenden Sie die vorhandene KEDA-Installation**
+ Wenn Sie KEDA bereits installiert haben, konfigurieren Sie das Add-on so, dass es die bestehende Installation verwendet:

  ```
  # Update your addon-config.json to disable KEDA installation
  cat > addon-config.json << EOF
  {
    "executionRoleArn": "$EXECUTION_ROLE_ARN",
    "tlsCertificateS3Bucket": "$BUCKET_NAME",
    "hyperpodClusterArn": "$HYPERPOD_CLUSTER_ARN",
    "alb": {
      "serviceAccount": {
        "create": true,
        "roleArn": "$ALB_ROLE_ARN"
      }
    },
    "keda": {
      "enabled": false
    }
  }
  EOF
  ```

**Schritt 3: Versuchen Sie erneut, den Inference Operator zu installieren**

1. Installieren Sie das Inferenzoperator-Add-on mit der aktualisierten Konfiguration erneut:

   ```
   # Delete the failed add-on if it exists
   aws eks delete-addon \
       --cluster-name $EKS_CLUSTER_NAME \
       --addon-name amazon-sagemaker-hyperpod-inference \
       --region $REGION 2>/dev/null || echo "Add-on not found, proceeding with installation"
   
   # Wait for deletion to complete
   sleep 30
   
   # Reinstall with updated configuration
   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.json \
       --region $REGION
   ```

1. Stellen Sie sicher, dass KEDA funktioniert:

   ```
   # Check KEDA pods
   kubectl get pods -n hyperpod-inference-system | grep keda
   kubectl get pods -n kube-system | grep keda
   kubectl get pods -n keda-system | grep keda 2>/dev/null
   
   # Check KEDA CRDs
   kubectl get crd | grep scaledobjects
   kubectl get crd | grep scaledjobs
   
   # Check KEDA service account annotations
   kubectl describe serviceaccount keda-operator -n hyperpod-inference-system 2>/dev/null
   kubectl describe serviceaccount keda-operator -n kube-system 2>/dev/null
   kubectl describe serviceaccount keda-operator -n keda-system 2>/dev/null
   ```