Didacticiel : création d'un Network Load Balancer à l'aide de l'AWS CLI - Elastic Load Balancing

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.

Didacticiel : création d'un Network Load Balancer à l'aide de l'AWS CLI

Ce didacticiel fournit une présentation pratique des Network Load Balancers via l'AWS CLI.

Avant de commencer

  • Installez l'AWS CLI ou passez à la version actuelle de l'AWS CLI si vous utilisez une version qui ne prend pas en charge les Network Load Balancers. Pour plus d’informations, consultez Installation d’AWS Command Line Interface dans le Guide de l’utilisateur AWS Command Line Interface.

  • Choisissez les zones de disponibilité que vous utiliserez pour vos instances EC2. Configurez votre réseau Virtual Private Cloud (VPC) avec au moins un sous-réseau public dans chacune de ces zones de disponibilité.

  • Décidez si vous allez créer un équilibreur de charge IPv4 ou à double pile. Utilisez IPv4 si vous voulez que vos clients communiquent avec l'équilibreur de charge à l'aide d'adresses IPv4 uniquement. Choisissez le mode double pile si vous voulez que vos clients communiquent avec l'équilibreur de charge à l'aide d'adresses IPv4 et IPv6. Vous pouvez également utiliser le mode double pile pour communiquer avec des cibles backend, telles que les applications IPv6 ou les sous-réseaux à double pile, en utilisant IPv6.

  • Lancez au moins une instance EC2 dans chaque zone de disponibilité. Assurez-vous que les groupes de sécurité de ces instances autorisent l'accès TCP des clients sur le port d'écoute et les requêtes de vérification de l'état de votre VPC. Pour plus d’informations, consultez Groupes de sécurité cibles.

Création de votre équilibreur de charge IPv4

Pour créer votre premier équilibreur de charge, procédez comme il est indiqué ci-après.

Pour créer un équilibreur de charge IPv4
  1. Utilisez la create-load-balancercommande pour créer un équilibreur de charge IPv4, en spécifiant un sous-réseau public pour chaque zone de disponibilité dans laquelle vous avez lancé des instances. Vous pouvez spécifier un seul sous-réseau par zone de disponibilité.

    Par défaut, lorsque les Network Load Balancers sont créés à l'aide de l'AWS CLI, ils n'utilisent pas automatiquement le groupe de sécurité par défaut pour le VPC. Si vous n'associez aucun groupe de sécurité à votre équilibreur de charge lors de sa création, vous ne pourrez pas les ajouter ultérieurement. Nous vous recommandons de spécifier des groupes de sécurité pour votre équilibreur de charge lors de sa création à l'aide de l'option --security-groups.

    aws elbv2 create-load-balancer --name my-load-balancer --type network --subnets subnet-0e3f5cac72EXAMPLE --security-groups sg-0123456789EXAMPLE

    Les données de sortie contiennent l'Amazon Resource Name (ARN) de l'équilibreur de charge, au format suivant :

    arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/net/my-load-balancer/1234567890123456
  2. Utilisez la create-target-groupcommande pour créer un groupe cible IPv4, en spécifiant le même VPC que celui que vous avez utilisé pour vos instances EC2. Les groupes cibles IPv4 prennent en charge les cibles de type IP et instance.

    aws elbv2 create-target-group --name my-targets --protocol TCP --port 80 --vpc-id vpc-0598c7d356EXAMPLE

    Les données de sortie contiennent l'ARN du groupe cible, au format suivant :

    arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/1234567890123456
  3. Utilisez la commande register-targets pour enregistrer vos instances auprès de votre groupe cible :

    aws elbv2 register-targets --target-group-arn targetgroup-arn --targets Id=i-1234567890abcdef0 Id=i-0abcdef1234567890
  4. Utilisez la commande create-listener pour créer un écouteur pour votre équilibreur de charge avec une règle par défaut qui transfère les demandes à votre groupe cible :

    aws elbv2 create-listener --load-balancer-arn loadbalancer-arn --protocol TCP --port 80 \ --default-actions Type=forward,TargetGroupArn=targetgroup-arn

    Les données de sortie contiennent l'ARN de l'auditeur, au format suivant :

    arn:aws:elasticloadbalancing:us-east-2:123456789012:listener/net/my-load-balancer/1234567890123456/1234567890123456
  5. (Facultatif) Vous pouvez vérifier l'état des cibles enregistrées pour votre groupe cible à l'aide de cette describe-target-healthcommande :

    aws elbv2 describe-target-health --target-group-arn targetgroup-arn

Création de votre équilibreur de charge à double pile

Pour créer votre premier équilibreur de charge, procédez comme il est indiqué ci-après.

Pour créer un équilibreur de charge à double pile
  1. Utilisez la create-load-balancercommande pour créer un équilibreur de charge à double pile, en spécifiant un sous-réseau public pour chaque zone de disponibilité dans laquelle vous avez lancé des instances. Vous pouvez spécifier un seul sous-réseau par zone de disponibilité.

    aws elbv2 create-load-balancer --name my-load-balancer --type network --subnets subnet-0e3f5cac72EXAMPLE --ip-address-type dualstack

    Les données de sortie contiennent l'Amazon Resource Name (ARN) de l'équilibreur de charge, au format suivant :

    arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/net/my-load-balancer/1234567890123456
  2. Utilisez la create-target-groupcommande pour créer un groupe cible, en spécifiant le même VPC que celui que vous avez utilisé pour vos instances EC2.

    Vous devez utiliser un groupe cible TCP ou TLS avec votre équilibreur de charge à double pile.

    Vous pouvez créer des groupes cibles IPv4 et IPv6 à associer aux équilibreurs de charge à double pile. Le type d'adresse IP du groupe cible détermine la version IP que l'équilibreur de charge utilisera à la fois pour communiquer avec vos cibles backend et pour surveiller leur état.

    Les groupes cibles IPv4 prennent en charge les cibles de type IP et instance. Les cibles IPv6 ne prennent en charge que les cibles IP.

    aws elbv2 create-target-group --name my-targets --protocol TCP --port 80 --vpc-id vpc-0598c7d356EXAMPLE --ip-address-type [ipv4 or ipv6]

    Les données de sortie contiennent l'ARN du groupe cible, au format suivant :

    arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/1234567890123456
  3. Utilisez la commande register-targets pour enregistrer vos instances auprès de votre groupe cible :

    aws elbv2 register-targets --target-group-arn targetgroup-arn --targets Id=i-1234567890abcdef0 Id=i-0abcdef1234567890
  4. Utilisez la commande create-listener pour créer un écouteur pour votre équilibreur de charge avec une règle par défaut qui transfère les demandes à votre groupe cible. Les équilibreurs de charge à double pile doivent être équipés d'écouteurs TCP ou TLS.

    aws elbv2 create-listener --load-balancer-arn loadbalancer-arn --protocol TCP --port 80 \ --default-actions Type=forward,TargetGroupArn=targetgroup-arn

    Les données de sortie contiennent l'ARN de l'auditeur, au format suivant :

    arn:aws:elasticloadbalancing:us-east-2:123456789012:listener/net/my-load-balancer/1234567890123456/1234567890123456
  5. (Facultatif) Vous pouvez vérifier l'état des cibles enregistrées pour votre groupe cible à l'aide de cette describe-target-healthcommande :

    aws elbv2 describe-target-health --target-group-arn targetgroup-arn

Spécifier une adresse IP Elastic pour votre équilibreur de charge

Lorsque vous créez un Network Load Balancer, vous pouvez spécifier une adresse IP Elastic par sous-réseau à l'aide d'un mappage de sous-réseaux.

aws elbv2 create-load-balancer --name my-load-balancer --type network \ --subnet-mappings SubnetId=subnet-0e3f5cac72EXAMPLE,AllocationId=eipalloc-12345678

Supprimer votre équilibreur de charge

Lorsque vous n'avez plus besoin de votre équilibreur de charge et de votre groupe cible, vous pouvez les supprimer en procédant comme suit :

aws elbv2 delete-load-balancer --load-balancer-arn loadbalancer-arn aws elbv2 delete-target-group --target-group-arn targetgroup-arn