View a markdown version of this page

Configuration de l'accès aux terminaux privés pour Argo CD - Amazon EKS

Aidez à améliorer cette page

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configuration de l'accès aux terminaux privés pour Argo CD

Par défaut, vous pouvez accéder au point de terminaison Argo CD via Internet public. Vous pouvez configurer l'accès privé aux points de terminaison afin que le trafic entre votre VPC et le point de terminaison Argo CD reste sur le AWS réseau, sans passer par l'Internet public.

Lorsque vous activez l'accès privé, AWS met à jour le système de noms de domaine (DNS) afin que le nom d'hôte du point de terminaison Argo CD soit converti en adresses IP privées associées à votre point de terminaison VPC. Vous devez disposer d'une connectivité réseau à ces adresses IP privées (via votre VPC, une connexion de réseau privé virtuel (VPN) ou Direct AWS Connect) pour accéder au point de terminaison Argo CD.

Comment fonctionne l'accès privé

Lorsque vous configurez l'accès privé pour la fonctionnalité Argo CD :

  1. Vous créez un point de terminaison VPC pour le com.amazonaws.region-code.eks-capabilities service dans votre VPC.

  2. Vous fournissez l'ID du point de terminaison VPC lors de la création ou de la mise à jour de la fonctionnalité Argo CD.

  3. AWS configure les enregistrements DNS afin que le nom d'hôte du point de terminaison Argo CD soit converti en adresses IP privées associées à votre point de terminaison VPC.

  4. Tout le trafic vers le point de terminaison Argo CD circule en privé via le point de terminaison VPC.

Conditions préalables

  • Un cluster Amazon Elastic Kubernetes Service (Amazon EKS) doté d'une fonctionnalité Argo CD active (voir) Création d’une fonctionnalité Argo CD

  • Connaissance des concepts Amazon VPC, notamment des sous-réseaux, des groupes de sécurité et des points de terminaison VPC d'interface

  • Un VPC avec des sous-réseaux dans les zones de disponibilité auxquels vous souhaitez un accès privé

  • AWS Version de l'interface de ligne de AWS commande (CLI) 2.12.3 ou ultérieure

Étape 1 : créer un point de terminaison VPC pour eks-capabilities

Créez un point de terminaison VPC d'interface pour le com.amazonaws.region-code.eks-capabilities service.

Console
  1. Ouvrez la console VPC Amazon.

  2. Dans le panneau de navigation de gauche, sélectionnez Points de terminaison.

  3. Choisissez Créer un point de terminaison.

  4. Pour la catégorie de service, sélectionnez AWS services.

  5. Dans le champ de recherche, entrez eks-capabilities et sélectionnezcom.amazonaws.region-code.eks-capabilities.

  6. Pour le VPC, sélectionnez le VPC à partir duquel vous souhaitez accéder au point de terminaison Argo CD.

  7. Pour les sous-réseaux, sélectionnez un sous-réseau dans chaque zone de disponibilité auquel vous souhaitez un accès privé.

  8. Pour les groupes de sécurité, sélectionnez un groupe de sécurité qui autorise le trafic entrant HTTPS (port 443) en provenance de vos réseaux clients.

  9. Choisissez Créer un point de terminaison.

  10. Notez l'ID du point de terminaison du VPC (par exemple,vpce-0123456789abcdef0).

CLI

region-codeRemplacez-le par votre AWS région, vpc-id par votre ID VPC, subnet-id-1 subnet-id-2 par des ID de sous-réseau dans différentes zones de disponibilité et sg-id par un groupe de sécurité qui autorise le trafic entrant HTTPS.

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

Notez le VpcEndpointId dans la réponse.

Important

Assurez-vous que le groupe de sécurité attaché au point de terminaison VPC autorise le trafic HTTPS entrant (port 443). La source de trafic doit inclure tous les réseaux sur lesquels vos utilisateurs ou applications accèdent au point de terminaison Argo CD.

Étape 2 : configurer l'accès privé sur la fonctionnalité Argo CD

Une fois le point de terminaison VPC disponible, configurez la fonctionnalité Argo CD pour l'utiliser. Vous pouvez configurer l'accès privé lors de la création d'une nouvelle fonctionnalité ou en mettant à jour une fonctionnalité existante.

Créez une nouvelle fonctionnalité avec accès privé

Incluez-le networkAccess dans la create-capability commande. Remplacez region-codemy-cluster, et les autres espaces réservés par vos valeurs :

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"] } } }'

Mettre à jour une fonctionnalité existante pour activer l'accès privé

Remplacezregion-code, my-clustermy-argocd, et l'ID du point de terminaison VPC par vos valeurs :

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

Attendez que la mise à jour des fonctionnalités soit terminée :

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

Le statut revient à une ACTIVE fois la mise à jour terminée.

Étape 3 : vérifier la résolution et la connectivité du DNS

Une fois la fonctionnalité activée avec l'accès privé configuré, vérifiez que le nom d'hôte du point de terminaison Argo CD est converti en adresses IP privées.

Exécutez la nslookup commande suivante depuis n'importe quel réseau :

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

La réponse doit afficher les adresses IP privées (par exemple, les adresses comprises dans les plages de la RFC 1918, telles que 10.x.x.x ou172.16.x.x).

Si le point de terminaison ne devient pas une adresse IP privée, vérifiez que :

  • L'état de la fonctionnalité est ACTIVE (AWS crée des enregistrements DNS une fois que la fonctionnalité est devenue active)

  • Le point de terminaison du VPC est dans l'état available

  • L'ID de point de terminaison VPC dans la configuration des fonctionnalités correspond au point de terminaison que vous avez créé

Note

Après avoir configuré l'accès privé, le nom d'hôte du point de terminaison Argo CD est converti en adresses IP privées. Pour vous connecter, vous devez disposer d'une connectivité réseau à ces adresses IP privées via votre VPC, une connexion VPN ou Direct AWS Connect.

Désactiver l'accès privé

Pour désactiver l'accès privé et restaurer l'accès aux points de terminaison publics, mettez à jour la fonctionnalité permettant de supprimer les identifiants de point de terminaison VPC :

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

Considérations

  • Une fois que vous avez activé l'accès privé, le point de terminaison Argo CD n'est accessible que depuis votre VPC ou les réseaux qui y sont connectés (par exemple, via VPN ou AWS Direct Connect).

  • Le point de terminaison VPC doit rester dans available cet état pour que l'accès privé fonctionne. Si vous supprimez le point de terminaison VPC, vous perdez l'accès au point de terminaison Argo CD jusqu'à ce que vous créiez un nouveau point de terminaison et que vous mettiez à jour la fonctionnalité.

  • AWS ne prend actuellement pas en charge les politiques de point de terminaison VPC pour le point de terminaison de eks-capabilities service.