

 **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
<a name="argocd-private-access"></a>

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é
<a name="_how_private_access_works"></a>

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.

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

1.  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.

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

## Conditions préalables
<a name="_prerequisites"></a>
+ Un cluster Amazon Elastic Kubernetes Service (Amazon EKS) doté d'une fonctionnalité Argo CD active (voir) [Création d’une fonctionnalité Argo CD](create-argocd-capability.md)
+ 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
<a name="_step_1_create_a_vpc_endpoint_for_eks_capabilities"></a>

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](https://console.aws.amazon.com/vpc/).

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

1. Choisissez **Créer un point de terminaison**.

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

1. Dans le champ de recherche, entrez `eks-capabilities` et sélectionnez`com.amazonaws.region-code.eks-capabilities`.

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

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

1. 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.

1. Choisissez **Créer un point de terminaison**.

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

------
#### [ CLI ]

{{region-code}}Remplacez-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
<a name="_step_2_configure_private_access_on_the_argo_cd_capability"></a>

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é
<a name="_create_a_new_capability_with_private_access"></a>

Incluez-le `networkAccess` dans la `create-capability` commande. Remplacez {{region-code}}{{my-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é
<a name="_update_an_existing_capability_to_enable_private_access"></a>

Remplacez{{region-code}}, {{my-cluster}}{{my-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
<a name="_step_3_verify_dns_resolution_and_connectivity"></a>

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` ou`172.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é
<a name="_disable_private_access"></a>

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
<a name="_considerations"></a>
+ 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.