

 **Unterstützung für die Verbesserung dieser Seite beitragen** 

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.

Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link **Diese Seite bearbeiten auf**, der sich im rechten Bereich jeder Seite befindet.

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.

# Erstellen Sie eine Kro-Fähigkeit mit eksctl
<a name="kro-create-eksctl"></a>

In diesem Thema wird beschrieben, wie Sie mit eksctl eine Kro-Fähigkeit (Kube Resource Orchestrator) erstellen.

**Anmerkung**  
Für die folgenden Schritte ist die Version eksctl oder höher erforderlich. `0.220.0` Führen Sie den Befehl aus, um Ihre Version zu überprüfen. `eksctl version`

## Schritt 1: Erstellen Sie eine IAM-Capability-Rolle
<a name="_step_1_create_an_iam_capability_role"></a>

Erstellen Sie eine Vertrauensrichtliniendatei:

```
cat > kro-trust-policy.json << 'EOF'
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "capabilities.eks.amazonaws.com"
      },
      "Action": [
        "sts:AssumeRole",
        "sts:TagSession"
      ]
    }
  ]
}
EOF
```

Erstellen Sie die IAM-Rolle:

```
aws iam create-role \
  --role-name KROCapabilityRole \
  --assume-role-policy-document file://kro-trust-policy.json
```

**Anmerkung**  
Im Gegensatz zu ACK und Argo CD benötigt kro keine zusätzlichen IAM-Berechtigungen, die über die Vertrauensrichtlinie hinausgehen. Kro arbeitet ausschließlich innerhalb Ihres Clusters und führt keine API-Aufrufe durch. AWS 

## Schritt 2: Erstellen Sie die Kro-Fähigkeit
<a name="_step_2_create_the_kro_capability"></a>

Erstellen Sie die Kro-Fähigkeit mit eksctl. *region-code*Ersetzen Sie es durch die AWS Region, in der sich Ihr Cluster befindet, und *my-cluster* ersetzen Sie es durch den Namen Ihres Clusters.

```
eksctl create capability \
  --region region-code \
  --cluster my-cluster \
  --name my-kro \
  --type KRO \
  --role-arn arn:aws:iam::[.replaceable]111122223333:role/KROCapabilityRole
```

Der Befehl kehrt sofort zurück, aber es dauert einige Zeit, bis die Funktion aktiv wird.

## Schritt 3: Stellen Sie sicher, dass die Funktion aktiv ist
<a name="_step_3_verify_the_capability_is_active"></a>

Überprüfen Sie den Status der Fähigkeit. *region-code*Ersetzen Sie es durch die AWS Region, in der sich Ihr Cluster befindet, und *my-cluster* ersetzen Sie es durch den Namen Ihres Clusters.

```
eksctl get capability \
  --region region-code \
  --cluster my-cluster \
  --name my-kro
```

Die Funktion ist bereit, wenn der Status angezeigt wird`ACTIVE`.

## Schritt 4: Erteilen Sie Berechtigungen zur Verwaltung von Kubernetes-Ressourcen
<a name="_step_4_grant_permissions_to_manage_kubernetes_resources"></a>

Standardmäßig kann Kro nur deren Instanzen erstellen ResourceGraphDefinitions und verwalten. Damit kro die zugrunde liegenden Kubernetes-Ressourcen, die in Ihrem definiert sind, erstellen und verwalten kann ResourceGraphDefinitions, verknüpfen Sie die `AmazonEKSClusterAdminPolicy` Zugriffsrichtlinie mit dem Zugriffseintrag der Funktion.

Rufen Sie den ARN der Funktionsrolle ab:

```
CAPABILITY_ROLE_ARN=$(aws eks describe-capability \
  --region region-code \
  --cluster my-cluster \
  --name my-kro \
  --query 'capability.roleArn' \
  --output text)
```

Ordnen Sie die Cluster-Admin-Richtlinie zu:

```
aws eks associate-access-policy \
  --region region-code \
  --cluster my-cluster \
  --principal-arn $CAPABILITY_ROLE_ARN \
  --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy \
  --access-scope type=cluster
```

**Wichtig**  
Die `AmazonEKSClusterAdminPolicy` gewährt umfassende Berechtigungen zur Erstellung und Verwaltung aller Kubernetes-Ressourcen und soll den Einstieg vereinfachen. Für den produktiven Einsatz sollten Sie restriktivere RBAC-Richtlinien erstellen, die nur die Berechtigungen gewähren, die für die spezifischen Ressourcen erforderlich sind, die Sie verwalten werden. ResourceGraphDefinitions Anleitungen zur Konfiguration von Berechtigungen mit den geringsten Rechten finden Sie unter und. [Kro-Berechtigungen konfigurieren](kro-permissions.md) [Sicherheitsüberlegungen für EKS-Funktionen](capabilities-security.md)

## Schritt 5: Stellen Sie sicher, dass benutzerdefinierte Ressourcen verfügbar sind
<a name="_step_5_verify_custom_resources_are_available"></a>

Nachdem die Funktion aktiviert ist, stellen Sie sicher, dass benutzerdefinierte KRO-Ressourcen in Ihrem Cluster verfügbar sind:

```
kubectl api-resources | grep kro.run
```

Der `ResourceGraphDefinition` Ressourcentyp sollte aufgeführt sein.

## Nächste Schritte
<a name="_next_steps"></a>
+  [Kro-Konzepte](kro-concepts.md)- Verstehen Sie die KRO-Konzepte und die Zusammensetzung der Ressourcen
+  [Kro-Konzepte](kro-concepts.md)- Erfahren Sie mehr über SimpleSchema CEL-Ausdrücke und Kompositionsmuster
+  [Mit Capability-Ressourcen arbeiten](working-with-capabilities.md)- Verwalte deine Ressourcen für Kro-Fähigkeiten