View a markdown version of this page

Konfigurieren Sie den privaten Endpunktzugriff für Argo CD - 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 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.

Konfigurieren Sie den privaten Endpunktzugriff für Argo CD

Standardmäßig können Sie über das öffentliche Internet auf den Argo-CD-Endpunkt zugreifen. Sie können den privaten Endpunktzugriff so konfigurieren, dass der Verkehr zwischen Ihrer VPC und dem Argo CD-Endpunkt im AWS Netzwerk bleibt, ohne das öffentliche Internet zu nutzen.

Wenn Sie den privaten Zugriff aktivieren, AWS aktualisiert das Domain Name System (DNS), sodass der Hostname des Argo-CD-Endpunkts in private IP-Adressen aufgelöst wird, die Ihrem VPC-Endpunkt zugeordnet sind. Sie müssen über eine Netzwerkverbindung zu diesen privaten IPs verfügen (über Ihre VPC, eine VPN-Verbindung (Virtual Private Network) oder AWS Direct Connect), um auf den Argo CD-Endpunkt zugreifen zu können.

Wie funktioniert der private Zugriff

Wenn Sie den privaten Zugriff für Ihre Argo-CD-Funktion konfigurieren, gehen Sie wie folgt vor:

  1. Sie erstellen einen VPC-Endpunkt für den com.amazonaws.region-code.eks-capabilities Service in Ihrer VPC.

  2. Sie geben die VPC-Endpunkt-ID an, wenn Sie die Argo-CD-Funktion erstellen oder aktualisieren.

  3. AWS konfiguriert DNS-Einträge so, dass der Hostname des Argo-CD-Endpunkts in private IP-Adressen aufgelöst wird, die Ihrem VPC-Endpunkt zugeordnet sind.

  4. Der gesamte Datenverkehr zum Argo-CD-Endpunkt fließt privat über den VPC-Endpunkt.

Voraussetzungen

  • Ein Amazon Elastic Kubernetes Service (Amazon EKS) -Cluster mit einer aktiven Argo-CD-Funktion (siehe) Erstellen einer Argo CD-Funktion

  • Vertrautheit mit Amazon VPC-Konzepten, einschließlich Subnetzen, Sicherheitsgruppen und VPC-Schnittstellen-Endpunkten

  • Eine VPC mit Subnetzen in den Availability Zones, auf die Sie privaten Zugriff wünschen

  • AWS Version der Befehlszeilenschnittstelle (AWS CLI) 2.12.3 oder höher

Schritt 1: Erstellen Sie einen VPC-Endpunkt für eks-Capabilities

Erstellen Sie einen VPC-Schnittstellen-Endpunkt für den com.amazonaws.region-code.eks-capabilities Service.

Console
  1. Öffnen Sie die Amazon VPC-Konsole.

  2. Wählen Sie im linken Navigationsbereich die Option Endpoints (Endpunkte) aus.

  3. Wählen Sie Endpunkt erstellen aus.

  4. Wählen Sie als Dienstkategorie die Option AWS Dienste aus.

  5. Geben Sie im Suchfeld ein eks-capabilities und wählen Sie auscom.amazonaws.region-code.eks-capabilities.

  6. Wählen Sie für VPC die VPC aus, von der aus Sie auf den Argo-CD-Endpunkt zugreifen möchten.

  7. Wählen Sie für Subnetze in jeder Availability Zone, auf die Sie privaten Zugriff wünschen, ein Subnetz aus.

  8. Wählen Sie für Sicherheitsgruppen eine Sicherheitsgruppe aus, die eingehenden HTTPS-Verkehr (Port 443) aus Ihren Client-Netzwerken zulässt.

  9. Wählen Sie Endpunkt erstellen aus.

  10. Notieren Sie sich die VPC-Endpunkt-ID (z. B.vpce-0123456789abcdef0).

CLI

region-codeErsetzen Sie durch Ihre AWS Region, vpc-id durch Ihre VPC-ID, subnet-id-1 subnet-id-2 durch Subnetz-IDs in verschiedenen Availability Zones und sg-id durch eine Sicherheitsgruppe, die eingehenden HTTPS-Verkehr zulässt.

aws ec2 create-vpc-endpoint \ --region region-code \ --vpc-endpoint-type Interface \ --service-name com.amazonaws.region-code.eks-capabilities \ --vpc-id vpc-id \ --subnet-ids subnet-id-1 subnet-id-2 \ --security-group-ids sg-id

Beachten Sie die VpcEndpointId in der Antwort.

Wichtig

Stellen Sie sicher, dass die mit dem VPC-Endpunkt verbundene Sicherheitsgruppe eingehenden HTTPS-Verkehr (Port 443) zulässt. Die Datenverkehrsquelle muss alle Netzwerke umfassen, in denen Ihre Benutzer oder Anwendungen auf den Argo CD-Endpunkt zugreifen.

Schritt 2: Konfigurieren Sie den privaten Zugriff auf die Argo-CD-Funktion

Sobald der VPC-Endpunkt verfügbar ist, konfigurieren Sie die Argo-CD-Funktion so, dass er verwendet wird. Sie können den privaten Zugriff konfigurieren, wenn Sie eine neue Funktion erstellen oder eine bestehende aktualisieren.

Erstellen Sie eine neue Funktion mit privatem Zugriff

Fügen Sie das networkAccess in den create-capability Befehl ein. Ersetzen Sie region-codemy-cluster, und andere Platzhalter durch Ihre Werte:

aws eks create-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-argocd \ --type ARGOCD \ --role-arn arn:aws:iam::111122223333:role/ArgoCDCapabilityRole \ --configuration '{ "argoCd": { "awsIdc": { "idcInstanceArn": "arn:aws:sso:::instance/ssoins-1234567890abcdef", "idcRegion": "idc-region-code" }, "rbacRoleMappings": [{ "role": "ADMIN", "identities": [{ "id": "user-id", "type": "SSO_USER" }] }], "networkAccess": { "vpceIds": ["vpce-0123456789abcdef0"] } } }'

Aktualisieren Sie eine bestehende Funktion, um privaten Zugriff zu ermöglichen

Ersetzen Sieregion-code, my-clustermy-argocd, und die VPC-Endpunkt-ID durch Ihre Werte:

aws eks update-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-argocd \ --configuration '{ "argoCd": { "networkAccess": { "vpceIds": ["vpce-0123456789abcdef0"] } } }'

Warten Sie, bis das Funktionsupdate abgeschlossen ist:

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

Der Status kehrt zu dem ACTIVE Zeitpunkt zurück, an dem das Update abgeschlossen ist.

Schritt 3: Überprüfen Sie die DNS-Auflösung und Konnektivität

Nachdem die Funktion aktiviert wurde und der private Zugriff konfiguriert wurde, stellen Sie sicher, dass der Hostname des Argo-CD-Endpunkts in private IP-Adressen aufgelöst wird.

Führen Sie den folgenden nslookup Befehl in einem beliebigen Netzwerk aus:

nslookup your-argocd-endpoint.eks-capabilities.region-code.amazonaws.com

Die Antwort sollte private IP-Adressen enthalten (z. B. Adressen in RFC 1918-Bereichen wie 10.x.x.x oder172.16.x.x).

Wenn der Endpunkt nicht in private IPs aufgelöst wird, stellen Sie sicher, dass:

  • Der Funktionsstatus lautet ACTIVE (AWS erstellt DNS-Einträge, nachdem die Funktion aktiv wird)

  • Der VPC-Endpunkt befindet sich im Status available

  • Die VPC-Endpunkt-ID in der Funktionskonfiguration entspricht dem Endpunkt, den Sie erstellt haben

Anmerkung

Nachdem Sie den privaten Zugriff konfiguriert haben, wird der Hostname des Argo-CD-Endpunkts in private IP-Adressen aufgelöst. Um eine Verbindung herzustellen, müssen Sie über Ihre VPC, eine VPN-Verbindung oder AWS Direct Connect eine Netzwerkverbindung zu diesen privaten IPs haben.

Deaktivieren Sie den privaten Zugriff

Um den privaten Zugriff zu deaktivieren und den Zugriff auf öffentliche Endpunkte wiederherzustellen, aktualisieren Sie die Funktion zum Entfernen der VPC-Endpunkt-IDs:

aws eks update-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-argocd \ --configuration '{ "argoCd": { "networkAccess": { "vpceIds": [] } } }'

Überlegungen

  • Nachdem Sie den privaten Zugriff aktiviert haben, ist der Argo CD-Endpunkt nur innerhalb Ihrer VPC oder der damit verbundenen Netzwerke (z. B. über VPN oder AWS Direct Connect) erreichbar.

  • Der VPC-Endpunkt muss im available Status bleiben, damit der private Zugriff funktioniert. Wenn Sie den VPC-Endpunkt löschen, verlieren Sie den Zugriff auf den Argo-CD-Endpunkt, bis Sie einen neuen Endpunkt erstellen und die Funktion aktualisieren.

  • AWS unterstützt derzeit keine VPC-Endpunktrichtlinien für den eks-capabilities Service-Endpunkt.