Configuration d'un équilibreur de charge, de groupes cibles et d'écouteurs pour les déploiements CodeDeploy Amazon ECS - AWS CodeDeploy

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 d'un équilibreur de charge, de groupes cibles et d'écouteurs pour les déploiements CodeDeploy Amazon ECS

Avant d'exécuter un déploiement à l'aide de la plateforme de calcul Amazon ECS, vous devez créer un Application Load Balancer ou un Network Load Balancer, deux groupes cibles et un ou deux écouteurs. Cette rubrique explique comment créer un Application Load Balancer. Pour plus d’informations, consultez Avant de commencer un déploiement Amazon ECS.

L'un des groupes cibles dirige le trafic vers l'ensemble de tâches d'origine de votre application Amazon ECS. L'autre groupe cible dirige le trafic vers son ensemble de tâches de remplacement. Au cours du déploiement, CodeDeploy crée un ensemble de tâches de remplacement et redirige le trafic de l'ensemble de tâches d'origine vers le nouveau. CodeDeploy détermine le groupe cible utilisé pour chaque ensemble de tâches.

Un écouteur est utilisé par votre équilibreur de charge pour diriger le trafic vers vos groupes cibles. Un écouteur de production est obligatoire. Vous pouvez spécifier un écouteur de test facultatif qui dirige le trafic vers votre ensemble de tâches de remplacement lors de l'exécution des tests de validation.

L'équilibreur de charge doit utiliser un VPC avec deux sous-réseaux publics dans différentes zones de disponibilité. Les étapes suivantes vous montrent comment confirmer votre VPC par défaut, créer un Amazon EC2 Application Load Balancer, puis créer deux groupes cibles pour votre équilibreur de charge. Pour plus d'informations, consultez la section Groupes cibles pour vos équilibreurs de charge réseau.

Vérifiez votre VPC, vos sous-réseaux publics et votre groupe de sécurité par défaut

Cette rubrique explique comment créer un Amazon EC2 Application Load Balancer, deux groupes cibles et deux ports pouvant être utilisés lors d'un déploiement Amazon ECS. L'un des ports est facultatif et n'est nécessaire que si vous dirigez le trafic vers un port de test pour les tests de validation lors de votre déploiement.

  1. Connectez-vous à la console Amazon VPC AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/vpc/.

  2. Vérifiez le VPC par défaut à utiliser. Dans le panneau de navigation, sélectionnez Your VPCs (Vos VPC). Notez que le VPC affiche Oui dans la colonne VPC par défaut. Il s'agit de votre VPC par défaut. Il contient les sous-réseaux par défaut que vous utilisez.

  3. Choisissez Sous-réseaux. Notez les ID de sous-réseau de deux sous-réseaux qui indiquent Oui dans la colonne Sous-réseau par défaut. Vous utiliserez ces ID lors de la création de votre équilibreur de charge.

  4. Choisissez chaque sous-réseau, puis choisissez l'onglet Description. Vérifiez que les sous-réseaux que vous souhaitez utiliser sont dans des zones de disponibilité différentes.

  5. Choisissez les sous-réseaux, puis choisissez l'onglet Table de routage. Pour vérifier que chaque sous-réseau que vous souhaitez utiliser est un sous-réseau public, vérifiez qu'une ligne comportant un lien vers une passerelle Internet est incluse dans la table de routage.

  6. Connectez-vous à la console Amazon EC2 AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/ec2/.

  7. Depuis le panneau de navigation, sélectionnez Groupes de sécurité.

  8. Vérifiez que le groupe de sécurité que vous souhaitez utiliser est disponible et notez son ID de groupe (par exemple, sg-abcd1234). Vous l'utilisez lors de la création de votre équilibreur de charge.

Création d'un Amazon EC2 Application Load Balancer, de deux groupes cibles et d'écouteurs (console)

Pour utiliser la console Amazon EC2 afin de créer un Amazon EC2 Application Load Balancer :

  1. Connectez-vous à la console Amazon EC2 AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/ec2/.

  2. Dans le volet de navigation, choisissez Load Balancers.

  3. Sélectionnez Create Load Balancer (Créer un équilibreur de charge).

  4. Choisissez Équilibreur de charge d'application, puis choisissez Créer.

  5. Dans Nom, entrez le nom de votre équilibreur de charge.

  6. Dans Méthode, choisissez Accessible sur Internet.

  7. Dans Type d'adresse IP, choisissez ipv4.

  8. (Facultatif) Configurez un deuxième port d'écoute pour votre équilibreur de charge. Vous pouvez exécuter des tests de validation de déploiement à l'aide du trafic de test qui est diffusé vers ce port.

    1. Sous Protocole de l'équilibreur de charge, choisissez Ajouter un écouteur.

    2. Sous Protocole de l'équilibreur de charge pour le deuxième écouteur, choisissez HTTP.

    3. Sous Port de l'équilibreur de charge, entrez 8080.

  9. Sous Zones de disponibilité, dans VPC, choisissez le VPC par défaut, puis sélectionnez les deux sous-réseaux par défaut que vous souhaitez utiliser.

  10. Choisissez Next: Configure Security Settings (Suivant : Configurer les paramètres de sécurité).

  11. Choisissez Next: Configure Security Groups (Suivant : Configurer des groupes de sécurité).

  12. Choisissez Select an existing security group (Sélectionner un groupe de sécurité existant), choisissez le groupe de sécurité par défaut, puis notez son ID.

  13. Choisissez Next: Configure Routing (Suivant :Configurer le routage).

  14. Dans Groupe cible, choisissez Nouveau groupe cible et configurez votre premier groupe cible :

    1. Dans Nom, entrez un nom de groupe cible (par exemple, target-group-1).

    2. Dans Type cible, choisissez IP.

    3. Dans Protocole, choisissez HTTP. Dans Port, entrez 80.

    4. Choisissez Next: Register Targets (Suivant : Enregistrer des cibles).

  15. Choisissez Suivant : Vérification, puis Créer.

Pour créer un deuxième groupe cible pour votre équilibreur de charge
  1. Une fois votre équilibreur de charge configuré, ouvrez la console Amazon EC2. Dans le volet de navigation, sélectionnez Groupes cibles.

  2. Sélectionnez Créer un groupe cible.

  3. Dans Nom, entrez un nom de groupe cible (par exemple, target-group-2).

  4. Dans Type cible, choisissez IP.

  5. Dans Protocole, choisissez HTTP. Dans Port, entrez 80.

  6. Dans VPC, choisissez le VPC par défaut.

  7. Choisissez Créer.

    Note

    Vous devez avoir créé deux groupes cibles pour votre équilibreur de charge afin que votre déploiement Amazon ECS puisse s'exécuter. Vous utilisez l'ARN de l'un de vos groupes cibles lorsque vous créez votre service Amazon ECS. Pour plus d'informations, consultez Étape 4 : Création d'un service Amazon ECS dans le guide de l'utilisateur Amazon ECS.

Création d'un Amazon EC2 Application Load Balancer, de deux groupes cibles et d'écouteurs (CLI)

Pour créer un Application Load Balancer à l'aide de : AWS CLI

  1. Utilisez la create-load-balancercommande pour créer un Application Load Balancer. Spécifiez deux sous-réseaux qui ne se trouvent pas dans la même zone de disponibilité et un groupe de sécurité.

    aws elbv2 create-load-balancer --name bluegreen-alb \ --subnets subnet-abcd1234 subnet-abcd5678 --security-groups sg-abcd1234 --region us-east-1

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

    arn:aws:elasticloadbalancing:region:aws_account_id:loadbalancer/app/bluegreen-alb/e5ba62739c16e642
  2. Utilisez la create-target-groupcommande pour créer votre premier groupe cible. CodeDeploy achemine le trafic de ce groupe cible vers la tâche d'origine ou la tâche de remplacement définie dans votre service.

    aws elbv2 create-target-group --name bluegreentarget1 --protocol HTTP --port 80 \ --target-type ip --vpc-id vpc-abcd1234 --region us-east-1

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

    arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget1/209a844cd01825a4
  3. Utilisez la create-target-groupcommande pour créer votre deuxième groupe cible. CodeDeploy achemine le trafic du groupe cible vers l'ensemble de tâches qui n'est pas desservi par votre premier groupe cible. Par exemple, si votre premier groupe cible achemine le trafic vers l'ensemble de tâches d'origine, ce groupe cible achemine le trafic vers l'ensemble de tâches de remplacement.

    aws elbv2 create-target-group --name bluegreentarget2 --protocol HTTP --port 80 \ --target-type ip --vpc-id vpc-abcd1234 --region us-east-1

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

    arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget2/209a844cd01825a4
  4. Utilisez la commande create-listener pour créer un écouteur avec une règle par défaut qui transfère le trafic de production vers le port 80.

    aws elbv2 create-listener --load-balancer-arn arn:aws:elasticloadbalancing:region:aws_account_id:loadbalancer/app/bluegreen-alb/e5ba62739c16e642 \ --protocol HTTP --port 80 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget1/209a844cd01825a4 --region us-east-1

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

    arn:aws:elasticloadbalancing:region:aws_account_id:listener/app/bluegreen-alb/e5ba62739c16e642/665750bec1b03bd4
  5. (Facultatif) Utilisez la commande create-listener pour créer un deuxième écouteur avec une règle par défaut qui transfère le trafic de test vers le port 8080. Vous pouvez exécuter des tests de validation de déploiement à l'aide du trafic de test qui est diffusé vers ce port.

    aws elbv2 create-listener --load-balancer-arn arn:aws:elasticloadbalancing:region:aws_account_id:loadbalancer/app/bluegreen-alb/e5ba62739c16e642 \ --protocol HTTP --port 8080 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget2/209a844cd01825a4 --region us-east-1

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

    arn:aws:elasticloadbalancing:region:aws_account_id:listener/app/bluegreen-alb/e5ba62739c16e642/665750bec1b03bd4