Exemples d’utilisation de l’AWS CLI avec Elastic Load Balancing version 2 - AWS Command Line Interface

Exemples d’utilisation de l’AWS CLI avec Elastic Load Balancing version 2

Les exemples de code suivants montrent comment réaliser des actions et mettre en œuvre des scénarios courants en utilisant l’AWS Command Line Interface avec Elastic Load Balancing, version 2.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.

Rubriques

Actions

L’exemple de code suivant montre comment utiliser add-listener-certificates.

AWS CLI

Pour ajouter un certificat à un écouteur sécurisé

Cet exemple ajoute le certificat spécifié à l’écouteur sécurisé spécifié.

Commande :

aws elbv2 add-listener-certificates --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2 --certificates CertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705

Sortie :

{ "Certificates": [ { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705", "IsDefault": false } ] }
  • Pour plus de détails sur l’API, consultez AddListenerCertificates dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser add-tags.

AWS CLI

Pour ajouter des balises à un équilibreur de charge

L’exemple add-tags suivant ajoute les balises project et department à l’équilibreur de charge spécifié.

aws elbv2 add-tags \ --resource-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 \ --tags "Key=project,Value=lima" "Key=department,Value=digital-media"
  • Pour plus de détails sur l’API, consultez AddTags dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-listener.

AWS CLI

Exemple 1 : pour créer un écouteur HTTP

L’exemple create-listener suivant crée un écouteur HTTP pour l’Application Load Balancer spécifié qui transmet les demandes au groupe cible spécifié.

aws elbv2 create-listener \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 \ --protocol HTTP \ --port 80 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Pour plus d’informations, consultez Didacticiel : Création d’un Application Load Balancer à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Application Load Balancers.

Exemple 2 : pour créer un écouteur HTTPS

L’exemple create-listener suivant crée un écouteur HTTPS pour l’Application Load Balancer spécifié qui transmet les demandes au groupe cible spécifié. Vous devez spécifier un certificat SSL pour un écouteur HTTPS. Vous pouvez créer et gérer des certificats à l’aide d’AWS Certificate Manager (ACM). Vous pouvez également créer un certificat à l’aide des outils SSL/TLS, faire signer celui-ci par une autorité de certification (CA), puis le charger dans AWS Identity and Access Management (IAM).

aws elbv2 create-listener \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 \ --protocol HTTPS \ --port 443 \ --certificates CertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/3dcb0a41-bd72-4774-9ad9-756919c40557 \ --ssl-policy ELBSecurityPolicy-2016-08 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Pour plus d’informations, consultez Ajout d’un écouteur HTTPS dans le Guide de l’utilisateur des Application Load Balancers.

Exemple 3 : pour créer un écouteur TCP

L’exemple create-listener suivant crée un écouteur TCP pour le Network Load Balancer spécifié qui transmet les demandes au groupe cible spécifié.

aws elbv2 create-listener \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/net/my-network-load-balancer/5d1b75f4f1cee11e \ --protocol TCP \ --port 80 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-targets/b6bba954d1361c78

Pour plus d’informations, consultez Didacticiel : Création d’un Network Load Balancer à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Network Load Balancers.

Exemple 4 : pour créer un écouteur TLS

L’exemple create-listener suivant crée un écouteur TLS pour le Network Load Balancer spécifié qui transmet les demandes au groupe cible spécifié. Vous devez spécifier un certificat SSL pour un écouteur TLS.

aws elbv2 create-listener \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 \ --protocol TLS \ --port 443 \ --certificates CertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/3dcb0a41-bd72-4774-9ad9-756919c40557 \ --ssl-policy ELBSecurityPolicy-2016-08 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Pour plus d’informations, consultez Écouteurs TLS pour votre Network Load Balancer dans le Guide de l’utilisateur des Network Load Balancers.

Exemple 5 : pour créer un écouteur UDP

L’exemple create-listener suivant crée un écouteur UDP pour le Network Load Balancer spécifié qui transmet les demandes au groupe cible spécifié.

aws elbv2 create-listener \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/net/my-network-load-balancer/5d1b75f4f1cee11e \ --protocol UDP \ --port 53 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-targets/b6bba954d1361c78

Pour plus d’informations, consultez Didacticiel : Création d’un Network Load Balancer à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Network Load Balancers.

Exemple 6 : pour créer un écouteur pour la passerelle et le transfert spécifiés

L’exemple create-listener suivant crée un écouteur pour le Gateway Load Balancer spécifié qui transmet les demandes au groupe cible spécifié.

aws elbv2 create-listener \ --load-balancer-arn arn:aws:elasticloadbalancing:us-east-1:850631746142:loadbalancer/gwy/my-gateway-load-balancer/e0f9b3d5c7f7d3d6 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-east-1:850631746142:targetgroup/my-glb-targets/007ca469fae3bb1615

Sortie :

{ "Listeners": [ { "ListenerArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:listener/gwy/my-agw-lb-example2/e0f9b3d5c7f7d3d6/afc127db15f925de", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:loadbalancer/gwy/my-agw-lb-example2/e0f9b3d5c7f7d3d6", "DefaultActions": [ { "Type": "forward", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:targetgroup/test-tg-agw-2/007ca469fae3bb1615", "ForwardConfig": { "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:targetgroup/test-tg-agw-2/007ca469fae3bb1615" } ] } } ] } ] }

Pour plus d’informations, consultez Premiers pas avec les Gateway Load Balancers à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Gateway Load Balancers.

  • Pour plus de détails sur l’API, consultez CreateListener dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-load-balancer.

AWS CLI

Exemple 1 : pour créer un équilibreur de charge accessible sur Internet

L’exemple create-load-balancer suivant crée un Application Load Balancer accessible sur Internet et active les zones de disponibilité pour les sous-réseaux spécifiés.

aws elbv2 create-load-balancer \ --name my-load-balancer \ --subnets subnet-b7d581c0 subnet-8360a9e7

Sortie :

{ "LoadBalancers": [ { "Type": "application", "Scheme": "internet-facing", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "ZoneName": "us-west-2a", "SubnetId": "subnet-8360a9e7" }, { "ZoneName": "us-west-2b", "SubnetId": "subnet-b7d581c0" } ], "CreatedTime": "2017-08-25T21:26:12.920Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "my-load-balancer-424835706.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-5943793c" ], "LoadBalancerName": "my-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" } ] }

Pour plus d’informations, consultez Didacticiel : Création d’un Application Load Balancer à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Application Load Balancers.

Exemple 2 : pour créer un équilibreur de charge interne

L’exemple create-load-balancer suivant crée un Application Load Balancer interne et active les zones de disponibilité pour les sous-réseaux spécifiés.

aws elbv2 create-load-balancer \ --name my-internal-load-balancer \ --scheme internal \ --subnets subnet-b7d581c0 subnet-8360a9e7

Sortie :

{ "LoadBalancers": [ { "Type": "application", "Scheme": "internal", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "ZoneName": "us-west-2a", "SubnetId": "subnet-8360a9e7" }, { "ZoneName": "us-west-2b", "SubnetId": "subnet-b7d581c0" } ], "CreatedTime": "2016-03-25T21:29:48.850Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "internal-my-internal-load-balancer-1529930873.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-5943793c" ], "LoadBalancerName": "my-internal-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-internal-load-balancer/5b49b8d4303115c2" } ] }

Pour plus d’informations, consultez Didacticiel : Création d’un Application Load Balancer à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Application Load Balancers.

Exemple 3 : pour créer un Network Load Balancer

L’exemple create-load-balancer suivant crée un Network Load Balancer accessible sur Internet et active la zone de disponibilité pour le sous-réseau spécifié. Il utilise un mappage de sous-réseau pour associer l’adresse IP Elastic spécifiée à l’interface réseau utilisée par les nœuds d’équilibreur de charge pour la zone de disponibilité.

aws elbv2 create-load-balancer \ --name my-network-load-balancer \ --type network \ --subnet-mappings SubnetId=subnet-b7d581c0,AllocationId=eipalloc-64d5890a

Sortie :

{ "LoadBalancers": [ { "Type": "network", "Scheme": "internet-facing", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "LoadBalancerAddresses": [ { "IpAddress": "35.161.207.171", "AllocationId": "eipalloc-64d5890a" } ], "ZoneName": "us-west-2b", "SubnetId": "subnet-5264e837" } ], "CreatedTime": "2017-10-15T22:41:25.657Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "my-network-load-balancer-5d1b75f4f1cee11e.elb.us-west-2.amazonaws.com", "LoadBalancerName": "my-network-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/net/my-network-load-balancer/5d1b75f4f1cee11e" } ] }

Pour plus d’informations, consultez Didacticiel : Création d’un Network Load Balancer à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Network Load Balancers.

Exemple 4 : pour créer un Gateway Load Balancer

L’exemple create-load-balancer suivant crée un Gateway Load Balancer interne et active les zones de disponibilité pour les sous-réseaux spécifiés.

aws elbv2 create-load-balancer \ --name my-gateway-load-balancer \ --type gateway \ --subnets subnet-dc83f691 subnet-a62583f9

Sortie :

{ "LoadBalancers": [ { "Type": "gateway", "VpcId": "vpc-838475fe", "AvailabilityZones": [ { "ZoneName": "us-east-1b", "SubnetId": "subnet-a62583f9" }, { "ZoneName": "us-east-1a", "SubnetId": "subnet-dc83f691" } ], "CreatedTime": "2021-07-14T19:33:43.324000+00:00", "LoadBalancerName": "my-gateway-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:loadbalancer/gwy/my-gateway-load-balancer/dfbb5a7d32cdee79" } ] }

Pour plus d’informations, consultez Premiers pas avec les Gateway Load Balancers à l’aide de l’AWS CLI dans le Guide de l’utilisateur des Gateway Load Balancers.

  • Pour plus de détails sur l’API, consultez CreateLoadBalancer dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-rule.

AWS CLI

Exemple 1 : pour créer une règle à l’aide d’une condition de chemin et d’une action de transfert

L’exemple create-rule suivant crée une règle qui transfère les demandes au groupe cible spécifié si l’URL contient le modèle spécifié.

aws elbv2 create-rule \ --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2 \ --priority 5 \ --conditions file://conditions-pattern.json --actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Contenu de conditions-pattern.json :

[ { "Field": "path-pattern", "PathPatternConfig": { "Values": ["/images/*"] } } ]

Exemple 2 : pour créer une règle à l’aide d’une condition d’hôte et d’une réponse fixe

L’exemple create-rule suivant crée une règle qui fournit une réponse fixe si le nom d’hôte dans l’en-tête d’hôte correspond au nom d’hôte spécifié.

aws elbv2 create-rule \ --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2 \ --priority 10 \ --conditions file://conditions-host.json \ --actions file://actions-fixed-response.json

Contenu de conditions-host.json

[ { "Field": "host-header", "HostHeaderConfig": { "Values": ["*.example.com"] } } ]

Contenu de actions-fixed-response.json

[ { "Type": "fixed-response", "FixedResponseConfig": { "MessageBody": "Hello world", "StatusCode": "200", "ContentType": "text/plain" } } ]

Exemple 3 : pour créer une règle à l’aide d’une condition d’adresse IP source, d’une action d’authentification et d’une action de transfert

L’exemple create-rule suivant crée une règle qui authentifie l’utilisateur si l’adresse IP source correspond à l’adresse IP spécifiée, et transmet la demande au groupe cible spécifié si l’authentification est réussie.

aws elbv2 create-rule \ --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2 \ --priority 20 \ --conditions file://conditions-source-ip.json \ --actions file://actions-authenticate.json

Contenu de conditions-source-ip.json

[ { "Field": "source-ip", "SourceIpConfig": { "Values": ["192.0.2.0/24", "198.51.100.10/32"] } } ]

Contenu de actions-authenticate.json

[ { "Type": "authenticate-oidc", "AuthenticateOidcConfig": { "Issuer": "https://idp-issuer.com", "AuthorizationEndpoint": "https://authorization-endpoint.com", "TokenEndpoint": "https://token-endpoint.com", "UserInfoEndpoint": "https://user-info-endpoint.com", "ClientId": "abcdefghijklmnopqrstuvwxyz123456789", "ClientSecret": "123456789012345678901234567890", "SessionCookieName": "my-cookie", "SessionTimeout": 3600, "Scope": "email", "AuthenticationRequestExtraParams": { "display": "page", "prompt": "login" }, "OnUnauthenticatedRequest": "deny" }, "Order": 1 }, { "Type": "forward", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:880185128111:targetgroup/cli-test/642a97ecb0e0f26b", "Order": 2 } ]
  • Pour plus de détails sur l’API, consultez CreateRule dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-target-group.

AWS CLI

Exemple 1 : pour créer un groupe cible pour un Application Load Balancer

L’exemple create-target-group suivant crée un groupe cible pour un Application Load Balancer dans lequel vous enregistrez les cibles par ID d’instance (le type de cible est instance). Ce groupe cible utilise le protocole HTTP, le port 80 et les paramètres de surveillance de l’état par défaut d’un groupe cible HTTP.

aws elbv2 create-target-group \ --name my-targets \ --protocol HTTP \ --port 80 \ --target-type instance \ --vpc-id vpc-3ac0fb5f

Sortie :

{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "TargetGroupName": "my-targets", "Protocol": "HTTP", "Port": 80, "VpcId": "vpc-3ac0fb5f", "HealthCheckProtocol": "HTTP", "HealthCheckPort": "traffic-port", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200" }, "TargetType": "instance", "ProtocolVersion": "HTTP1", "IpAddressType": "ipv4" } ] }

Pour plus d’informations, consultez Créer un groupe cible dans le Guide de l’utilisateur des Application Load Balancers.

Exemple 2 : pour créer un groupe cible pour acheminer le trafic d’un Application Load Balancer vers une fonction Lambda

L’exemple create-target-group suivant crée un groupe cible pour un Application Load Balancer dans lequel la cible est une fonction Lambda (le type de cible est lambda). Par défaut, les surveillances de l’état sont désactivées pour ce groupe cible.

aws elbv2 create-target-group \ --name my-lambda-target \ --target-type lambda

Sortie :

{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-lambda-target/a3003e085dbb8ddc", "TargetGroupName": "my-lambda-target", "HealthCheckEnabled": false, "HealthCheckIntervalSeconds": 35, "HealthCheckTimeoutSeconds": 30, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200" }, "TargetType": "lambda", "IpAddressType": "ipv4" } ] }

Pour plus d’informations, consultez Fonctions Lambda en tant que cibles dans le Guide de l’utilisateur des Application Load Balancers.

Exemple 3 : pour créer un groupe cible pour un Network Load Balancer

L’exemple create-target-group suivant crée un groupe cible pour un Network Load Balancer dans lequel vous enregistrez les cibles par adresse IP (le type de cible est ip). Ce groupe cible utilise le protocole TCP, le port 80 et les paramètres de surveillance de l’état par défaut d’un groupe cible HTTP.

aws elbv2 create-target-group \ --name my-ip-targets \ --protocol TCP \ --port 80 \ --target-type ip \ --vpc-id vpc-3ac0fb5f

Sortie :

{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-ip-targets/b6bba954d1361c78", "TargetGroupName": "my-ip-targets", "Protocol": "TCP", "Port": 80, "VpcId": "vpc-3ac0fb5f", "HealthCheckEnabled": true, "HealthCheckProtocol": "TCP", "HealthCheckPort": "traffic-port", "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 10, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "TargetType": "ip", "IpAddressType": "ipv4" } ] }

Pour plus d’informations, consultez Créer un groupe cible dans le Guide de l’utilisateur des Network Load Balancers.

Exemple 4 : pour créer un groupe cible pour acheminer le trafic d’un Network Load Balancer vers un Application Load Balancer

L’exemple create-target-group suivant crée un groupe cible pour un Network Load Balancer dans lequel vous enregistrez un Application Load Balancer en tant que cible (le type de cible est alb).

aws elbv2 create-target-group --name my-alb-target --protocol TCP --port 80 --target-type alb --vpc-id vpc-3ac0fb5f

Sortie :

{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-alb-target/a3003e085dbb8ddc", "TargetGroupName": "my-alb-target", "Protocol": "TCP", "Port": 80, "VpcId": "vpc-838475fe", "HealthCheckProtocol": "HTTP", "HealthCheckPort": "traffic-port", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 6, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200-399" }, "TargetType": "alb", "IpAddressType": "ipv4" } ] }

Pour plus d’informations, consultez Création d’un groupe cible avec un Application Load Balancer en tant que cible dans le Guide de l’utilisateur des Network Load Balancers.

Exemple 5 : pour créer un groupe cible pour un Gateway Load Balancer

L’exemple create-target-group suivant crée un groupe cible pour un Gateway Load Balancer dont la cible est une instance et le protocole du groupe cible est GENEVE.

aws elbv2 create-target-group \ --name my-glb-targetgroup \ --protocol GENEVE \ --port 6081 \ --target-type instance \ --vpc-id vpc-838475fe

Sortie :

{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-glb-targetgroup/00c3d57eacd6f40b6f", "TargetGroupName": "my-glb-targetgroup", "Protocol": "GENEVE", "Port": 6081, "VpcId": "vpc-838475fe", "HealthCheckProtocol": "TCP", "HealthCheckPort": "80", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 10, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "TargetType": "instance" } ] }

Pour plus d’informations, consultez Créer un groupe cible <https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/create-target-group.html> dans le Guide de l’utilisateur de Gateway Load Balancer.

  • Pour plus de détails sur l’API, consultez CreateTargetGroup dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-listener.

AWS CLI

Pour supprimer un écouteur

L’exemple delete-listener suivant supprime l’écouteur spécifié.

aws elbv2 delete-listener \ --listener-arn arn:aws:elasticloadbalancing:ua-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
  • Pour plus de détails sur l’API, consultez DeleteListener dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-load-balancer.

AWS CLI

Pour supprimer un équilibreur de charge

L’exemple delete-load-balancer suivant supprime l’équilibreur de charge spécifié.

aws elbv2 delete-load-balancer \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
  • Pour plus de détails sur l’API, consultez DeleteLoadBalancer dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-rule.

AWS CLI

Pour supprimer une règle

L’exemple delete-rule suivant supprime la règle spécifiée.

aws elbv2 delete-rule \ --rule-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3
  • Pour plus de détails sur l’API, consultez DeleteRule dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-target-group.

AWS CLI

Pour supprimer un groupe cible

L’exemple delete-target-group suivant supprime le groupe cible spécifié.

aws elbv2 delete-target-group \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Suppression d’un équilibreur de charge dans le Guide de l’utilisateur Application Load Balancer.

  • Pour plus de détails sur l’API, consultez DeleteTargetGroup dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser deregister-targets.

AWS CLI

Exemple 1 : pour annuler l’enregistrement d’une cible d’un groupe cible

L’exemple deregister-targets suivant supprime l’instance spécifiée du groupe cible spécifié.

aws elbv2 deregister-targets \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067 \ --targets Id=i-1234567890abcdef0

Exemple 2 : pour annuler l’enregistrement d’une cible enregistrée à l’aide de remplacements de port

L’exemple deregister-targets suivant supprime d’un groupe cible une instance qui a été enregistrée à l’aide de remplacements de port.

aws elbv2 deregister-targets \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-internal-targets/3bb63f11dfb0faf9 \ --targets Id=i-1234567890abcdef0,Port=80 Id=i-1234567890abcdef0,Port=766
  • Pour plus de détails sur l’API, consultez DeregisterTargets dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-account-limits.

AWS CLI

Pour décrire vos limites Elastic Load Balancing

L’exemple describe-account-limits suivant affiche les limites Elastic Load Balancing pour votre compte AWS dans la région actuelle.

aws elbv2 describe-account-limits

Sortie :

{ "Limits": [ { "Name": "target-groups", "Max": "3000" }, { "Name": "targets-per-application-load-balancer", "Max": "1000" }, { "Name": "listeners-per-application-load-balancer", "Max": "50" }, { "Name": "rules-per-application-load-balancer", "Max": "100" }, { "Name": "network-load-balancers", "Max": "50" }, { "Name": "targets-per-network-load-balancer", "Max": "3000" }, { "Name": "targets-per-availability-zone-per-network-load-balancer", "Max": "500" }, { "Name": "listeners-per-network-load-balancer", "Max": "50" }, { "Name": "condition-values-per-alb-rule", "Max": "5" }, { "Name": "condition-wildcards-per-alb-rule", "Max": "5" }, { "Name": "target-groups-per-application-load-balancer", "Max": "100" }, { "Name": "target-groups-per-action-on-application-load-balancer", "Max": "5" }, { "Name": "target-groups-per-action-on-network-load-balancer", "Max": "1" }, { "Name": "certificates-per-application-load-balancer", "Max": "25" }, { "Name": "certificates-per-network-load-balancer", "Max": "25" }, { "Name": "targets-per-target-group", "Max": "1000" }, { "Name": "target-id-registrations-per-application-load-balancer", "Max": "1000" }, { "Name": "network-load-balancer-enis-per-vpc", "Max": "1200" }, { "Name": "application-load-balancers", "Max": "50" }, { "Name": "gateway-load-balancers", "Max": "100" }, { "Name": "gateway-load-balancers-per-vpc", "Max": "100" }, { "Name": "geneve-target-groups", "Max": "100" }, { "Name": "targets-per-availability-zone-per-gateway-load-balancer", "Max": "300" } ] }

Pour plus d’informations, consultez Quotas dans les Références générales AWS.

  • Pour plus de détails sur l’API, consultez DescribeAccountLimits dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-listener-certificates.

AWS CLI

Pour décrire les certificats de l’écouteur sécurisé

Cet exemple décrit les certificats de l’écouteur sécurisé spécifié.

Commande :

aws elbv2 describe-listener-certificates --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2

Sortie :

{ "Certificates": [ { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705", "IsDefault": false }, { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/3dcb0a41-bd72-4774-9ad9-756919c40557", "IsDefault": false }, { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/fe59da96-6f58-4a22-8eed-6d0d50477e1d", "IsDefault": true } ] }

L’exemple de code suivant montre comment utiliser describe-listeners.

AWS CLI

Pour décrire un écouteur

Cet exemple décrit l’écouteur spécifié.

Commande :

aws elbv2 describe-listeners --listener-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2

Sortie :

{ "Listeners": [ { "Port": 80, "Protocol": "HTTP", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" } ] }

Pour décrire les écouteurs d’un équilibreur de charge

Cet exemple décrit les écouteurs de l’équilibreur de charge spécifié.

Commande :

aws elbv2 describe-listeners --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188

Sortie :

{ "Listeners": [ { "Port": 443, "Protocol": "HTTPS", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "SslPolicy": "ELBSecurityPolicy-2015-05", "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-server-cert" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65" }, { "Port": 80, "Protocol": "HTTP", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" } ] }
  • Pour plus de détails sur l’API, consultez DescribeListeners dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-load-balancer-attributes.

AWS CLI

Pour décrire les attributs d’un équilibreur de charge

L’exemple describe-load-balancer-attributes suivant affiche les attributs de l’équilibreur de charge spécifié.

aws elbv2 describe-load-balancer-attributes \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188

L’exemple de sortie suivant montre les attributs d’un Application Load Balancer.

{ "Attributes": [ { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "", "Key": "access_logs.s3.bucket" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "60", "Key": "idle_timeout.timeout_seconds" }, { "Value": "false", "Key": "deletion_protection.enabled" }, { "Value": "true", "Key": "routing.http2.enabled" } ] }

L’exemple de sortie suivant inclut les attributs d’un Network Load Balancer.

{ "Attributes": [ { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "", "Key": "access_logs.s3.bucket" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "false", "Key": "deletion_protection.enabled" }, { "Value": "false", "Key": "load_balancing.cross_zone.enabled" } ] }

L’exemple de code suivant montre comment utiliser describe-load-balancers.

AWS CLI

Pour décrire un équilibreur de charge

Cet exemple décrit l’équilibreur de charge spécifié.

Commande :

aws elbv2 describe-load-balancers --load-balancer-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188

Sortie :

{ "LoadBalancers": [ { "Type": "application", "Scheme": "internet-facing", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "ZoneName": "us-west-2a", "SubnetId": "subnet-8360a9e7" }, { "ZoneName": "us-west-2b", "SubnetId": "subnet-b7d581c0" } ], "CreatedTime": "2016-03-25T21:26:12.920Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "my-load-balancer-424835706.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-5943793c" ], "LoadBalancerName": "my-load-balancer", "State": { "Code": "active" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" } ] }

Pour décrire tous les équilibreurs de charge

Cet exemple décrit tous vos équilibreurs de charge.

Commande :

aws elbv2 describe-load-balancers
  • Pour plus de détails sur l’API, consultez DescribeLoadBalancers dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-rules.

AWS CLI

Exemple 1 : pour décrire une règle

L’exemple describe-rules suivant affiche les détails de la règle spécifiée.

aws elbv2 describe-rules \ --rule-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee

Exemple 2 : pour décrire les règles d’un écouteur

L’exemple describe-rules suivant affiche les détails des règles pour l’écouteur spécifié. La sortie inclut la règle par défaut et toutes les autres règles que vous avez ajoutées.

aws elbv2 describe-rules \ --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
  • Pour plus de détails sur l’API, consultez DescribeRules dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-ssl-policies.

AWS CLI

Exemple 1 : pour répertorier les politiques utilisées pour la négociation SSL par type d’équilibreur de charge

L’exemple describe-ssl-policies suivant affiche les noms des politiques que vous pouvez utiliser pour la négociation SSL avec un Application Load Balancer. Cet exemple utilise le paramètre --query pour afficher uniquement les noms des politiques.

aws elbv2 describe-ssl-policies \ --load-balancer-type application \ --query SslPolicies[*].Name

Sortie :

[ "ELBSecurityPolicy-2016-08", "ELBSecurityPolicy-TLS13-1-2-2021-06", "ELBSecurityPolicy-TLS13-1-2-Res-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06", "ELBSecurityPolicy-TLS13-1-1-2021-06", "ELBSecurityPolicy-TLS13-1-0-2021-06", "ELBSecurityPolicy-TLS13-1-3-2021-06", "ELBSecurityPolicy-TLS-1-2-2017-01", "ELBSecurityPolicy-TLS-1-1-2017-01", "ELBSecurityPolicy-TLS-1-2-Ext-2018-06", "ELBSecurityPolicy-FS-2018-06", "ELBSecurityPolicy-2015-05", "ELBSecurityPolicy-TLS-1-0-2015-04", "ELBSecurityPolicy-FS-1-2-Res-2019-08", "ELBSecurityPolicy-FS-1-1-2019-08", "ELBSecurityPolicy-FS-1-2-2019-08", "ELBSecurityPolicy-FS-1-2-Res-2020-10" ]

Exemple 2 : pour répertorier les politiques qui prennent en charge un protocole spécifique

L’exemple describe-ssl-policies suivant affiche les noms des politiques qui prennent en charge le protocole TLS 1.3. Cet exemple utilise le paramètre --query pour afficher uniquement les noms des politiques.

aws elbv2 describe-ssl-policies \ --load-balancer-type application \ --query SslPolicies[?contains(SslProtocols,'TLSv1.3')].Name

Sortie :

[ "ELBSecurityPolicy-TLS13-1-2-2021-06", "ELBSecurityPolicy-TLS13-1-2-Res-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06", "ELBSecurityPolicy-TLS13-1-1-2021-06", "ELBSecurityPolicy-TLS13-1-0-2021-06", "ELBSecurityPolicy-TLS13-1-3-2021-06" ]

Exemple 3 : pour afficher les chiffrements d’une politique

L’exemple describe-ssl-policies suivant affiche les noms des chiffrements pour la politique spécifiée. L’exemple utilise le paramètre --query pour afficher uniquement les noms des chiffrements. Le premier chiffrement de la liste a la priorité 1 et les autres sont classés par ordre de priorité.

aws elbv2 describe-ssl-policies \ --names ELBSecurityPolicy-TLS13-1-2-2021-06 \ --query SslPolicies[*].Ciphers[*].Name

Sortie :

[ "TLS_AES_128_GCM_SHA256", "TLS_AES_256_GCM_SHA384", "TLS_CHACHA20_POLY1305_SHA256", "ECDHE-ECDSA-AES128-GCM-SHA256", "ECDHE-RSA-AES128-GCM-SHA256", "ECDHE-ECDSA-AES128-SHA256", "ECDHE-RSA-AES128-SHA256", "ECDHE-ECDSA-AES256-GCM-SHA384", "ECDHE-RSA-AES256-GCM-SHA384", "ECDHE-ECDSA-AES256-SHA384", "ECDHE-RSA-AES256-SHA384" ]

Pour plus d’informations, consultez Stratégies de sécurité dans le Guide de l’utilisateur des Application Load Balancers.

  • Pour plus de détails sur l’API, consultez DescribeSslPolicies dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-tags.

AWS CLI

Pour décrire les balises attribuées à un équilibreur de charge

Cet exemple décrit les balises associées à l’équilibreur de charge spécifié.

Commande :

aws elbv2 describe-tags --resource-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188

Sortie :

{ "TagDescriptions": [ { "ResourceArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Tags": [ { "Value": "lima", "Key": "project" }, { "Value": "digital-media", "Key": "department" } ] } ] }
  • Pour plus de détails sur l’API, consultez DescribeTags dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-target-group-attributes.

AWS CLI

Pour décrire les attributs d’un groupe cible

L’exemple describe-target-group-attributes suivant affiche les attributs du groupe cible spécifié.

aws elbv2 describe-target-group-attributes \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

La sortie inclut les attributs si le protocole est HTTP ou HTTPS et si le type de cible est instance ou ip.

{ "Attributes": [ { "Value": "false", "Key": "stickiness.enabled" }, { "Value": "300", "Key": "deregistration_delay.timeout_seconds" }, { "Value": "lb_cookie", "Key": "stickiness.type" }, { "Value": "86400", "Key": "stickiness.lb_cookie.duration_seconds" }, { "Value": "0", "Key": "slow_start.duration_seconds" } ] }

La sortie suivante inclut les attributs si le protocole est HTTP ou HTTPS et si le type de cible est lambda.

{ "Attributes": [ { "Value": "false", "Key": "lambda.multi_value_headers.enabled" } ] }

La sortie suivante inclut les attributs si le protocole est TCP, TLS, UDP ou TCP_UDP.

{ "Attributes": [ { "Value": "false", "Key": "proxy_protocol_v2.enabled" }, { "Value": "300", "Key": "deregistration_delay.timeout_seconds" } ] }

L’exemple de code suivant montre comment utiliser describe-target-groups.

AWS CLI

Exemple 1 : pour décrire un groupe cible

L’exemple describe-target-groups suivant affiche les détails du groupe cible spécifié.

aws elbv2 describe-target-groups \ --target-group-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Sortie :

{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "TargetGroupName": "my-targets", "Protocol": "HTTP", "Port": 80, "VpcId": "vpc-3ac0fb5f", "HealthCheckProtocol": "HTTP", "HealthCheckPort": "traffic-port", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200" }, "LoadBalancerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "TargetType": "instance", "ProtocolVersion": "HTTP1", "IpAddressType": "ipv4" } ] }

Exemple 2 : pour décrire tous les groupes cibles d’un équilibreur de charge

L’exemple describe-target-groups suivant affiche les détails de tous les groupes cibles pour l’équilibreur de charge spécifié. L’exemple utilise le paramètre --query pour afficher uniquement les noms des groupes cibles.

aws elbv2 describe-target-groups \ --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 \ --query TargetGroups[*].TargetGroupName

Sortie :

[ "my-instance-targets", "my-ip-targets", "my-lambda-target" ]

Pour plus d’informations, consultez Groupes cibles dans le Guide de l’utilisateur des Application Load Balancers.

  • Pour plus de détails sur l’API, consultez DescribeTargetGroups dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-target-health.

AWS CLI

Exemple 1 : pour décrire l’état des cibles d’un groupe cible

L’exemple describe-target-health suivant affiche les détails de l’état des cibles pour le groupe cible spécifié. Ces cibles sont saines.

aws elbv2 describe-target-health \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Sortie :

{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-ceddcd4d", "Port": 80 }, "TargetHealth": { "State": "healthy" } }, { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "healthy" } } ] }

Exemple 2 : pour décrire l’état d’une cible

L’exemple describe-target-health suivant affiche les détails de l’état de la cible spécifiée. Cette cible est saine.

aws elbv2 describe-target-health \ --targets Id=i-0f76fade,Port=80 \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

Sortie :

{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "healthy" } } ] }

L’exemple de sortie suivant concerne une cible dont le groupe cible n’est pas spécifié dans une action pour un écouteur. Cette cible ne peut pas recevoir de trafic en provenance de l’équilibreur de charge.

{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "unused", "Reason": "Target.NotInUse", "Description": "Target group is not configured to receive traffic from the load balancer" } } ] }

L’exemple de sortie suivant concerne une cible dont le groupe cible a été uniquement spécifié dans une action pour un écouteur. La cible est toujours en cours d’enregistrement.

{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "initial", "Reason": "Elb.RegistrationInProgress", "Description": "Target registration is in progress" } } ] }

L’exemple de sortie suivant concerne une cible défectueuse.

{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "unhealthy", "Reason": "Target.Timeout", "Description": "Connection to target timed out" } } ] }

L’exemple de sortie suivant concerne une cible qui est une fonction Lambda et les surveillances de l’état sont désactivées.

{ "TargetHealthDescriptions": [ { "Target": { "Id": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "AvailabilityZone": "all", }, "TargetHealth": { "State": "unavailable", "Reason": "Target.HealthCheckDisabled", "Description": "Health checks are not enabled for this target" } } ] }
  • Pour plus de détails sur l’API, consultez DescribeTargetHealth dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser modify-listener.

AWS CLI

Exemple 1 : pour remplacer l’action par défaut par une action directe

L’exemple modify-listener suivant remplace l’action par défaut par une action forward pour l’écouteur spécifié.

aws elbv2 modify-listener \ --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f

Sortie :

{ "Listeners": [ { "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Protocol": "HTTP", "Port": 80, "DefaultActions": [ { "Type": "forward", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f" } ] } ] }

Exemple 2 : pour remplacer l’action par défaut par une action de redirection

L’exemple modify-listener suivant remplace l’action par défaut par une action redirect pour l’écouteur spécifié.

aws elbv2 modify-listener \ --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2 \ --default-actions Type=redirect, RedirectConfig='{Protocol=HTTPS,StatusCode=HTTP_302}'

Sortie :

{ "Listeners": [ { "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Protocol": "HTTP", "Port": 80, "DefaultActions": [ { "Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "#{port}", "Host": "#{host}", "Path": "/#{path}", "Query": "#{query}", "StatusCode": "HTTP_302", } } ] } ] }

Exemple 3 : pour modifier le certificat de serveur

L’exemple modify-listener suivant modifie le certificat de serveur pour l’écouteur HTTPS spécifié.

aws elbv2 modify-listener \ --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65 \ --certificates CertificateArn=arn:aws:iam::123456789012:server-certificate/my-new-server-cert

Sortie :

{ "Listeners": [ { "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Protocol": "HTTPS", "Port": 443, "DefaultActions": [ { "Type": "forward", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" } ], "SslPolicy": "ELBSecurityPolicy-2015-05", "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-new-server-cert" } ], } ] }

Pour plus d’informations, consultez Règles d’un écouteur dans le Guide de l’utilisateur des Application Load Balancers.

  • Pour plus de détails sur l’API, consultez ModifyListener dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser modify-load-balancer-attributes.

AWS CLI

Pour activer la protection contre la suppression

Cet exemple active la protection contre la suppression pour l’équilibreur de charge spécifié.

Commande :

aws elbv2 modify-load-balancer-attributes --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 --attributes Key=deletion_protection.enabled,Value=true

Sortie :

{ "Attributes": [ { "Value": "true", "Key": "deletion_protection.enabled" }, { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "60", "Key": "idle_timeout.timeout_seconds" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "", "Key": "access_logs.s3.bucket" } ] }

Pour modifier le délai d’inactivité

Cet exemple modifie la valeur du délai d’inactivité pour l’équilibreur de charge spécifié.

Commande :

aws elbv2 modify-load-balancer-attributes --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 --attributes Key=idle_timeout.timeout_seconds,Value=30

Sortie :

{ "Attributes": [ { "Value": "30", "Key": "idle_timeout.timeout_seconds" }, { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "true", "Key": "deletion_protection.enabled" }, { "Value": "", "Key": "access_logs.s3.bucket" } ] }

Pour activer les journaux d’accès

Cet exemple active les journaux d’accès pour l’équilibreur de charge spécifié. Notez que le compartiment S3 doit figurer dans la même région que l’équilibreur de charge et être associé à une politique autorisant l’accès au service Elastic Load Balancing.

Commande :

aws elbv2 modify-load-balancer-attributes --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 --attributes Key=access_logs.s3.enabled,Value=true Key=access_logs.s3.bucket,Value=my-loadbalancer-logs Key=access_logs.s3.prefix,Value=myapp

Sortie :

{ "Attributes": [ { "Value": "true", "Key": "access_logs.s3.enabled" }, { "Value": "my-load-balancer-logs", "Key": "access_logs.s3.bucket" }, { "Value": "myapp", "Key": "access_logs.s3.prefix" }, { "Value": "60", "Key": "idle_timeout.timeout_seconds" }, { "Value": "false", "Key": "deletion_protection.enabled" } ] }

L’exemple de code suivant montre comment utiliser modify-rule.

AWS CLI

Pour modifier une règle

L’exemple modify-rule suivant met à jour les actions et les conditions pour la règle spécifiée.

aws elbv2 modify-rule \ --actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067 \ --conditions Field=path-pattern,Values='/images/*' --rule-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee

Sortie :

{ "Rules": [ { "Priority": "10", "Conditions": [ { "Field": "path-pattern", "Values": [ "/images/*" ] } ], "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee", "IsDefault": false, "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ] } ] }
  • Pour plus de détails sur l’API, consultez ModifyRule dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser modify-target-group-attributes.

AWS CLI

Pour modifier le délai d’expiration d’une annulation d’enregistrement

Cet exemple définit le délai d’expiration de l’annulation de l’enregistrement sur la valeur spécifiée pour le groupe cible spécifié.

Commande :

aws elbv2 modify-target-group-attributes --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067 --attributes Key=deregistration_delay.timeout_seconds,Value=600

Sortie :

{ "Attributes": [ { "Value": "false", "Key": "stickiness.enabled" }, { "Value": "600", "Key": "deregistration_delay.timeout_seconds" }, { "Value": "lb_cookie", "Key": "stickiness.type" }, { "Value": "86400", "Key": "stickiness.lb_cookie.duration_seconds" } ] }

L’exemple de code suivant montre comment utiliser modify-target-group.

AWS CLI

Pour modifier la configuration de la surveillance de l’état pour un groupe cible

L’exemple modify-target-group suivant modifie la configuration des surveillances de l’état utilisées pour évaluer l’état des cibles pour le groupe cible spécifié. Notez qu’en raison de la façon dont l’interface de ligne de commande analyse les virgules, vous devez entourer la plage de l’option --matcher de guillemets simples plutôt que de guillemets doubles.

aws elbv2 modify-target-group \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-https-targets/2453ed029918f21f \ --health-check-protocol HTTPS \ --health-check-port 443 \ --matcher HttpCode='200,299'

Sortie :

{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-https-targets/2453ed029918f21f", "TargetGroupName": "my-https-targets", "Protocol": "HTTPS", "Port": 443, "VpcId": "vpc-3ac0fb5f", "HealthCheckProtocol": "HTTPS", "HealthCheckPort": "443", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "Matcher": { "HttpCode": "200,299" }, "LoadBalancerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "TargetType": "instance", "ProtocolVersion": "HTTP1", "IpAddressType": "ipv4" } ] }

Pour plus d’informations, consultez Groupes cibles dans le Guide de l’utilisateur des Application Load Balancers.

  • Pour plus de détails sur l’API, consultez ModifyTargetGroup dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser register-targets.

AWS CLI

Exemple 1 : pour enregistrer des cibles auprès d’un groupe cible par ID d’instance

L’exemple register-targets suivant enregistre les instances spécifiées auprès d’un groupe cible. Le groupe cible doit avoir le type de cible instance.

aws elbv2 register-targets \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067 \ --targets Id=i-1234567890abcdef0 Id=i-0abcdef1234567890

Exemple 2 : pour enregistrer des cibles auprès d’un groupe cible à l’aide de remplacements de port

L’exemple register-targets suivant enregistre l’instance spécifiée auprès d’un groupe cible à l’aide de plusieurs ports. Cela vous permet d’enregistrer des conteneurs sur la même instance en tant que cibles du groupe cible.

aws elbv2 register-targets \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-internal-targets/3bb63f11dfb0faf9 \ --targets Id=i-0598c7d356eba48d7,Port=80 Id=i-0598c7d356eba48d7,Port=766

Exemple 3 : pour enregistrer des cibles auprès d’un groupe cible par adresse IP

L’exemple register-targets suivant inscrit les adresses IP spécifiées auprès d’un groupe cible. Le groupe cible doit avoir le type de cible ip.

aws elbv2 register-targets \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-ip-targets/8518e899d173178f \ --targets Id=10.0.1.15 Id=10.0.1.23

Exemple 4 : pour enregistrer une fonction Lambda en tant que cible

L’exemple register-targets suivant inscrit les adresses IP spécifiées auprès d’un groupe cible. Le groupe cible doit avoir le type de cible lambda. Vous devez accorder à Elastic Load Balancing l’autorisation d’invoquer la fonction Lambda.

aws elbv2 register-targets \ --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-ip-targets/8518e899d173178f \ --targets Id=arn:aws:lambda:us-west-2:123456789012:function:my-function
  • Pour plus de détails sur l’API, consultez RegisterTargets dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser remove-listener-certificates.

AWS CLI

Pour supprimer un certificat d’un écouteur sécurisé

Cet exemple supprime le certificat spécifié de l’écouteur sécurisé spécifié.

Commande :

aws elbv2 remove-listener-certificates --listener-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2 --certificates CertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705

L’exemple de code suivant montre comment utiliser remove-tags.

AWS CLI

Pour supprimer des balises d’un équilibreur de charge

L’exemple remove-tags suivant supprime les balises project et department de l’équilibreur de charge spécifié.

aws elbv2 remove-tags \ --resource-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 \ --tag-keys project department
  • Pour plus de détails sur l’API, consultez RemoveTags dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser set-ip-address-type.

AWS CLI

Pour définir le type d’adresse d’un équilibreur de charge

Cet exemple définit le type d’adresse de l’équilibreur de charge spécifié sur dualstack. Les sous-réseaux de l’équilibreur de charge doivent être associés à des blocs CIDR IPv6.

Commande :

aws elbv2 set-ip-address-type --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 --ip-address-type dualstack

Sortie :

{ "IpAddressType": "dualstack" }
  • Pour plus de détails sur l’API, consultez SetIpAddressType dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser set-rule-priorities.

AWS CLI

Pour définir la priorité d’une règle

Cet exemple définit la priorité de la règle spécifiée.

Commande :

aws elbv2 set-rule-priorities --rule-priorities RuleArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3,Priority=5

Sortie :

{ "Rules": [ { "Priority": "5", "Conditions": [ { "Field": "path-pattern", "Values": [ "/img/*" ] } ], "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3", "IsDefault": false, "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ] } ] }
  • Pour plus de détails sur l’API, consultez SetRulePriorities dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser set-security-groups.

AWS CLI

Pour associer un groupe de sécurité à un équilibreur de charge

Cet exemple associe le groupe de sécurité spécifié à l’équilibreur de charge spécifié.

Commande :

aws elbv2 set-security-groups --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 --security-groups sg-5943793c

Sortie :

{ "SecurityGroupIds": [ "sg-5943793c" ] }
  • Pour plus de détails sur l’API, consultez SetSecurityGroups dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser set-subnets.

AWS CLI

Pour activer les zones de disponibilité pour un équilibreur de charge

Cet exemple active la zone de disponibilité du sous-réseau spécifié pour l’équilibreur de charge spécifié.

Commande :

aws elbv2 set-subnets --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188 --subnets subnet-8360a9e7 subnet-b7d581c0

Sortie :

{ "AvailabilityZones": [ { "SubnetId": "subnet-8360a9e7", "ZoneName": "us-west-2a" }, { "SubnetId": "subnet-b7d581c0", "ZoneName": "us-west-2b" } ] }
  • Pour plus de détails sur l’API, consultez SetSubnets dans la Référence des commandes de l’AWS CLI.