Comment créer un jeu d'enregistrements de ressources simple dans Amazon Route 53 à l'aide de l'interface de ligne de commande AWS CLI ?

Vous pouvez créer, supprimer ou modifier (upsert) un jeu d'enregistrements de ressources à l'aide d'une demande ChangeResourceRecordSets à l'API Route 53.

Avant de poursuivre, installez la dernière version de l'interface de ligne de commande AWS CLI ou effectuez une mise à jour à l'aide de celle-ci.

Créer une demande ChangeResourceRecordSets

Vous pouvez effectuer les actions suivantes à l'aide d'une demande ChangeResourceRecordSets :

  • CREATE crée un jeu d'enregistrements avec une valeur spécifiée dans la zone hébergée
  • DELETE supprime un jeu d'enregistrements avec une valeur spécifiée dans la zone hébergée
  • UPSERT crée un nouveau jeu d'enregistrements avec une valeur spécifiée ou met à jour un jeu d'enregistrements avec une valeur spécifiée si ce jeu d'enregistrements existe déjà

Modifiez l'exemple suivant de fichier JSON (sample.json) afin de créer, de supprimer ou de modifier un jeu d'enregistrements A simple. Le corps de la demande inclut une liste de changements, connue sous le nom de lot de changements :

{
            "Comment": "CREATE/DELETE/UPSERT a record ",
            "Changes": [{
            "Action": "CREATE",
                        "ResourceRecordSet": {
                                    "Name": "a.example.com",
                                    "Type": "A",
                                    "TTL": 300,
                                 "ResourceRecords": [{ "Value": "4.4.4.4"}]
}}]
}

Créez un jeu d'enregistrements de ressources pour votre domaine dans la zone hébergée à l'aide de l'API Route 53 avec la commande change-resource-record-sets. Le fichier sample.json spécifie les valeurs pour la création des enregistrements.

$ aws route53 change-resource-record-sets --hosted-zone-id ZXXXXXXXXXX --change-batch file://sample.json

L'état PENDING (EN ATTENTE) doit être renvoyé avec l'ID unique, à moins qu'il y ait une erreur dans le fichierJSON :

$ aws route53 change-resource-record-sets --hosted-zone-id ZXXXXXXXXXXX --change-batch file://sample.json
{
    "ChangeInfo": {
        "Status": "PENDING", 
        "Comment": "optional comment about the changes in this change batch request", 
        "SubmittedAt": "2018-07-10T19:39:37.757Z", 
        "Id": "/change/C3QYC83OA0KX5K"
    }
}

Utilisez l'appel d'API get-change avec la valeur Id issue de votre réponse change-resource-record-sets afin de vérifier l'état des modifications :

  • PENDING (EN ATTENTE) indique que les modifications de cette demande n'ont pas encore été répercutées sur tous les serveurs DNS Amazon Route 53. Il s'agit de l'état initial de toutes les demandes de lots de modifications.
  • INSYNC indique que les modifications sont répercutées sur tous les serveurs DNS Amazon Route 53.

Avant la propagation :

aws route53  get-change --id /change/C3QYC83OA0KX5K
{
    "ChangeInfo": {
        "Status": "PENDING", 
        "Comment": "optional comment about the changes in this change batch request", 
        "SubmittedAt": "2018-07-10T19:39:37.757Z", 
        "Id": "/change/C3QYC83OA0KX5K"
    }
}

Après la propagation :

$ aws route53  get-change --id /change/C3QYC83OA0KX5K
{
    "ChangeInfo": {
        "Status": "INSYNC", 
        "Comment": "optional comment about the changes in this change batch request", 
        "SubmittedAt": "2018-07-10T19:39:37.757Z", 
        "Id": "/change/C3QYC83OA0KX5K"
    }

Demandes simultanées

Vous devez utiliser des clés Action distinctes pour chaque demande simultanée. Cela signifie que vous ne pouvez pas créer un enregistrement A et un enregistrement MX dans une même demande. Vous devez alors créer deux jeux d'enregistrements pour le même nom de domaine à l'aide du format suivant :

{
                "Comment": "CREATE/DELETE/UPDATE",
                 "Changes": [ {
                             "Action": "CREATE",
                            "ResourceRecordSet": {
                                "Name": "a.example.com",
                                    "Type": "A",
                                     "TTL": 300,
                                  "ResourceRecords": [{"Value": "5.5.5.5"}]
                            }},
{
                            "Action": "CREATE",
                            "ResourceRecordSet": {
                                 "Name": "a.example.com",
                                 "Type": "MX",
                                  "TTL": 300,
                                  "ResourceRecords": [{"Value": "10 example.com"}]
                           }}
]
}

Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site du Centre AWS Support

Date de publication : 08/08/2018