Erstellen Sie eine Argo-CD-Funktion mit eksctl - 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 Argo-CD-Funktion mit eksctl

In diesem Thema wird beschrieben, wie Sie mit eksctl eine Argo-CD-Funktion 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

Erstellen Sie eine Vertrauensrichtliniendatei:

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

Für diese grundlegende Einrichtung sind keine zusätzlichen IAM-Richtlinien erforderlich. Wenn Sie Secrets Manager für Repository-Anmeldeinformationen oder verwenden möchten CodeConnections, müssen Sie der Rolle Berechtigungen hinzufügen. Beispiele für IAM-Richtlinien und Anleitungen zur Konfiguration finden Sie unter Anwendungsgeheimnisse mit AWS Secrets Manager verwalten undConnect zu Git-Repositorys her mit AWS CodeConnections.

Schritt 2: Holen Sie sich Ihre AWS Identity Center-Konfiguration

Rufen Sie den ARN und die Benutzer-ID Ihrer Identity Center-Instanz für die RBAC-Konfiguration ab:

# Get your Identity Center instance ARN aws sso-admin list-instances --query 'Instances[0].InstanceArn' --output text # Get your Identity Center region aws sso-admin list-instances --query 'Instances[0].IdentityStoreId' --output text | cut -d'/' -f1 # Get a user ID for admin access (replace 'your-username' with your Identity Center username) aws identitystore list-users \ --identity-store-id $(aws sso-admin list-instances --query 'Instances[0].IdentityStoreId' --output text) \ --query 'Users[?UserName==`your-username`].UserId' --output text

Notieren Sie sich diese Werte — Sie benötigen sie im nächsten Schritt.

Schritt 3: Erstellen Sie eine eksctl-Konfigurationsdatei

Erstellen Sie eine Datei mit dem Namen argocd-capability.yaml und dem folgenden Inhalt. Ersetzen Sie die Platzhalterwerte durch Ihren Clusternamen, Ihre Region, Ihren IAM-Rollen-ARN, Ihren Identity Center-Instanz-ARN, Ihre Identity Center-Region und Ihre Benutzer-ID:

apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: my-cluster region: region-code capabilities: - name: my-argocd type: ARGOCD roleArn: arn:aws:iam::[.replaceable]111122223333:role/ArgoCDCapabilityRole configuration: argocd: awsIdc: idcInstanceArn: arn:aws:sso:::instance/ssoins-123abc idcRegion: idc-region-code rbacRoleMappings: - role: ADMIN identities: - id: 38414300-1041-708a-01af-5422d6091e34 type: SSO_USER
Anmerkung

Sie können den RBAC-Zuordnungen mehrere Benutzer oder Gruppen hinzufügen. Verwenden Sie für Gruppen die Gruppen-ID type: SSO_GROUP und geben Sie sie an. Verfügbare Rollen sind ADMINEDITOR, undVIEWER.

Schritt 4: Erstellen Sie die Argo-CD-Funktion

Wenden Sie die Konfigurationsdatei an:

eksctl create capability -f argocd-capability.yaml

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

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

Überprüfen Sie den Status der Fähigkeit. 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.

eksctl get capability \ --region region-code \ --cluster my-cluster \ --name my-argocd

Die Funktion ist bereit, wenn der Status angezeigt wirdACTIVE.

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

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

kubectl api-resources | grep argoproj.io

Sie sollten die Liste der ApplicationSet Ressourcentypen sehenApplication.

Nächste Schritte