Erstellen Sie eine ACK-Fähigkeit mit der AWS CLI - Amazon EKS

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 ACK-Fähigkeit mit der AWS CLI

In diesem Thema wird beschrieben, wie Sie mithilfe der AWS CLI eine Controllers for Kubernetes-Funktion (ACK) erstellen. AWS

Voraussetzungen

  • AWS CLI — Version 2.12.3 oder höher. Führen Sie den Befehl aus, um Ihre Version zu überprüfenaws --version. Weitere Informationen finden Sie im Benutzerhandbuch für die AWS Befehlszeilenschnittstelle unter Installation.

  • kubectl  – Ein Befehlszeilentool für die Arbeit mit Kubernetes-Clustern. Weitere Informationen finden Sie unter kubectl und eksctl einrichten.

Schritt 1: Erstellen Sie eine IAM-Capability-Rolle

Erstellen Sie eine Vertrauensrichtliniendatei:

cat > ack-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 ACKCapabilityRole \ --assume-role-policy-document file://ack-trust-policy.json

Hängen Sie die AdministratorAccess verwaltete Richtlinie an die Rolle an:

aws iam attach-role-policy \ --role-name ACKCapabilityRole \ --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
Wichtig

Die vorgeschlagene AdministratorAccess Richtlinie gewährt umfassende Berechtigungen und soll den Einstieg vereinfachen. Für den produktiven Einsatz sollten Sie diese Richtlinie durch eine benutzerdefinierte Richtlinie ersetzen, die nur die Berechtigungen gewährt, die für die spezifischen AWS Dienste erforderlich sind, die Sie mit ACK verwalten möchten. Anleitungen zur Erstellung von Richtlinien mit den geringsten Rechten finden Sie unter und. ACK-Berechtigungen konfigurieren Sicherheitsüberlegungen für EKS-Funktionen

Schritt 2: Erstellen Sie die ACK-Fähigkeit

Erstellen Sie die ACK-Fähigkeitsressource auf Ihrem Cluster. region-codeErsetzen Sie es durch die AWS Region, in der sich Ihr Cluster befindet, und my-cluster ersetzen Sie es durch den Namen Ihres Clusters.

aws eks create-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-ack \ --type ACK \ --role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/ACKCapabilityRole \ --delete-propagation-policy RETAIN

Der Befehl wird sofort zurückgegeben, aber es dauert einige Zeit, bis die Funktion aktiv wird, da EKS die erforderliche Funktionsinfrastruktur und die erforderlichen Komponenten erstellt. EKS installiert die benutzerdefinierten Kubernetes-Ressourcendefinitionen, die sich auf diese Funktion beziehen, in Ihrem Cluster, während dieser erstellt wird.

Anmerkung

Wenn Sie eine Fehlermeldung erhalten, dass der Cluster nicht existiert oder Sie keine Berechtigungen haben, überprüfen Sie Folgendes:

  • Der Clustername ist korrekt

  • Ihre AWS CLI ist für die richtige Region konfiguriert

  • Sie verfügen über die erforderlichen IAM-Berechtigungen

Schritt 3: Stellen Sie sicher, dass die Funktion aktiv ist

Warten Sie, bis die Funktion aktiv wird. region-codeErsetzen Sie es durch die AWS Region, in der sich Ihr Cluster befindet, und my-cluster ersetzen Sie es durch den Namen Ihres Clusters.

aws eks describe-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-ack \ --query 'capability.status' \ --output text

Die Funktion ist bereit, wenn der Status angezeigt wirdACTIVE. Fahren Sie erst mit dem nächsten Schritt fort, wenn der Status lautetACTIVE.

Sie können sich auch die vollständigen Funktionsdetails ansehen:

aws eks describe-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-ack

Schritt 4: Stellen Sie sicher, dass benutzerdefinierte Ressourcen verfügbar sind

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

kubectl api-resources | grep services.k8s.aws

Sie sollten eine Reihe von AWS Ressourcen in der APIs Liste sehen.

Anmerkung

Die Funktion für AWS Controller for Kubernetes wird eine Reihe von CRDs für eine Vielzahl von AWS Ressourcen installieren.

Nächste Schritte