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.
Vergleich der EKS-Fähigkeit für Argo CD mit der selbstverwalteten Argo-CD
Die EKS-Funktion für Argo CD bietet ein vollständig verwaltetes Argo-CD-Erlebnis, das in EKS ausgeführt wird. Einen allgemeinen Vergleich der EKS-Funktionen mit selbstverwalteten Lösungen finden Sie unter. Überlegungen zu den EKS-Fähigkeiten Dieses Thema konzentriert sich auf die CD-specific Unterschiede zwischen Argo, einschließlich Authentifizierung, Multi-Cluster-Management und Upstream-Feature-Unterstützung.
Unterschiede zur Upstream-Argo-CD
Die EKS-Capability for Argo-CD basiert auf der Upstream-Argo-CD, unterscheidet sich jedoch darin, wie auf sie zugegriffen wird, wie sie konfiguriert und in Dienste integriert wird. AWS
RBAC und Authentifizierung: Die Funktion umfasst drei RBAC-Rollen (Admin, Editor, Viewer) und verwendet AWS Identity Center für die Authentifizierung anstelle der integrierten Authentifizierung von Argo CD. Konfigurieren Sie Rollenzuordnungen über den rbacRoleMapping Parameter der Funktion, um Identity Center-Gruppen Argo-CD-Rollen zuzuordnen, nicht über Argo-CDs. argocd-rbac-cm ConfigMap Die Argo-CD-Benutzeroberfläche wird mit einer eigenen direkten URL gehostet (diese finden Sie in der EKS-Konsole auf der Registerkarte „Funktionen“ Ihres Clusters), und für den API-Zugriff werden AWS Authentifizierung und Autorisierung über IAM verwendet.
Cluster-Konfiguration: Die Funktion konfiguriert nicht automatisch lokale Cluster- oder Hub-and-Spoke-Topologien. Sie konfigurieren Ihre Bereitstellungszielcluster und EKS-Zugriffseinträge. Die Funktion unterstützt nur Amazon EKS-Cluster als Bereitstellungsziele, die EKS-Cluster-ARNs verwenden (keine Kubernetes-API-Server-URLs). Die Funktion fügt den lokalen Cluster (kubernetes.default.svc) nicht automatisch als Bereitstellungsziel hinzu. Um ihn auf demselben Cluster bereitzustellen, auf dem die Funktion erstellt wurde, registrieren Sie diesen Cluster explizit anhand seines ARN.
Vereinfachter Remote-Cluster-Zugriff: Die Funktion vereinfacht Multi-Cluster-Bereitstellungen, indem sie mithilfe von EKS Access Entries Argo CD-Zugriff auf Remote-Cluster gewährt, sodass die Konfiguration von IAM-Rollen für Dienstkonten (IRSA) oder die Einrichtung kontoübergreifender IAM-Rollenannahmen nicht erforderlich ist. Die Funktion bietet auch transparenten Zugriff auf vollständig private EKS-Cluster, ohne dass VPC-Peering oder eine spezielle Netzwerkkonfiguration erforderlich sind. Die Konnektivität zwischen der Argo-CD-Funktion und privaten Remote-Clustern wird automatisch AWS verwaltet.
Direkte AWS Serviceintegration: Die Funktion ermöglicht eine direkte Integration mit AWS Diensten über die IAM-Berechtigungen der Capability Role. Sie können CodeCommit Repositorys, ECR-Helm-Diagramme und CodeConnections direkt in Anwendungsressourcen referenzieren, ohne Repository-Konfigurationen erstellen zu müssen. Dies vereinfacht die Authentifizierung und macht die Verwaltung separater Anmeldeinformationen für AWS Dienste überflüssig. Details dazu finden Sie unter Repository-Zugriff konfigurieren.
Namespace-Unterstützung: Für diese Funktion müssen Sie einen einzigen Namespace angeben, ApplicationSet in dem die Argo-CD-Anwendung und AppProject benutzerdefinierte Ressourcen erstellt werden müssen.
Anmerkung
Diese Namespace-Einschränkung gilt nur für die eigenen benutzerdefinierten Ressourcen von Argo CD (Application,,). ApplicationSet AppProject Ihre Anwendungs-Workloads können in jedem Namespace in jedem Zielcluster bereitgestellt werden. Wenn Sie beispielsweise die Funktion mit einem Namespace erstellenargocd, müssen alle Anwendungs-CRs im argocd Namespace erstellt werden, aber diese Anwendungen können Workloads in,, oder einem anderen Namespace bereitstellen. default production staging
Anmerkung
Für die verwaltete Funktion gelten bestimmte Anforderungen an die CLI-Nutzung und -Konfiguration: AppProject
-
Wenn Sie die Argo CD CLI verwenden, geben Sie Anwendungen mit dem Namespace-Präfix an:
argocd app sync namespace/appname -
AppProject Ressourcen müssen angeben
.spec.sourceNamespaces, um zu definieren, welche Namespaces das Projekt nach Anwendungen durchsuchen kann (normalerweise auf den Namespace gesetzt, den Sie bei der Erstellung der Fähigkeit angegeben haben) -
Anmerkungen zur Ressourcenverfolgung verwenden das folgende Format:
namespace_appname:group/kind:namespace/name
Nicht unterstützte Funktionen: Die folgenden Funktionen sind in der verwalteten Funktion nicht verfügbar:
-
Config Management Plugins (CMPs) für die Generierung benutzerdefinierter Manifeste
-
Controller für Benachrichtigungen
-
Benutzerdefinierte SSO-Anbieter (nur AWS Identity Center wird unterstützt, einschließlich föderierter Identitäten von Drittanbietern über AWS Identity Center)
-
Benutzeroberflächenerweiterungen und benutzerdefinierte Banner
-
Direkter Zugriff auf
argocd-paramsund die meisten Konfigurationen ConfigMaps (eine Teilmenge vonargocd-cmFeldern) werden unterstützt. SieheArgo CD-Einstellungen konfigurieren) -
Änderung des Synchronisierungs-Timeouts (auf 120 Sekunden festgelegt)
Kompatibilität: Die Anwendungen ApplicationSets funktionieren genauso wie die Upstream-Argo-CD, ohne dass Änderungen an Ihren Manifesten vorgenommen werden. Die Funktion verwendet dieselben Kubernetes-APIs und CRDs, sodass Tools wie kubectl auf dieselbe Weise funktionieren. Die Funktion unterstützt vollständig Anwendungen und GitOps Workflows mit automatischer Synchronisierung ApplicationSets, Multi-Cluster-Bereitstellungen, Synchronisierungsrichtlinien (automatisiert, bereinigen, selbstreparieren), Synchronisierungswellen und Hooks, Integritätsbeurteilung für Standard-Kubernetes-Ressourcen, Rollback-Funktionen, Git-Repository-Quellen (HTTPS und SSH), Helm-, Kustomize- und einfache YAML-Manifeste, GitHub App-Anmeldeinformationen, Projekte für Mehrmandantenfähigkeit sowie Aus- und Einschlüsse von Ressourcen.
Verwenden der Argo CD CLI mit der verwalteten Funktion
Die Argo CD CLI funktioniert für die meisten Operationen genauso wie die Upstream-Argo CD, aber Authentifizierung und Cluster-Registrierung unterscheiden sich.
Voraussetzungen
Installieren Sie die Argo CD CLI gemäß den Upstream-Installationsanweisungen.
Konfiguration
Konfigurieren Sie die CLI mithilfe von Umgebungsvariablen:
-
Rufen Sie die Argo CD-Server-URL von der EKS-Konsole (auf der Registerkarte „Funktionen“ Ihres Clusters) ab oder verwenden Sie die AWS CLI. Das
https://Präfix muss entfernt werden:export ARGOCD_SERVER=$(aws eks describe-capability \ --cluster-namemy-cluster\ --capability-namemy-argocd\ --query 'capability.configuration.argoCd.serverUrl' \ --output text \ --regionregion-code| sed 's|^https://||') -
Generieren Sie ein Konto-Token über die Argo-CD-Benutzeroberfläche (Einstellungen → Konten → Admin → Neues Token generieren) und legen Sie es dann als Umgebungsvariable fest:
export ARGOCD_AUTH_TOKEN="your-token-here"
Wichtig
Diese Konfiguration verwendet das Admin-Account-Token für die Ersteinrichtung und die Entwicklungsworkflows. Verwenden Sie für Anwendungsfälle in der Produktion projektspezifische Rollen und Token, um dem Prinzip der geringsten Rechte zu folgen. Weitere Informationen zur Konfiguration von Projektrollen und RBAC finden Sie unter. Argo-CD-Berechtigungen konfigurieren
-
Stellen Sie die erforderliche gRPC-Option ein:
export ARGOCD_OPTS="--grpc-web"
Wenn diese Umgebungsvariablen gesetzt sind, können Sie die Argo CD CLI ohne den argocd login Befehl verwenden.
Die wichtigsten Unterschiede:
Für die verwaltete Funktion gelten die folgenden CLI-Einschränkungen:
-
argocd adminBefehle werden nicht unterstützt (sie erfordern direkten Pod-Zugriff) -
argocd loginwird nicht unterstützt (verwenden Sie stattdessen Konto- oder Projekt-Token) -
argocd cluster adderfordert das--aws-cluster-nameFlag mit dem EKS-Cluster-ARN
Beispiel: Registrieren Sie einen Cluster
Registrieren Sie einen EKS-Cluster für die Anwendungsbereitstellung:
# Get the cluster ARN CLUSTER_ARN=$(aws eks describe-cluster \ --namemy-cluster\ --query 'cluster.arn' \ --output text) # Register the cluster argocd cluster add $CLUSTER_ARN \ --aws-cluster-name $CLUSTER_ARN \ --name in-cluster \ --project default
Die vollständige Argo CD CLI-Dokumentation finden Sie in der Argo CD CLI-Referenz.
Migrationspfad
Sie können von der selbstverwalteten Argo-CD zur verwalteten Funktion migrieren:
-
Überprüfen Sie Ihre aktuelle Argo-CD-Konfiguration auf nicht unterstützte Funktionen (Benachrichtigungs-Controller, CMPs, benutzerdefinierte Integritätsprüfungen, Benutzeroberflächenerweiterungen)
-
Skalieren Sie Ihre selbstverwalteten Argo-CD-Controller so, dass keine Replikate mehr vorhanden sind, um Konflikte zu vermeiden
-
Erstellen Sie eine Argo-CD-Funktionsressource auf Ihrem Cluster
-
Exportieren Sie Ihre vorhandenen Anwendungen ApplicationSets und AppProjects
-
Migrieren Sie Repository-Anmeldeinformationen, Cluster-Geheimnisse und Vorlagen für Repository-Anmeldeinformationen (Berichte)
-
Wenn Sie GPG-Schlüssel, TLS-Zertifikate oder bekannte SSH-Hosts verwenden, migrieren Sie auch diese Konfigurationen
-
Aktualisieren Sie die
destination.serverFelder, um Clusternamen oder EKS-Cluster-ARNs zu verwenden -
Wenden Sie sie auf die verwaltete Argo-CD-Instanz an
-
Stellen Sie sicher, dass die Anwendungen korrekt synchronisiert werden
-
Nehmen Sie Ihre selbstverwaltete Argo-CD-Installation außer Betrieb
Die verwaltete Funktion verwendet dieselben Argo-CD-APIs und Ressourcendefinitionen, sodass Ihre vorhandenen Manifeste mit minimalen Änderungen funktionieren.
Nächste Schritte
-
Erstellen einer Argo CD-Funktion- Erstellen Sie eine Argo-CD-Capability-Ressource
-
Arbeiten mit Argo CD- Stellen Sie Ihre erste Anwendung bereit
-
Überlegungen zu Argo CD- Konfigurieren Sie die AWS Identity Center-Integration