Come posso creare set di record di risorse semplici in Amazon Route 53 utilizzando AWS CLI?

3 minuti di lettura
0

 Desidero utilizzare l'Interfaccia della linea di comando AWS (AWS CLI) per creare un set di record di risorse semplici in Amazon Route 53.

Risoluzione

Per creare, eliminare o modificare (upsert) un set di record di risorse, utilizza una richiesta ChangeResourceRecordSets inviata all'API Route 53.

Nota: se ricevi errori durante l'esecuzione dei comandi di AWS CLI, assicurati di utilizzare la versione più recente di AWS CLI.

Crea una richiesta ChangeResourceRecordSets

È possibile eseguire le operazioni seguenti con una richiesta ChangeResourceRecordSets:

  • CREATE: crea un set di record con un valore specificato nella zona ospitata.
  • DELETE: elimina un set di record con un valore specificato nella zona ospitata.
  • UPSERT: crea un nuovo set di record con un valore specificato o aggiorna un set di record con un valore specificato, se tale set esiste già.

Per creare, eliminare o modificare un set di record A semplice, modifica il seguente file JSON di esempio (sample.json). Il corpo della richiesta include un elenco di elementi di modifica, noto come modifiche in batch:

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

Per creare un set di record di risorse per il tuo dominio nella zona ospitata, utilizza l'API Route 53 con il comando change-resource-record-sets. Il file sample.json specifica i valori per la creazione dei record:

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

Lo stato PENDING restituisce l'ID univoco:

$ 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"
    }
}

Se non vedi questo stato con l'ID, significa che c'è un errore nel file JSON.

Per verificare lo stato delle modifiche, usa la chiamata API get-change con il valore Id della tua risposta change-resource-record-sets:

  • PENDING indica che le modifiche contenute in questa richiesta non sono ancora state propagate a tutti i server DNS Route 53. Questo è lo stato iniziale di tutte le richieste di modifica in batch.
  • INSYNC indica che le modifiche vengono propagate a tutti i server DNS Route 53.

Ecco uno stato PENDING prima della propagazione:

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"
    }
}

Ecco uno stato INSYNC dopo la propagazione:

$ 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"
    }

Crea richieste simultanee

È necessario utilizzare chiavi Action separate per ogni richiesta simultanea. Ad esempio, non è possibile creare un record A e un record MX in un'unica richiesta. È invece necessario creare due set di record per lo stesso nome di dominio con il seguente formato:

{
                "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"}]
                           }}
]
}

Informazioni correlate

Come faccio a risolvere gli errori che ho visualizzato durante la creazione di set di record di risorse Route 53 utilizzando l'Interfaccia della linea di comando AWS (AWS CLI)?

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa