Esempi per Route 53 con AWS CLI
Gli esempi di codice seguenti mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con Route 53.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Operazioni
L’esempio di codice seguente mostra come utilizzare change-resource-record-sets.
- AWS CLI
-
Come creare, aggiornare o eliminare un set di record delle risorse
Il comando seguente
change-resource-record-setscrea un set di record delle risorse utilizzandohosted-zone-idZ1R8UBAEXAMPLEe la configurazione in formato JSON nel fileC:\awscli\route53\change-resource-record-sets.json:aws route53 change-resource-record-sets --hosted-zone-idZ1R8UBAEXAMPLE--change-batch file://C:\awscli\route53\change-resource-record-sets.jsonPer ulteriori informazioni, consulta ChangeResourceRecordSets nella documentazione di 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" } }, {...} ] }-
Per informazioni dettagliate sull’API, consulta ChangeResourceRecordSets
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare change-tags-for-resource.
- AWS CLI
-
Il comando seguente aggiunge un tag denominato
ownera una risorsa healthcheck specificata da ID:aws route53 change-tags-for-resource --resource-typehealthcheck--resource-id6233434j-18c1-34433-ba8e-3443434--add-tagsKey=owner,Value=mybossIl comando seguente rimuove un tag denominato
ownerda una risorsa della zona ospitata specificata da ID:aws route53 change-tags-for-resource --resource-typehostedzone--resource-idZ1523434445--remove-tag-keysowner-
Per informazioni dettagliate sull’API, consulta ChangeTagsForResource
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-health-check.
- AWS CLI
-
Come creare un controllo dell’integrità
Il comando seguente
create-health-checkcrea controllo dell’integrità delle risorse utilizzando il riferimento del chiamante2014-04-01-18:47e la configurazione in formato JSON nel fileC:\awscli\route53\create-health-check.json:aws route53 create-health-check --caller-reference2014-04-01-18:47--health-check-config file://C:\awscli\route53\create-health-check.jsonSintassi 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, utilizzare il comando
change-resource-record-sets.Per ulteriori informazioni, consulta Controlli dell’integrità e failover DNS di Amazon Route 53 nella Guida per sviluppatori di Amazon Route 53.
-
Per informazioni dettagliate sull’API, consulta CreateHealthCheck
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-hosted-zone.
- AWS CLI
-
Per creare una zona ospitata
Il comando seguente
create-hosted-zoneaggiunge una zona ospitata denominataexample.comutilizzando il riferimento del chiamante2014-04-01-18:47. Il commento facoltativo include uno spazio e pertanto deve essere racchiuso tra virgolette:aws route53 create-hosted-zone --nameexample.com--caller-reference2014-04-01-18:47--hosted-zone-config Comment="command-line version"Per ulteriori informazioni, consulta Utilizzo delle zone ospitate nella Guida per sviluppatori di Amazon Route 53.
-
Per informazioni dettagliate sull’API, consulta CreateHostedZone
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare delete-health-check.
- AWS CLI
-
Come eliminare un controllo dell’integrità
Il comando seguente
delete-health-checkelimina il controllo dell’integrità con unhealth-check-iddie75b48d9-547a-4c3d-88a5-ae4002397608:aws route53 delete-health-check --health-check-ide75b48d9-547a-4c3d-88a5-ae4002397608-
Per informazioni dettagliate sull’API, consulta DeleteHealthCheck
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare delete-hosted-zone.
- AWS CLI
-
Come eliminare una zona ospitata
Il comando seguente
delete-hosted-zoneelimina la zona ospitata conidZ36KTIQEXAMPLE.aws route53 delete-hosted-zone --idZ36KTIQEXAMPLE-
Per informazioni dettagliate sull’API, consulta DeleteHostedZone
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-change.
- AWS CLI
-
Come ottenere lo stato di una modifica ai set di record di risorse
Nel comando seguente
get-changeottiene lo stato e altre informazioni sulla richiestachange-resource-record-setspresenta unIddi/change/CWPIK4URU2I5S:aws route53 get-change --id/change/CWPIK4URU2I5S-
Per informazioni dettagliate sull’API, consulta GetChange
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-health-check.
- AWS CLI
-
Come ottenere informazioni su un controllo dell’integrità
Il comando seguente
get-health-checkconsente di ottenere informazioni sul controllo dell’integrità che include unhealth-check-iddi02ec8401-9879-4259-91fa-04e66d094674:aws route53 get-health-check --health-check-id02ec8401-9879-4259-91fa-04e66d094674-
Per informazioni dettagliate sull’API, consulta GetHealthCheck
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-hosted-zone.
- AWS CLI
-
Come ottenere informazioni su una zona ospitata
Il comando seguente
get-hosted-zoneottiene informazioni sulla zona ospitata conidZ1R8UBAEXAMPLE:aws route53 get-hosted-zone --idZ1R8UBAEXAMPLE-
Per informazioni dettagliate sull’API, consulta GetHostedZone
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-health-checks.
- AWS CLI
-
Come elencare i controlli dell’integrità associati con l’account AWS attuale
Il comando seguente
list-health-checkselenca le informazioni di riepilogo sui primi 100 controlli dell’integrità associati all’account AWS attuale:aws route53 list-health-checksSe 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-items1Per visualizzare le informazioni sui controlli dell’integrità, prendi il valore di
NextTokendalla risposta al comando precedente e includilo nel parametro--starting-token, ad esempio:aws route53 list-health-checks --max-items1--starting-tokenZ3M3LMPEXAMPLE-
Per informazioni dettagliate sull’API, consulta ListHealthChecks
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-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-nameOutput:
{ "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-namewww.example.comOutput:
{ "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" }-
Per informazioni dettagliate sull’API, consulta ListHostedZonesByName
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-hosted-zones.
- AWS CLI
-
Come visualizzare l'elenco delle zone ospitate associate all'account AWS attuale
Il comando seguente
list-hosted-zoneselenca le informazioni di riepilogo sulle prime 100 zone ospitate associate all’account AWS attuale:aws route53 list-hosted-zonesSe 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-items1Per visualizzare le informazioni sulla zona ospitata successiva, prendi il valore di
NextTokendalla risposta al comando precedente e includilo nel parametro--starting-token, ad esempio:aws route53 list-hosted-zones --max-items1--starting-tokenZ3M3LMPEXAMPLE-
Per informazioni dettagliate sull'API, consulta ListHostedZones
nella Documentazione di riferimento del comando AWS CLI.
-
L’esempio di codice seguente mostra come utilizzare list-query-logging-configs.
- AWS CLI
-
Come elencare le configurazioni di registrazione di log delle query
Nell’esempio seguente
list-query-logging-configselenca le informazioni sulle prime 100 configurazioni di registrazione di log delle query nell’account AWS per la zona ospitataZ1OX3WQEXAMPLE.aws route53 list-query-logging-configs \ --hosted-zone-idZ1OX3WQEXAMPLEOutput:
{ "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 sviluppatori di Amazon Route 53.
-
Per informazioni dettagliate sull’API, consulta ListQueryLoggingConfigs
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-resource-record-sets.
- AWS CLI
-
Come aggiornare i set di record della risorsa di una zona ospitata
Il comando seguente
list-resource-record-setselenca informazioni di riepilogo sui primi 100 set di record di risorse in una zona ospitata specificata.aws route53 list-resource-record-sets --hosted-zone-idZ2LD58HEXAMPLESe 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-idZ2LD58HEXAMPLE--max-items1Per visualizzare le informazioni sul set di record della risorsa successivo nella zona ospitata, prendi il valore di
NextTokendalla risposta al comando precedente e includilo nel parametro--starting-token, ad esempio:aws route53 list-resource-record-sets --hosted-zone-idZ2LD58HEXAMPLE--max-items1--starting-tokenZ3M3LMPEXAMPLEPer visualizzare tutti i set di record della risorsa con un nome particolare, utilizza il parametro
--queryper filtrarli. Per esempio:aws route53 list-resource-record-sets --hosted-zone-idZ2LD58HEXAMPLE--query"ResourceRecordSets[?Name == 'example.domain.']"-
Per informazioni dettagliate sull’API, consulta ListResourceRecordSets
in AWS CLI Command Reference.
-