Создать ресурсную запись
Значение TXT-записи должно быть не более 1024 знаков.
Чтобы создать ресурсную запись в зоне DNS:
- В консоли управления
выберите каталог, где находится зона DNS, в которой требуется создать запись. - Выберите сервис Cloud DNS.
- Выберите зону из списка.
- Нажмите кнопку Создать запись.
- Задайте параметры записи:
- В поле Имя укажите доменное имя записи.
- Выберите тип записи в выпадающем списке.
- В поле TTL (в секундах) укажите время жизни записи или выберите из предложенных.
- Введите Значение записи.
- Нажмите кнопку Создать.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.
Выполните команду:
yc dns zone add-records --name <имя_зоны_DNS> \
--record "<доменное_имя> <TTL> <тип_записи> <значение>"
Пример
Создание TXT-записи с DKIM-подписью:
yc dns zone add-records test-zone \ --record "test-record TXT v=DKIM1;k=rsa;p=MIIBIjAN...gkH2v1NTgQdTKfPmDK...YdRiwIDAQAB"
Если значение TXT-записи содержит несколько значений, то следует заключить каждое значение в двойные кавычки "":
yc dns zone add-records test-zone \ --record "test-record TXT v=DKIM1;k=rsa;p=MIIBIjAN""gkH2v1NTgQdTKfPmDK""YdRiwIDAQAB"
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
Опишите в конфигурационном файле параметры ресурсов, которые необходимо создать. Вы можете добавить несколько записей одновременно.
resource "yandex_vpc_network" "foo" {} resource "yandex_dns_zone" "zone1" { name = "my-private-zone" description = "desc" labels = { label1 = "label-1-value" } zone = "example.com." public = false private_networks = [yandex_vpc_network.foo.id] } resource "yandex_dns_recordset" "rs1" { zone_id = yandex_dns_zone.zone1.id name = "srv.example.com." type = "A" ttl = 200 data = ["10.1.0.1"] } resource "yandex_dns_recordset" "rs2" { zone_id = yandex_dns_zone.zone1.id name = "srv2" type = "A" ttl = 200 data = ["10.1.0.2"] } resource "yandex_dns_recordset" "rs_dkim" { zone_id = yandex_dns_zone.zone1.id name = "dkim" type = "TXT" ttl = 200 data = ["v=DKIM1;k=rsa;t=s;p=MIIBIjAN...gkH2v1NTgQdTKfPmDK...YdRiwIDAQAB"] }Где:
-
Параметры
yandex_dns_zone:zone— доменная зона. Название зоны должно заканчиваться точкой. Публичные зоны верхнего уровня (TLD-зоны) создавать нельзя. Обязательный параметр.folder_id— идентификатор каталога, в котором будет создана зона. Если он не указан, используется каталог по умолчанию. Необязательный параметр.name— имя зоны. Должно быть уникальное внутри каталога. Необязательный параметр.description— описание зоны. Необязательный параметр.labels— набор меток зоны DNS. Необязательный параметр.public— видимость зоны: публичная или внутренняя зона. Необязательный параметр.private_networks— для публичных зон указываются ресурсы Virtual Private Cloud, которым эта зона видна. Необязательный параметр.
-
Параметры
yandex_dns_recordset:zone_id— идентификатор зоны, в которой будет находиться этот набор записей. Обязательный параметр.name— доменное имя. Обязательный параметр.type— тип DNS записи. Обязательный параметр.ttl— время жизни записи (TTL, Time to live) в секундах до актуализации информации о значении записи. Необязательный параметр.data— значение записи. Необязательный параметр.
Более подробную информацию о ресурсах, которые вы можете создать с помощью Terraform, смотрите в документации провайдера.
-
-
Примените изменения:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validateЕсли конфигурация является корректной, появится сообщение:
Success! The configuration is valid. -
Выполните команду:
terraform planВ терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply -
Подтвердите изменения: введите в терминале слово
yesи нажмите Enter.
Terraform создаст все требуемые ресурсы. Проверить появление ресурсов можно в консоли управления
или с помощью команды CLI:yc dns zone list-records <имя_зоны> -
Чтобы создать ресурсную запись в зоне DNS, воспользуйтесь методом REST API updateRecordSets для ресурса DnsZone или вызовом gRPC API DnsZoneService/UpdateRecordSets.
При создании ресурсных AAAA-записей сервис автоматически производит нормализацию адресов IPv6, заменяя пропуски между : нулями, например: 2001:db8:: → 2001:db8:0:0:0:0:0:0.