Esempi di Route 53 utilizzando AWS CLI - AWS Command Line Interface

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esempi di Route 53 utilizzando AWS CLI

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with Route 53.

Le azioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, in cui vengono fornite le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

Il seguente esempio di codice mostra come utilizzarechange-resource-record-sets.

AWS CLI

Come creare, aggiornare o eliminare un set di record delle risorse

Il comando change-resource-record-sets seguente crea un set di record delle risorse utilizzando hosted-zone-id Z1R8UBAEXAMPLE e la configurazione in formato JSON nel file 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

Per ulteriori informazioni, consulta POST ChangeResourceRecordSets nel riferimento dell'API Amazon Route 53.

La configurazione nel file JSON dipende dal tipo di set di record delle risorse che si desidera creare:

BasicWeightedAliasWeighted AliasLatencyLatency AliasFailoverFailover Alias

Sintassi di 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" }, {...} ] } }, {...} ] }

Sintassi ponderata:

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

Sintassi degli 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" } }, {...} ] }

Sintassi ponderata degli 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", "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" } }, {...} ] }

Sintassi della latenza:

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

Sintassi degli alias con latenza:

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

Sintassi del failover:

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

Sintassi degli alias con failover:

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

Il seguente esempio di codice mostra come utilizzarechange-tags-for-resource.

AWS CLI

Il comando seguente aggiunge un tag denominato owner a una risorsa healthcheck specificata da ID:

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

Il comando seguente rimuove un tag denominato owner da una risorsa della zona ospitata specificata da ID:

aws route53 change-tags-for-resource --resource-type hostedzone --resource-id Z1523434445 --remove-tag-keys owner

Il seguente esempio di codice mostra come utilizzarecreate-health-check.

AWS CLI

Come creare un controllo dell’integrità

Il comando create-health-check seguente crea controllo dell’integrità delle risorse utilizzando il riferimento del chiamante 2014-04-01-18:47 e la configurazione in formato JSON nel file 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

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

Per aggiungere il controllo dell’integrità a un set di record di risorse Route 53, utilizza il comando change-resource-record-sets.

Per ulteriori informazioni, consulta Controlli dell’integrità e failover DNS di Amazon Route 53 nella Guida per gli sviluppatori di Amazon Route 53.

Il seguente esempio di codice mostra come utilizzarecreate-hosted-zone.

AWS CLI

Come creare una zona ospitata

Il comando create-hosted-zone seguente aggiunge una zona ospitata denominata example.com utilizzando il riferimento del chiamante 2014-04-01-18:47. Il commento facoltativo include uno spazio e pertanto deve essere racchiuso tra virgolette:

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

Per ulteriori informazioni, consulta Utilizzo delle zone ospitate nella Guida per gli sviluppatori di Amazon Route 53.

Il seguente esempio di codice mostra come utilizzaredelete-health-check.

AWS CLI

Come eliminare un controllo dell’integrità

Il comando delete-health-check seguente elimina il controllo dell’integrità con health-check-id impostato su e75b48d9-547a-4c3d-88a5-ae4002397608:

aws route53 delete-health-check --health-check-id e75b48d9-547a-4c3d-88a5-ae4002397608

Il seguente esempio di codice mostra come utilizzaredelete-hosted-zone.

AWS CLI

Come eliminare una zona ospitata

Il comando delete-hosted-zone seguente elimina la zona ospitata con id Z36KTIQEXAMPLE.

aws route53 delete-hosted-zone --id Z36KTIQEXAMPLE

Il seguente esempio di codice mostra come utilizzareget-change.

AWS CLI

Come ottenere lo stato di una modifica ai set di record di risorse

Il comando get-change seguente ottiene lo stato e altre informazioni sulla richiesta change-resource-record-sets il cui Id è /change/CWPIK4URU2I5S:

aws route53 get-change --id /change/CWPIK4URU2I5S

Il seguente esempio di codice mostra come utilizzareget-health-check.

AWS CLI

Come ottenere informazioni su un controllo dell’integrità

Il comando get-health-check seguente ottiene informazioni sul controllo dell’integrità il cui health-check-id è 02ec8401-9879-4259-91fa-04e66d094674:

aws route53 get-health-check --health-check-id 02ec8401-9879-4259-91fa-04e66d094674

Il seguente esempio di codice mostra come utilizzareget-hosted-zone.

AWS CLI

Come ottenere informazioni su una zona ospitata

Il comando get-hosted-zone seguente ottiene informazioni sulla zona ospitata con id Z1R8UBAEXAMPLE:

aws route53 get-hosted-zone --id Z1R8UBAEXAMPLE

Il seguente esempio di codice mostra come utilizzarelist-health-checks.

AWS CLI

Per elencare i controlli sanitari associati all' AWS account corrente

Il list-health-checks comando seguente elenca informazioni dettagliate sui primi 100 controlli sanitari associati all' AWS account corrente. :

aws route53 list-health-checks

Se disponi di oltre 100 controlli dell’integrità o se desideri elencarli in gruppi più piccoli di 100, includi il parametro --maxitems. Ad esempio, per elencare i controlli dell’integrità una alla volta, utilizza il comando seguente:

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

Per visualizzare le informazioni sui controlli dell’integrità, prendi il valore di NextToken dalla risposta al comando precedente e includilo nel parametro --starting-token, ad esempio:

aws route53 list-health-checks --max-items 1 --starting-token Z3M3LMPEXAMPLE

Il seguente esempio di codice mostra come utilizzarelist-hosted-zones-by-name.

AWS CLI

Il comando seguente elenca fino a 100 zone ospitate ordinate per nome di dominio.

aws route53 list-hosted-zones-by-name

Output:

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

Il comando seguente elenca fino le zone ospitate ordinate per nome che inizia con www.example.com.

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

Output:

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

Il seguente esempio di codice mostra come utilizzarelist-hosted-zones.

AWS CLI

Per elencare le zone ospitate associate all' AWS account corrente

Il list-hosted-zones comando seguente elenca le informazioni di riepilogo sulle prime 100 zone ospitate associate all' AWS account corrente. :

aws route53 list-hosted-zones

Se disponi di oltre 100 zone ospitate o se desideri elencarle in gruppi più piccoli di 100, includi il parametro --max-items. Ad esempio, per elencare le zone ospitate una alla volta, utilizza il comando seguente:

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

Per visualizzare le informazioni sulla zona ospitata successiva, prendi il valore di NextToken dalla risposta al comando precedente e includilo nel parametro --starting-token, ad esempio:

aws route53 list-hosted-zones --max-items 1 --starting-token Z3M3LMPEXAMPLE

Il seguente esempio di codice mostra come utilizzarelist-query-logging-configs.

AWS CLI

Come elencare le configurazioni di registrazione dei log delle query

L'list-query-logging-configsesempio seguente elenca le informazioni sulle prime 100 configurazioni di registrazione delle query nell' AWS account, per la zona ospitata. Z1OX3WQEXAMPLE

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

Output:

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

Per ulteriori informazioni, consulta Registrazione delle query DNS nella Guida per gli sviluppatori di Amazon Route 53.

Il seguente esempio di codice mostra come utilizzarelist-resource-record-sets.

AWS CLI

Come aggiornare i set di record della risorsa di una zona ospitata

Il comando list-resource-record-sets seguente elenca informazioni di riepilogo sui primi 100 set di record di risorse in una zona ospitata specificata:

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

Se la zona ospitata contiene più di 100 set di record della risorsa o se desideri elencarle in gruppi più piccoli di 100, includi il parametro --maxitems. Ad esempio, per elencare i set di record della risorsa uno alla volta, utilizza il comando seguente:

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

Per visualizzare le informazioni sul set di record della risorsa successivo nella zona ospitata, prendi il valore di NextToken dalla risposta al comando precedente e includilo nel parametro --starting-token, ad esempio:

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

Per visualizzare tutti i set di record della risorsa con un nome particolare, utilizza il parametro --query per filtrarli. Esempio:

aws route53 list-resource-record-sets --hosted-zone-id Z2LD58HEXAMPLE --query "ResourceRecordSets[?Name == 'example.domain.']"