Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o Route 53.
Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.
Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.
Tópicos
Ações
O código de exemplo a seguir mostra como usar change-resource-record-sets
.
- AWS CLI
-
Informações sobre o conjunto de registros de recursos a ser criado, atualizado ou excluído.
O comando
change-resource-record-sets
a seguir cria um conjunto de registros de recurso usando ahosted-zone-id
Z1R8UBAEXAMPLE
e a configuração no formato JSON no arquivoC:\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.jsonPara obter mais informações, consulte ChangeResourceRecordSets na Referência da API do Amazon Route 53.
A configuração no arquivo JSON depende do tipo de conjunto de registros de recurso que você deseja criar:
BasicWeightedAliasWeighted AliasLatencyLatency AliasFailoverFailover Alias
Sintaxe básica:
{ "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" }, {...} ] } }, {...} ] }
Sintaxe ponderada:
{ "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" } }, {...} ] }
Sintaxe de 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" } }, {...} ] }
Sintaxe de alias ponderado:
{ "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" } }, {...} ] }
Sintaxe de latência:
{ "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" } }, {...} ] }
Sintaxe de alias de latência:
{ "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" } }, {...} ] }
Sintaxe de 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" } }, {...} ] }
Sintaxe de alias de 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" } }, {...} ] }
-
Para obter detalhes da API, consulte ChangeResourceRecordSets
na AWS CLI Command Reference.
-
O código de exemplo a seguir mostra como usar change-tags-for-resource
.
- AWS CLI
-
O comando a seguir adiciona uma tag chamada
owner
a um recurso de verificação de integridade especificado por ID:aws route53 change-tags-for-resource --resource-type
healthcheck
--resource-id6233434j-18c1-34433-ba8e-3443434
--add-tagsKey=owner,Value=myboss
O comando a seguir remove uma tag chamada
owner
de um recurso de zona hospedada especificado por ID:aws route53 change-tags-for-resource --resource-type
hostedzone
--resource-idZ1523434445
--remove-tag-keysowner
-
Para ver detalhes da API, consulte ChangeTagsForResource
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-health-check
.
- AWS CLI
-
Para criar uma verificação de integridade
O comando
create-health-check
a seguir cria uma verificação de integridade usando a referência de chamador2014-04-01-18:47
e a configuração formatada em JSON no arquivoC:\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.jsonSintaxe do 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 }
Para adicionar a verificação de integridade a um conjunto de registros de recursos do Route 53, use o comando
change-resource-record-sets
.Para obter mais informações, consulte Verificações de integridade e failover de DNS do Amazon Route 53 no Guia do desenvolvedor do Amazon Route 53.
-
Para ver detalhes da API, consulte CreateHealthCheck
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-hosted-zone
.
- AWS CLI
-
Para criar uma hosted zone
O comando
create-hosted-zone
a seguir adiciona uma zona hospedada denominadaexample.com
usando a referência de chamador2014-04-01-18:47
. O comentário opcional inclui um espaço, portanto, ele deve ficar entre aspas:aws route53 create-hosted-zone --name
example.com
--caller-reference2014-04-01-18:47
--hosted-zone-config Comment="command-line version"Para obter mais informações, consulte Trabalhar com zonas hospedadas no Guia do desenvolvedor do Amazon Route 53.
-
Para ver detalhes da API, consulte CreateHostedZone
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-health-check
.
- AWS CLI
-
Para excluir uma verificação de integridade
O comando
delete-health-check
a seguir exclui a verificação de integridade com umhealth-check-id
dee75b48d9-547a-4c3d-88a5-ae4002397608
:aws route53 delete-health-check --health-check-id
e75b48d9-547a-4c3d-88a5-ae4002397608
-
Para ver detalhes da API, consulte DeleteHealthCheck
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-hosted-zone
.
- AWS CLI
-
Para excluir uma zona hospedada do
O comando
delete-hosted-zone
a seguir exclui a zona hospedada com umid
deZ36KTIQEXAMPLE
:aws route53 delete-hosted-zone --id
Z36KTIQEXAMPLE
-
Para ver detalhes da API, consulte DeleteHostedZone
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-change
.
- AWS CLI
-
Para obter o status de uma alteração nos conjuntos de registros de recursos
O comando
get-change
a seguir obtém o status e outras informações sobre a solicitaçãochange-resource-record-sets
que tem umId
de/change/CWPIK4URU2I5S
:aws route53 get-change --id
/change/CWPIK4URU2I5S
-
Para ver detalhes da API, consulte GetChange
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-health-check
.
- AWS CLI
-
Para obter informações sobre uma verificação de integridade
O comando
get-health-check
a seguir obtém informações sobre a verificação de integridade que tem umhealth-check-id
de02ec8401-9879-4259-91fa-04e66d094674
:aws route53 get-health-check --health-check-id
02ec8401-9879-4259-91fa-04e66d094674
-
Para ver detalhes da API, consulte GetHealthCheck
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-hosted-zone
.
- AWS CLI
-
Para obter informações sobre uma zona hospedada
O comando
get-hosted-zone
a seguir obtém informações sobre a zona hospedada com umid
deZ1R8UBAEXAMPLE
:aws route53 get-hosted-zone --id
Z1R8UBAEXAMPLE
-
Para ver detalhes da API, consulte GetHostedZone
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-health-checks
.
- AWS CLI
-
Para listar as verificações de integridade associadas à conta atual da AWS
O comando
list-health-checks
a seguir lista informações detalhadas sobre as primeiras 100 verificações de integridade associadas à conta atual da AWS:aws route53 list-health-checks
Se você tiver mais de 100 verificações de integridade ou se quiser listá-las em grupos de menos de 100 verificações, inclua o parâmetro
--maxitems
. Por exemplo, para listar as verificações de integridade, use o seguinte comando:aws route53 list-health-checks --max-items
1
Como visualizar a próxima verificação de integridade, pegue o valor de
NextToken
da resposta ao comando anterior e inclua-o no parâmetro--starting-token
, por exemplo:aws route53 list-health-checks --max-items
1
--starting-tokenZ3M3LMPEXAMPLE
-
Para ver detalhes da API, consulte ListHealthChecks
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-hosted-zones-by-name
.
- AWS CLI
-
O comando a seguir lista até 100 zonas hospedadas ordenadas por nome de domínio:
aws route53 list-hosted-zones-by-name
Saída:
{ "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" }
O comando a seguir lista as zonas hospedadas ordenadas por nome, começando com
www.example.com
:aws route53 list-hosted-zones-by-name --dns-name
www.example.com
Saída:
{ "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" }
-
Para ver detalhes da API, consulte ListHostedZonesByName
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-hosted-zones
.
- AWS CLI
-
Para listar as zonas hospedadas associadas à conta atual da AWS
O comando
list-hosted-zones
lista informações resumidas sobre as primeiras 100 zonas hospedadas associadas à conta atual da AWS:aws route53 list-hosted-zones
Se você tiver mais de 100 zonas hospedadas ou se quiser listá-las em grupos de menos de 100 zonas, inclua o parâmetro
--max-items
. Por exemplo, para listar as zonas hospedadas, use o seguinte comando:aws route53 list-hosted-zones --max-items
1
Para visualizar informações sobre a próxima zona hospedada, pegue o valor de
NextToken
da resposta ao comando anterior e inclua-o no parâmetro--starting-token
, por exemplo:aws route53 list-hosted-zones --max-items
1
--starting-tokenZ3M3LMPEXAMPLE
-
Para obter detalhes da API, consulte ListHostedZones
na AWS CLI Command Reference.
-
O código de exemplo a seguir mostra como usar list-query-logging-configs
.
- AWS CLI
-
Configurações de logs de consulta do
O exemplo
list-query-logging-configs
a seguir lista informações sobre as primeiras 100 configurações de registro em log de consultas de sua conta da AWS para a zona hospedadaZ1OX3WQEXAMPLE
.aws route53 list-query-logging-configs \ --hosted-zone-id
Z1OX3WQEXAMPLE
Saída:
{ "QueryLoggingConfigs": [ { "Id": "964ff34e-ae03-4f06-80a2-9683cexample", "HostedZoneId": "Z1OX3WQEXAMPLE", "CloudWatchLogsLogGroupArn": "arn:aws:logs:us-east-1:111122223333:log-group:/aws/route53/example.com:*" } ] }
Para obter mais informações, consulte Log de consultas ao DNS no Guia do desenvolvedor do Amazon Route 53.
-
Para ver detalhes da API, consulte ListQueryLoggingConfigs
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-resource-record-sets
.
- AWS CLI
-
Para listar os conjuntos de registro de recurso em zona hospedada
O comando
list-resource-record-sets
a seguir lista informações resumidas sobre os primeiros 100 conjuntos de registros de recursos em uma zona hospedada especificada:aws route53 list-resource-record-sets --hosted-zone-id
Z2LD58HEXAMPLE
Se a zona hospedada contiver mais de 100 conjuntos de registros de recursos ou se quiser listá-los em grupos de menos de 100 conjuntos, inclua o parâmetro
--maxitems
. Por exemplo, para listar os conjuntos de registros de recursos individualmente, use o seguinte comando:aws route53 list-resource-record-sets --hosted-zone-id
Z2LD58HEXAMPLE
--max-items1
Para visualizar informações sobre o próximo conjunto de registro de recurso na zona hospedada, pegue o valor de
NextToken
da resposta ao comando anterior e inclua-o no parâmetro--starting-token
, por exemplo:aws route53 list-resource-record-sets --hosted-zone-id
Z2LD58HEXAMPLE
--max-items1
--starting-tokenZ3M3LMPEXAMPLE
Como visualizar todos os conjuntos de registros de recursos de um nome específico, use o parâmetro
--query
para filtrá-los. Por exemplo:aws route53 list-resource-record-sets --hosted-zone-id
Z2LD58HEXAMPLE
--query"ResourceRecordSets[?Name == 'example.domain.']"
-
Para ver detalhes da API, consulte ListResourceRecordSets
na Referência de comandos da AWS CLI.
-