

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.

# Enregistrez des cibles auprès de votre groupe cible Application Load Balancer
<a name="target-group-register-targets"></a>

Vous enregistrez les cibles avec le groupe cible. Lorsque vous créez un groupe cible, vous spécifiez son type de cible, qui détermine la façon dont vous enregistrez ses cibles. Par exemple, vous pouvez enregistrer des instances IDs, des adresses IP ou des fonctions Lambda. Pour de plus amples informations, veuillez consulter [Groupes cible pour vos Application Load Balancers](load-balancer-target-groups.md).

Si la demande augmente sur les cibles actuellement enregistrées, vous pouvez enregistrer des cibles supplémentaires afin de pouvoir gérer la demande. Lorsque la cible est prête à gérer les demandes, enregistrez-la auprès de votre groupe cible. L'équilibreur de charge commence à acheminer les demandes vers la cible dès que le processus d'enregistrement est terminé et que la cible a passé avec succès les vérifications de l'état initiales.

Si la demande diminue sur vos cibles enregistrées ou que vous avez besoin d'assurer la maintenance d'une cible, vous pouvez annuler l'enregistrement de cette cible dans le groupe cible. L'équilibreur de charge cesse d'acheminer les demandes vers une cible lorsque vous annuler l'enregistrement de cette cible. Lorsque la cible est prête à recevoir des demandes, vous pouvez l'enregistrer à nouveau auprès du groupe cible.

Lorsque vous annulez l'enregistrement d'une cible, l'équilibreur de charge attend que les demandes en cours soient terminées. Cela s'appelle le *drainage de la connexion*. L'état d'une cible est `draining` lorsque le drainage de la connexion est en cours.

Lorsque vous annulez l'enregistrement d'une cible qui a été enregistrée à l'aide d'une adresse IP, vous devez attendre la fin du délai d'annulation d'enregistrement avant de pouvoir enregistrer à nouveau la même adresse IP.

Si vous enregistrez des objectifs par ID d'instance, vous pouvez utiliser votre équilibreur de charge avec un groupe Auto Scaling. Après avoir attaché un groupe cible à un groupe Auto Scaling et que ce groupe monte en puissance, les instances lancées par le groupe Auto Scaling sont automatiquement enregistrées avec le groupe cible. Si vous détachez le groupe cible du groupe Auto Scaling, l'enregistrement des instances est annulé automatiquement dans le groupe cible. Pour plus d'informations, veuillez consulter [Attacher un équilibreur de charge à votre groupe Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html) (langue française non garantie) dans le *Guide de l'utilisateur Amazon EC2 Auto Scaling*.

Lorsque vous arrêtez une application sur une cible, vous devez d'abord désenregistrer la cible de son groupe cible et laisser le temps aux connexions existantes de se vider. Vous pouvez surveiller l'état de désenregistrement à l'aide de la commande describe-target-health CLI ou en actualisant la vue du groupe cible dans le. AWS Management Console Après avoir confirmé que la cible est désenregistrée, vous pouvez arrêter ou terminer l'application. Cette séquence empêche les utilisateurs de rencontrer des erreurs 5XX lorsque des applications sont arrêtées alors que le trafic est toujours en cours de traitement.

## Groupes de sécurité cibles
<a name="target-security-groups"></a>

Lorsque vous enregistrez des instances EC2 comme cibles, vous devez vous assurer que les groupes de sécurité pour vos instances permettent à l'équilibreur de charge de communiquer avec vos instances sur le port d'écoute et le port de vérification de l'état.


**Règles recommandées**  

| 
| 
| **Inbound** | 
| --- |
|  Source  |  Port Range  |  Comment  | 
| {{load balancer security group}} | {{instance listener}} | Autoriser le trafic depuis l'équilibreur de charge sur le port d'écoute des instances | 
| {{load balancer security group}} | {{health check}} | Autoriser le trafic depuis l'équilibreur de charge sur le port de vérification de l'état | 

Nous vous recommandons également de permettre au trafic ICMP entrant de prendre en charge la détection de la MTU du chemin. Pour plus d'informations, consultez [Path MTU Discovery](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/network_mtu.html#path_mtu_discovery) dans le guide de l'*utilisateur Amazon EC2.*

## Optimiseur de cibles
<a name="register-targets-target-optimizer"></a>

L'optimiseur de cibles vous permet d'appliquer une simultanéité stricte aux cibles d'un groupe cible. Il fonctionne à l'aide d'un agent que vous installez et configurez sur des cibles. L'agent fait office de proxy intégré entre l'équilibreur de charge et votre application. Vous configurez l'agent pour appliquer un nombre maximum de demandes simultanées que l'équilibreur de charge peut envoyer à la cible. L'agent suit le nombre de demandes traitées par la cible. Lorsque le nombre tombe en dessous de la valeur maximale configurée, l'agent envoie un signal à l'équilibreur de charge pour l'informer que la cible est prête à traiter une autre demande.

Pour activer l'optimiseur de cible, vous devez spécifier un port de contrôle cible lors de la création du groupe cible. L'équilibreur de charge établit des canaux de contrôle avec des agents sur ce port pour le trafic de gestion. Ce port est différent du port sur lequel l'équilibreur de charge envoie le trafic des applications. L'agent doit être exécuté sur les cibles enregistrées auprès du groupe cible. 

 **Remarque : L'optimiseur de cible ne peut être activé que lors de la création du groupe cible. Le port de contrôle cible ne peut pas être modifié après sa création.** 

L'agent est disponible sous forme d'image Docker à l'adresse :` public.ecr.aws/aws-elb/target-optimizer/target-control-agent:latest`. Vous configurez les variables d'environnement suivantes lors de l'exécution du conteneur d'agents :

`TARGET_CONTROL_DATA_ADDRESS`  
L'agent reçoit le trafic d'application en provenance de l'équilibreur de charge sur ce socket (IP:port). Le port de ce socket est le port de trafic des applications que vous configurez pour le groupe cible. Par défaut, l'agent peut accepter à la fois les connexions en texte brut et les connexions TLS.

`TARGET_CONTROL_CONTROL_ADDRESS`  
L'agent reçoit le trafic de gestion en provenance de l'équilibreur de charge sur ce socket (IP:port). Le port du socket est le port de contrôle cible que vous configurez pour le groupe cible. 

`TARGET_CONTROL_DESTINATION_ADDRESS`  
L'agent transmet le trafic de l'application à ce socket (IP:Port). Votre application devrait être en train d'écouter sur ce socket.

(Facultatif) `TARGET_CONTROL_MAX_CONCURRENCY`   
Nombre maximal de demandes simultanées que la cible recevra de la part de l'équilibreur de charge. Il peut être compris entre 0 et 1000. La valeur par défaut est 1.

(Facultatif) `TARGET_CONTROL_TLS_CERT_PATH`   
Emplacement du certificat TLS que l'agent fournit à l'équilibreur de charge lors de la prise de contact TLS. Par défaut, l'agent génère un certificat auto-signé en mémoire.

(Facultatif) `TARGET_CONTROL_TLS_KEY_PATH`   
Emplacement de la clé privée correspondant au certificat TLS que l'agent fournit à l'équilibreur de charge lors de la prise de contact TLS. Par défaut, l'agent génère une clé privée en mémoire. 

(Facultatif) `TARGET_CONTROL_TLS_SECURITY_POLICY`   
La politique de sécurité ELB que vous configurez pour le groupe cible. La valeur par défaut est `ELBSecurityPolicy-2016-08`.

(Facultatif) `TARGET_CONTROL_PROTOCOL_VERSION`   
Protocole par lequel l'équilibreur de charge communique avec l'agent. Les valeurs possibles sont ` HTTP1`` HTTP2`,` GRPC`. La valeur par défaut est ` HTTP1`.

(Facultatif) `RUST_LOG`   
Le niveau de journalisation du processus de l'agent. Le logiciel de l'agent est écrit en Rust. Les valeurs possibles sont ` debug`` info`, et` error`. La valeur par défaut est ` info`. 

 Pour modifier la valeur d'une variable d'environnement, vous devez redémarrer l'agent avec la nouvelle valeur. Vous pouvez surveiller l'optimiseur de cibles à l'aide des mesures suivantes : `TargetControlRequestCount``TargetControlRequestRejectCount`,`TargetControlActiveChannelCount`,`TargetControlNewChannelCount`,, `TargetControlChannelErrorCount`` TargetControlWorkQueueLength`,`TargetControlProcessedBytes`. Pour plus d'informations, voir [Mesures de l'optimiseur de cible](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html#target-optimizer-metric-table). Pour plus d'informations sur la résolution des problèmes, voir [Résolution des problèmes liés à l'optimiseur de cible](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-troubleshooting.html#troubleshoot-target-optimizer) 

## Sous-réseaux partagés
<a name="register-targets-shared-subnets"></a>

Les participants peuvent créer un Application Load Balancer dans un VPC partagé. Les participants ne peuvent pas enregistrer une cible exécutée dans un sous-réseau qui n'est pas partagé avec eux.

## Enregistrer des cibles
<a name="register-targets"></a>

Chaque groupe cible doit avoir au moins une cible enregistrée dans chaque zone de disponibilité qui est activée pour l'équilibreur de charge.

Le type de cible de votre groupe cible détermine la façon dont vous enregistrez les cibles auprès du groupe cible. Pour de plus amples informations, veuillez consulter [Type de cible](load-balancer-target-groups.md#target-type).

**Exigences et considérations**
+ Une instance doit être à l'état `running` lorsque vous l'inscrivez.
+ Une instance cible doit se trouver dans le cloud privé virtuel (VPC) que vous avez spécifié pour le groupe cible.
+ Lorsque vous enregistrez des cibles par ID d'instance pour un groupe IPv6 cible, une IPv6 adresse principale doit être attribuée aux cibles. Pour en savoir plus, consultez les [ IPv6 adresses](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html#ipv6-addressing) dans le guide de l'*utilisateur Amazon EC2*
+ Lorsque vous enregistrez des cibles par adresse IP pour un groupe IPv4 cible, les adresses IP que vous enregistrez doivent provenir de l'un des blocs CIDR suivants :
  + Les sous-réseaux du groupe cible (VPC)
  + 10.0.0.0/8 (RFC 1918)
  + 100.64.0.0/10 (RFC 6598)
  + 172.16.0.0/12 (RFC 1918)
  + 192.168.0.0/16 (RFC 1918)
+ Lorsque vous enregistrez des cibles par adresse IP pour un groupe IPv6 cible, les adresses IP que vous enregistrez doivent se trouver dans le bloc d'adresse IPv6 CIDR du VPC ou dans le bloc d'adresse IPv6 CIDR d'un VPC apparenté.
+ Vous ne pouvez pas enregistrer les adresses IP d'un autre Application Load Balancer dans le même VPC. Si l'autre Application Load Balancer se trouve dans un VPC appairé au VPC de l'équilibreur de charge, vous pouvez enregistrer ses adresses IP.

------
#### [ Console ]

**Pour enregistrer des cibles**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation, sous **Load Balancing** (Répartition de charge), choisissez **Target Groups** (Groupes cibles).

1. Sélectionnez le nom du groupe cible pour afficher sa page de détails.

1. Choisissez l’onglet **Cibles**.

1. Choisissez **Register targets (Enregistrer les cibles)**.

1. Si le type de cible du groupe cible est`instance`, sélectionnez les instances disponibles, remplacez le port par défaut si nécessaire, puis choisissez **Inclure comme étant en attente ci-dessous.**

1. Si le type de cible du groupe cible est`ip`, pour chaque adresse IP, sélectionnez le réseau, entrez les adresses IP et les ports, puis choisissez **Inclure comme en attente ci-dessous**.

1. Si le type de cible du groupe cible est`lambda`, sélectionnez la fonction Lambda ou entrez son ARN. Pour de plus amples informations, veuillez consulter [Utiliser les fonctions Lambda comme cibles](lambda-functions.md).

1. Choisissez **Enregistrer les cibles en attente**.

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

**Pour enregistrer des cibles**  
Utilisez la commande [register-targets](https://docs.aws.amazon.com/cli/latest/reference/elbv2/register-targets.html). L'exemple suivant enregistre les cibles par ID d'instance. Le port n'étant pas spécifié, l'équilibreur de charge utilise le port du groupe cible.

```
aws elbv2 register-targets \
    --target-group-arn {{target-group-arn}} \
    --targets Id={{i-1234567890abcdef0}} Id={{i-0abcdef1234567890}}
```

L'exemple suivant enregistre les cibles par adresse IP. Le port n'étant pas spécifié, l'équilibreur de charge utilise le port du groupe cible.

```
aws elbv2 register-targets \
    --target-group-arn {{target-group-arn}} \
    --targets Id={{10.0.50.10}} Id={{10.0.50.20}}
```

L'exemple suivant enregistre une fonction Lambda en tant que cible.

```
aws elbv2 register-targets \
    --target-group-arn {{target-group-arn}} \
    --targets Id={{lambda-function-arn}}
```

------
#### [ CloudFormation ]

**Pour enregistrer des cibles**  
Mettez à jour la [AWS::ElasticLoadBalancingV2::TargetGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-targetgroup.html)ressource pour inclure les nouvelles cibles. L'exemple suivant enregistre deux cibles par ID d'instance.

```
Resources:
  myTargetGroup:
    Type: 'AWS::ElasticLoadBalancingV2::TargetGroup'
    Properties:
      Name: my-target-group
      Protocol: HTTP
      Port: 80
      TargetType: instance
      VpcId: !Ref myVPC
      Targets:
        - Id: !GetAtt Instance1.InstanceId
          Port: 80
        - Id: !GetAtt Instance2.InstanceId
          Port: 80
```

------

## Désenregistrer les cibles
<a name="deregister-targets"></a>

Si la demande diminue sur votre application ou que vous avez besoin de répondre aux demandes de vos cibles, vous pouvez annuler l'enregistrement des cibles dans vos groupes cibles. L'annulation de l'enregistrement d'une cible supprime la cible de votre groupe cible, mais n'affecte pas autrement la cible.

------
#### [ Console ]

**Pour désenregistrer des cibles**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation, sous **Load Balancing** (Répartition de charge), choisissez **Target Groups** (Groupes cibles).

1. Sélectionnez le nom du groupe cible pour afficher sa page de détails.

1. Dans l'onglet **Cibles**, sélectionnez les cibles à supprimer.

1. Choisissez **Deregister** (Annuler l’enregistrement).

1. Lorsque vous êtes invité à confirmer l'opération, choisissez **Annuler l'enregistrement**.

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

**Pour désenregistrer des cibles**  
Utilisez la commande [deregister-targets](https://docs.aws.amazon.com/cli/latest/reference/elbv2/deregister-targets.html). L'exemple suivant annule l'enregistrement de deux cibles enregistrées par ID d'instance.

```
aws elbv2 deregister-targets \
    --target-group-arn {{target-group-arn}} \
    --targets Id={{i-1234567890abcdef0}} Id={{i-0abcdef1234567890}}
```

------