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 unter, 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
Erstellen Sie mit eksctl eine Argo-CD-Funktion auf Ihrem Amazon EKS-Cluster.
Anmerkung
Für die folgenden Schritte ist eine eksctl-Version oder höher erforderlich. 0.215.0 Führen Sie den Befehl aus, um Ihre Version zu überprüfen. eksctl version
Voraussetzungen
-
AWS Identity Center konfiguriert — Argo CD benötigt AWS Identity Center für die Authentifizierung. Lokale Benutzer werden nicht unterstützt. Wenn Sie AWS Identity Center nicht eingerichtet haben, finden Sie unter Erste Schritte mit AWS Identity Center eine Identity Center-Instanz und Benutzer hinzufügen und Gruppen hinzufügen, um Benutzer und Gruppen für den Argo-CD-Zugriff zu erstellen.
-
Mindestens ein Benutzer oder eine Gruppe in AWS Identity Center — Sie müssen mindestens einen Benutzer oder eine Gruppe in Ihrer Identity Center-Instanz konfiguriert haben, um Argo CD RBAC-Rollenzuordnungen zuzuweisen und Zugriff auf die Argo CD-Benutzeroberfläche zu gewähren.
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 Konfiguration des Identity Centers
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 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.
(Optional) Konfigurieren Sie einen privaten Endpunkt
Standardmäßig sind die Argo CD-Benutzeroberfläche und der API-Endpunkt öffentlich über das Internet zugänglich. Wenn Sie den Zugriff einschränken müssen, können Sie einen VPC-Endpunkt konfigurieren. Dies wird für Umgebungen mit strengen Netzwerksicherheitsanforderungen empfohlen.
Erstellen Sie einen VPC-Endpunkt für EKS-Funktionen
Erstellen Sie einen Schnittstellen-VPC-Endpunkt für den EKS-Capabilities-Dienst in Ihrer VPC. Ersetzen Sievpc-id, subnet-id-1 subnet-id-2sg-id, und region-code durch Ihre eigenen Werte:
aws ec2 create-vpc-endpoint \ --vpc-endpoint-type Interface \ --service-name com.amazonaws.region-code.eks-capabilities \ --vpc-idvpc-id\ --subnet-idssubnet-id-1 subnet-id-2\ --security-group-idssg-id\ --regionregion-code
Anmerkung
-
Die Subnetze sollten sich aus Gründen der Hochverfügbarkeit in verschiedenen Availability Zones befinden.
-
Die Sicherheitsgruppe muss eingehenden HTTPS-Verkehr (Port 443) von den Netzwerken zulassen, die auf die Argo CD-Benutzeroberfläche und -API zugreifen müssen.
-
Notieren Sie sich die VPC-Endpunkt-ID, die von diesem Befehl zurückgegeben wird. Sie benötigen sie, wenn Sie die Funktion erstellen.
Stellen Sie sicher, dass der VPC-Endpunkt verfügbar ist
aws ec2 describe-vpc-endpoints \ --vpc-endpoint-idsvpce-xxxxxxxx\ --query 'VpcEndpoints[0].State' \ --output text \ --regionregion-code
Warten Sie, bis der Status angezeigt wird, available bevor Sie fortfahren.
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 den Namen Ihres Clusters, die Cluster-Region, den IAM-Rollen-ARN, den Identity Center-Instanz-ARN, die Identity Center-Region und die Benutzer-ID:
apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name:my-clusterregion:cluster-region-codecapabilities: - name: my-argocd type: ARGOCD roleArn:arn:aws:iam::111122223333:role/ArgoCDCapabilityRoledeletePropagationPolicy: RETAIN configuration: argocd: awsIdc: idcInstanceArn:arn:aws:sso:::instance/ssoins-123abcidcRegion:idc-region-coderbacRoleMappings: - role: ADMIN identities: - id:38414300-1041-708a-01af-5422d6091e34type: 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.
Wenn Sie einen VPC-Endpunkt für den privaten Zugriff konfiguriert haben, fügen Sie den networkConfiguration Abschnitt zur Funktionsdefinition hinzu. Ersetzen Sie ihn vpce-xxxxxxxx durch Ihre VPC-Endpunkt-ID:
apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name:my-clusterregion:cluster-region-codecapabilities: - name: my-argocd type: ARGOCD roleArn: arn:aws:iam::111122223333:role/ArgoCDCapabilityRole deletePropagationPolicy: RETAIN networkConfiguration: elasticNetworkInterfaces: vpcEndpointId:vpce-xxxxxxxxconfiguration: argocd: awsIdc: idcInstanceArn:arn:aws:sso:::instance/ssoins-123abcidcRegion:idc-region-coderbacRoleMappings: - role: ADMIN identities: - id:38414300-1041-708a-01af-5422d6091e34type: SSO_USER
Anmerkung
Wenn der private Endpunkt aktiviert ist, sind die Benutzeroberfläche und die API von Argo CD nur über den VPC-Endpunkt zugänglich. Benutzer müssen mit der VPC (oder einem Peering-Netzwerk) verbunden sein, um auf die Argo-CD-Schnittstelle zugreifen zu können.
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 durch die AWS Region, in der sich Ihr Cluster befindet, und my-cluster ersetzen Sie es durch den Namen Ihres Clusters.
eksctl get capability \ --regionregion-code\ --clustermy-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 aktiv ist, stellen Sie sicher, dass benutzerdefinierte Argo CD-Ressourcen in Ihrem Cluster verfügbar sind:
kubectl api-resources | grep argoproj.io
Sie sollten alle ApplicationSet Ressourcentypen aufgelistet sehenApplication.
Nächste Schritte
-
Arbeiten mit Argo CD- Erfahren Sie, wie Sie Argo CD-Anwendungen erstellen und verwalten
-
Überlegungen zu Argo CD- Konfigurieren Sie SSO und Multi-Cluster-Zugriff
-
Arbeiten mit Kapazitätsressourcen- Verwalten Sie Ihre Argo CD-Funktionsressource