Exemples de Route 53 utilisant AWS CLI - AWS Command Line Interface

Cette documentation concerne AWS CLI uniquement la version 1. Pour la documentation relative à la version 2 du AWS CLI, consultez le guide de l'utilisateur de la version 2.

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.

Exemples de Route 53 utilisant AWS CLI

Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l' AWS Command Line Interface aide de Route 53.

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 utiliserchange-resource-record-sets.

AWS CLI

Pour créer, mettre à jour ou supprimer un jeu d’enregistrements de ressources

La commande change-resource-record-sets suivante crée un jeu d’enregistrements de ressources à l’aide de l’hosted-zone-id Z1R8UBAEXAMPLE et de la configuration au format JSON du fichier C:\awscli\route53\change-resource-record-sets.json :

aws route53 change-resource-record-sets --hosted-zone-id Z1R8UBAEXAMPLE --change-batch file://C:\awscli\route53\change-resource-record-sets.json

Pour plus d'informations, consultez POST ChangeResourceRecordSets dans le manuel Amazon Route 53 API Reference.

La configuration du fichier JSON dépend du type de jeu d’enregistrements de ressources que vous souhaitez créer :

BasicWeightedAliasWeighted AliasLatencyLatency AliasFailoverFailover Alias

Syntaxe de base :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "TTL": time to live in seconds, "ResourceRecords": [ { "Value": "applicable value for the record type" }, {...} ] } }, {...} ] }

Syntaxe pondérée :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "SetIdentifier": "unique description for this resource record set", "Weight": value between 0 and 255, "TTL": time to live in seconds, "ResourceRecords": [ { "Value": "applicable value for the record type" }, {...} ], "HealthCheckId": "optional ID of an Amazon Route 53 health check" } }, {...} ] }

Syntaxe d’alias :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "AliasTarget": { "HostedZoneId": "hosted zone ID for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or Amazon Route 53 hosted zone", "DNSName": "DNS domain name for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or another resource record set in this hosted zone", "EvaluateTargetHealth": true|false }, "HealthCheckId": "optional ID of an Amazon Route 53 health check" } }, {...} ] }

Syntaxe d’alias pondérée :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "SetIdentifier": "unique description for this resource record set", "Weight": value between 0 and 255, "AliasTarget": { "HostedZoneId": "hosted zone ID for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or Amazon Route 53 hosted zone", "DNSName": "DNS domain name for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or another resource record set in this hosted zone", "EvaluateTargetHealth": true|false }, "HealthCheckId": "optional ID of an Amazon Route 53 health check" } }, {...} ] }

Syntaxe de latence :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "SetIdentifier": "unique description for this resource record set", "Region": "Amazon EC2 region name", "TTL": time to live in seconds, "ResourceRecords": [ { "Value": "applicable value for the record type" }, {...} ], "HealthCheckId": "optional ID of an Amazon Route 53 health check" } }, {...} ] }

Syntaxe d’alias de latence :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "SetIdentifier": "unique description for this resource record set", "Region": "Amazon EC2 region name", "AliasTarget": { "HostedZoneId": "hosted zone ID for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or Amazon Route 53 hosted zone", "DNSName": "DNS domain name for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or another resource record set in this hosted zone", "EvaluateTargetHealth": true|false }, "HealthCheckId": "optional ID of an Amazon Route 53 health check" } }, {...} ] }

Syntaxe de basculement :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "SetIdentifier": "unique description for this resource record set", "Failover": "PRIMARY" | "SECONDARY", "TTL": time to live in seconds, "ResourceRecords": [ { "Value": "applicable value for the record type" }, {...} ], "HealthCheckId": "ID of an Amazon Route 53 health check" } }, {...} ] }

Syntaxe d’alias de basculement :

{ "Comment": "optional comment about the changes in this change batch request", "Changes": [ { "Action": "CREATE"|"DELETE"|"UPSERT", "ResourceRecordSet": { "Name": "DNS domain name", "Type": "SOA"|"A"|"TXT"|"NS"|"CNAME"|"MX"|"PTR"|"SRV"|"SPF"|"AAAA", "SetIdentifier": "unique description for this resource record set", "Failover": "PRIMARY" | "SECONDARY", "AliasTarget": { "HostedZoneId": "hosted zone ID for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or Amazon Route 53 hosted zone", "DNSName": "DNS domain name for your CloudFront distribution, Amazon S3 bucket, Elastic Load Balancing load balancer, or another resource record set in this hosted zone", "EvaluateTargetHealth": true|false }, "HealthCheckId": "optional ID of an Amazon Route 53 health check" } }, {...} ] }
  • Pour plus de détails sur l'API, reportez-vous ChangeResourceRecordSetsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserchange-tags-for-resource.

AWS CLI

La commande suivante ajoute une balise nommée owner à une ressource de surveillance de l’état spécifiée par ID :

aws route53 change-tags-for-resource --resource-type healthcheck --resource-id 6233434j-18c1-34433-ba8e-3443434 --add-tags Key=owner,Value=myboss

La commande suivante supprime une balise nommée owner à partir d’une ressource de zone hébergée spécifiée par ID :

aws route53 change-tags-for-resource --resource-type hostedzone --resource-id Z1523434445 --remove-tag-keys owner
  • Pour plus de détails sur l'API, reportez-vous ChangeTagsForResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-health-check.

AWS CLI

Pour créer une surveillance de l’état

La commande create-health-check suivante crée une surveillance de l’état à l’aide de la référence appelant 2014-04-01-18:47 et de la configuration au format JSON du fichier C:\awscli\route53\create-health-check.json :

aws route53 create-health-check --caller-reference 2014-04-01-18:47 --health-check-config file://C:\awscli\route53\create-health-check.json

Syntaxe JSON :

{ "IPAddress": "IP address of the endpoint to check", "Port": port on the endpoint to check--required when Type is "TCP", "Type": "HTTP"|"HTTPS"|"HTTP_STR_MATCH"|"HTTPS_STR_MATCH"|"TCP", "ResourcePath": "path of the file that you want Amazon Route 53 to request--all Types except TCP", "FullyQualifiedDomainName": "domain name of the endpoint to check--all Types except TCP", "SearchString": "if Type is HTTP_STR_MATCH or HTTPS_STR_MATCH, the string to search for in the response body from the specified resource", "RequestInterval": 10 | 30, "FailureThreshold": integer between 1 and 10 }

Pour ajouter la surveillance de l’état à un jeu d’enregistrements de ressources Route 53, utilisez la commande change-resource-record-sets.

Pour plus d’informations, consultez Surveillances de l’état Amazon Route 53 et basculement DNS dans le Manuel du développeur Amazon Route 53.

  • Pour plus de détails sur l'API, reportez-vous CreateHealthCheckà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-hosted-zone.

AWS CLI

Pour créer une zone hébergée

La commande create-hosted-zone suivante ajoute une zone hébergée nommée example.com à l’aide de la référence appelant 2014-04-01-18:47. Le commentaire facultatif inclut un espace, il doit donc être placé entre guillemets :

aws route53 create-hosted-zone --name example.com --caller-reference 2014-04-01-18:47 --hosted-zone-config Comment="command-line version"

Pour plus d’informations, consultez Utilisation de zones hébergées dans le Guide du développeur Amazon Route 53.

  • Pour plus de détails sur l'API, reportez-vous CreateHostedZoneà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-health-check.

AWS CLI

Pour supprimer une surveillance de l’état

La commande delete-health-check suivante supprime la surveillance de l’état avec l’health-check-id e75b48d9-547a-4c3d-88a5-ae4002397608 :

aws route53 delete-health-check --health-check-id e75b48d9-547a-4c3d-88a5-ae4002397608
  • Pour plus de détails sur l'API, reportez-vous DeleteHealthCheckà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-hosted-zone.

AWS CLI

Pour supprimer une zone hébergée

La commande delete-hosted-zone suivante supprime la zone hébergée avec l’id Z36KTIQEXAMPLE :

aws route53 delete-hosted-zone --id Z36KTIQEXAMPLE
  • Pour plus de détails sur l'API, reportez-vous DeleteHostedZoneà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-change.

AWS CLI

Pour obtenir le statut d’une modification apportée aux jeux d’enregistrements de ressources

La commande get-change suivante obtient le statut et d’autres informations relatives à la demande change-resource-record-sets qui a l’Id /change/CWPIK4URU2I5S :

aws route53 get-change --id /change/CWPIK4URU2I5S
  • Pour plus de détails sur l'API, reportez-vous GetChangeà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-health-check.

AWS CLI

Pour obtenir les informations sur une surveillance de l’état

La commande get-health-check suivante obtient des informations sur la surveillance de l’état qui a l’health-check-id 02ec8401-9879-4259-91fa-04e66d094674 :

aws route53 get-health-check --health-check-id 02ec8401-9879-4259-91fa-04e66d094674
  • Pour plus de détails sur l'API, reportez-vous GetHealthCheckà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-hosted-zone.

AWS CLI

Pour obtenir les informations sur une zone hébergée

La commande get-hosted-zone suivante obtient des informations sur la zone hébergée qui a l’id Z1R8UBAEXAMPLE :

aws route53 get-hosted-zone --id Z1R8UBAEXAMPLE
  • Pour plus de détails sur l'API, reportez-vous GetHostedZoneà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-health-checks.

AWS CLI

Pour répertorier les bilans de santé associés au AWS compte courant

La list-health-checks commande suivante répertorie des informations détaillées sur les 100 premiers bilans de santé associés au AWS compte courant. :

aws route53 list-health-checks

Si vous avez plus de 100 surveillances de l’état ou si vous souhaitez les répertorier dans des groupes inférieurs à 100 éléments, incluez le paramètre --maxitems. Par exemple, pour répertorier les surveillances de l’état une par une, utilisez la commande suivante :

aws route53 list-health-checks --max-items 1

Pour afficher la surveillance de l’état suivante, prenez la valeur NextToken de la réponse à la commande précédente et incluez-la dans le paramètre --starting-token, par exemple :

aws route53 list-health-checks --max-items 1 --starting-token Z3M3LMPEXAMPLE
  • Pour plus de détails sur l'API, reportez-vous ListHealthChecksà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-hosted-zones-by-name.

AWS CLI

La commande suivante crée une liste de 100 zones hébergées maximum, classées par nom de domaine :

aws route53 list-hosted-zones-by-name

Sortie :

{ "HostedZones": [ { "ResourceRecordSetCount": 2, "CallerReference": "test20150527-2", "Config": { "Comment": "test2", "PrivateZone": false }, "Id": "/hostedzone/Z119WBBTVP5WFX", "Name": "2.example.com." }, { "ResourceRecordSetCount": 2, "CallerReference": "test20150527-1", "Config": { "Comment": "test", "PrivateZone": false }, "Id": "/hostedzone/Z3P5QSUBK4POTI", "Name": "www.example.com." } ], "IsTruncated": false, "MaxItems": "100" }

La commande suivante crée une liste des zones hébergées classées par nom, commençant par www.example.com :

aws route53 list-hosted-zones-by-name --dns-name www.example.com

Sortie :

{ "HostedZones": [ { "ResourceRecordSetCount": 2, "CallerReference": "mwunderl20150527-1", "Config": { "Comment": "test", "PrivateZone": false }, "Id": "/hostedzone/Z3P5QSUBK4POTI", "Name": "www.example.com." } ], "DNSName": "www.example.com", "IsTruncated": false, "MaxItems": "100" }
  • Pour plus de détails sur l'API, reportez-vous ListHostedZonesByNameà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-hosted-zones.

AWS CLI

Pour répertorier les zones hébergées associées au AWS compte actuel

La list-hosted-zones commande suivante répertorie les informations récapitulatives sur les 100 premières zones hébergées associées au AWS compte actuel. :

aws route53 list-hosted-zones

Si vous avez plus de 100 zones hébergées ou si vous souhaitez les répertorier dans des groupes inférieurs à 100, incluez le paramètre --max-items. Par exemple, pour répertorier les zones hébergées une par une, utilisez la commande suivante :

aws route53 list-hosted-zones --max-items 1

Pour afficher les informations relatives à la zone hébergée suivante, prenez la valeur NextToken de la réponse à la commande précédente et incluez-la dans le paramètre --starting-token, par exemple :

aws route53 list-hosted-zones --max-items 1 --starting-token Z3M3LMPEXAMPLE
  • Pour plus de détails sur l'API, reportez-vous ListHostedZonesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-query-logging-configs.

AWS CLI

Pour créer une liste des configurations de journalisation de requêtes

L'list-query-logging-configsexemple suivant répertorie les informations relatives aux 100 premières configurations de journalisation des requêtes de votre AWS compte, pour la zone hébergéeZ1OX3WQEXAMPLE.

aws route53 list-query-logging-configs \ --hosted-zone-id Z1OX3WQEXAMPLE

Sortie :

{ "QueryLoggingConfigs": [ { "Id": "964ff34e-ae03-4f06-80a2-9683cexample", "HostedZoneId": "Z1OX3WQEXAMPLE", "CloudWatchLogsLogGroupArn": "arn:aws:logs:us-east-1:111122223333:log-group:/aws/route53/example.com:*" } ] }

Pour plus d’informations, consultez Journalisation des requêtes DNS dans le Guide du développeur Amazon Route 53.

  • Pour plus de détails sur l'API, reportez-vous ListQueryLoggingConfigsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-resource-record-sets.

AWS CLI

Pour créer une liste des jeux d’enregistrements de ressources d’une zone hébergée

La commande list-resource-record-sets suivante crée une liste des informations récapitulatives sur les 100 premiers jeux d’enregistrements de ressources dans une zone hébergée spécifiée :

aws route53 list-resource-record-sets --hosted-zone-id Z2LD58HEXAMPLE

Si la zone hébergée contient plus de 100 jeux d’enregistrements de ressources ou si vous souhaitez les répertorier dans des groupes inférieurs à 100 éléments, incluez le paramètre --maxitems. Par exemple, pour répertorier les jeux d’enregistrements de ressources un par un, utilisez la commande suivante :

aws route53 list-resource-record-sets --hosted-zone-id Z2LD58HEXAMPLE --max-items 1

Pour afficher les informations relatives au jeu d’enregistrements de ressources suivant de la zone hébergée, prenez la valeur NextToken de la réponse à la commande précédente et incluez-la dans le paramètre --starting-token, par exemple :

aws route53 list-resource-record-sets --hosted-zone-id Z2LD58HEXAMPLE --max-items 1 --starting-token Z3M3LMPEXAMPLE

Pour afficher tous les jeux d’enregistrements de ressources portant un nom particulier, utilisez le paramètre --query afin de les filtrer. Par exemple :

aws route53 list-resource-record-sets --hosted-zone-id Z2LD58HEXAMPLE --query "ResourceRecordSets[?Name == 'example.domain.']"
  • Pour plus de détails sur l'API, reportez-vous ListResourceRecordSetsà la section Référence des AWS CLI commandes.