Генерируйте конфигурации зон Route 53, Azure DNS и GCP Cloud DNS на основе ваших записей DNS в виде команд CLI или кода Terraform HCL.
| Type | Name | Value | TTL | Priority | Alias | |
|---|---|---|---|---|---|---|
# Step 1: Get your hosted zone ID
# aws route53 list-hosted-zones --query "HostedZones[?Name=='example.com.'].Id" --output text
aws route53 change-resource-record-sets \
--hosted-zone-id $ZONE_ID \
--change-batch '{
"Changes": [
{
"Action": "CREATE",
"ResourceRecordSet": {
"Name": "example.com.",
"Type": "A",
"TTL": 300,
"ResourceRecords": [
{
"Value": "1.2.3.4"
}
]
}
},
{
"Action": "CREATE",
"ResourceRecordSet": {
"Name": "example.com.",
"Type": "MX",
"TTL": 300,
"ResourceRecords": [
{
"Value": "10 mail.example.com."
}
]
}
},
{
"Action": "CREATE",
"ResourceRecordSet": {
"Name": "example.com.",
"Type": "TXT",
"TTL": 300,
"ResourceRecords": [
{
"Value": "\"v=spf1 include:_spf.google.com ~all\""
}
]
}
},
{
"Action": "CREATE",
"ResourceRecordSet": {
"Name": "www.example.com.",
"Type": "CNAME",
"TTL": 300,
"ResourceRecords": [
{
"Value": "example.com"
}
]
}
}
]
}'Генератор зон Cloud DNS преобразует таблицу записей DNS в готовые к выполнению команды CLI или код Terraform HCL для AWS Route 53, Azure DNS и GCP Cloud DNS. У каждого провайдера свой синтаксис командной строки, свои правила именования ресурсов и свои схемы провайдеров Terraform. Этот инструмент учитывает эти различия, благодаря чему одна и та же таблица записей генерирует корректный вывод для всех трёх провайдеров.
Введите свой домен, выберите провайдера и сформируйте таблицу записей, используя столбцы «Тип», «Имя», «Значение», «TTL» и «Приоритет». Переключайтесь между вкладками CLI и Terraform, чтобы получить нужный вывод. Вывод CLI Route 53 использует пакетный формат change-resource-record-sets. Вывод Azure CLI вызывает команду `az network dns record-set` для каждой записи. CLI GCP использует транзакционные команды `gcloud dns record-sets`.
Terraform для Route 53 использует поиск в источнике данных для получения идентификатора размещенной зоны вместо жестко заданного значения. Azure Terraform требует указания resource_group_name для каждого ресурса DNS; генератор включает azurerm_resource_group.main.name в качестве ссылки. GCP Terraform включает ресурс google_dns_managed_zone, который должен существовать до создания каких-либо наборов записей. Записи ALIAS (только для Route 53) генерируют блок alias вместо полей TTL и records.