Spec-Zone.ru › Ansible

Модуль community.dns.hetzner_dns_record_sets — массовая синхронизация наборов DNS-записей в службе Hetzner DNS

Примечание

Этот модуль входит в коллекцию community.dns (версия 3.5.5).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.dns.

Чтобы использовать её в плейбуке, укажите: community.dns.hetzner_dns_record_sets.

Добавлено в community.dns 2.0.0

  • Краткое описание
  • Параметры
  • Атрибуты
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Массовая синхронизация наборов DNS-записей в службе Hetzner DNS.
  • Можно исключить определённые наборы записей, указав для такого набора record_sets[].ignore=true.
  • Модуль позволяет одновременно задавать, изменять и удалять несколько наборов DNS-записей.
  • С помощью параметра prune можно также удалять существующие наборы записей, не указанные в параметрах модуля. Это позволяет синхронизировать ожидаемое состояние DNS-зоны с целевым состоянием.

Параметры

Параметр

Комментарии

bulk_operation_threshold

integer

Определяет пороговое значение, начиная с которого используются массовые операции.

Значение по умолчанию 2 означает, что если запланировано 2 или более операций одного типа и API поддерживает массовое выполнение таких операций, они будут выполняться массово.

По умолчанию: 2

hetzner_api_token

string

Токен для нового API Hetzner DNS.

Если параметр не указан, значение будет прочитано из переменной среды HETZNER_API_TOKEN.

Необходимо указать ровно один из параметров hetzner_token и hetzner_api_token.

hetzner_token

псевдонимы: api_token

string

Токен для классического API Hetzner DNS.

Если параметр не указан, значение будет прочитано из переменной среды HETZNER_DNS_TOKEN.

Необходимо указать ровно один из параметров hetzner_token и hetzner_api_token.

prune

boolean

Если задать значение true, будут удалены все существующие записи в зоне, не перечисленные в record_sets.

Варианты:

  • false ← (по умолчанию)
  • true

record_sets

псевдонимы: records

list / elements=dictionary / обязательный

Записи, которые должны присутствовать в зоне.

ignore

boolean

Если задать значение true, record_sets[].value будут игнорироваться.

Это полезно при использовании prune=true, если вы не хотите удалять определённые записи, не зная их текущих значений.

Варианты:

  • false ← (по умолчанию)
  • true

prefix

string

Префикс DNS-записи.

Это часть record_sets[].record перед zone_name. Например, если изменяемая запись — www.example.com для зоны example.com, то префикс — www. Если бы запись в этом примере была example.com, префикс был бы '' (пустая строка).

Необходимо указать ровно один из параметров record_sets[].record и record_sets[].prefix.

record

string

Полная DNS-запись для создания или удаления.

Необходимо указать ровно один из параметров record_sets[].record и record_sets[].prefix.

ttl

integer

TTL новой записи в секундах.

type

string / обязательный

Тип DNS-записи для создания или удаления.

Варианты:

  • "A"
  • "AAAA"
  • "CAA"
  • "CNAME"
  • "DANE"
  • "DS"
  • "HINFO"
  • "HTTPS"
  • "MX"
  • "NS"
  • "PTR"
  • "RP"
  • "SOA"
  • "SRV"
  • "SVCB"
  • "TLSA"
  • "TXT"

value

list / elements=string

Новое значение при создании DNS-записи.

Допускаются списки YAML или несколько значений, разделённых запятыми и пробелами.

При удалении записи необходимо указать все её значения, иначе запись не будет удалена.

Необходимо указать, если record_sets[].ignore=false.

txt_character_encoding

string

добавлено в community.dns 2.5.0

Определяет, интерпретируются ли числовые escape-последовательности (\xyz) как восьмеричные или десятичные числа. Используется только при txt_transformation=quoted.

В community.dns 3.0.0 значение по умолчанию изменено на decimal. Ранее значением по умолчанию было octal. Значение decimal соответствует RFC 1035.

Варианты:

  • "decimal" ← (по умолчанию)
  • "octal"

txt_transformation

string

Определяет, как значения записей TXT преобразуются между API и входными и выходными данными этого модуля.

Значение api означает, что модуль возвращает значения в том виде, в каком их возвращает API, и передаёт API в том виде, в каком они были переданы модулю. При проверке идемпотентности входная строка сравнивается со строками, возвращёнными API. API может автоматически преобразовывать некоторые значения, например разбивать длинные значения или добавлять кавычки, что может вызывать проблемы с идемпотентностью.

Значение unquoted автоматически преобразует значения: можно передавать значения без кавычек, и модуль будет возвращать их без кавычек. Если передать значения в кавычках, они будут заключены в двойные кавычки.

Значение quoted автоматически преобразует значения: для значений, содержащих пробелы, такие символы, как кавычки и обратная косая черта, а также для значений длиной более 255 байт, необходимо использовать кавычки. Кроме того, оно обеспечивает возврат значений из API в нормализованной кодировке.

Значение по умолчанию, unquoted, позволяет работать со значениями, не заботясь о правильном заключении в кавычки для DNS. Большинству пользователей следует использовать unquoted или quoted, но не api.

Примечание: код преобразования предполагает, что значения закодированы в UTF-8. Если вам нужна другая кодировка, используйте txt_transformation=api и обработайте кодировку самостоятельно.

Варианты:

  • "api"
  • "quoted"
  • "unquoted" ← (по умолчанию)

zone_id

string

Идентификатор DNS-зоны для изменения.

Необходимо указать ровно один из параметров zone_name и zone_id.

zone_name

псевдонимы: zone

string

DNS-зона для изменения.

Необходимо указать ровно один из параметров zone_name и zone_id.

Атрибуты

Атрибут

Поддержка

Описание

action_group

Группа действий: community.dns.hetzner

добавлено в community.dns 2.4.0

Используйте group/community.dns.hetzner в module_defaults, чтобы задать значения по умолчанию для этого модуля.

check_mode

Поддержка: full

Модуль можно запускать в режиме check_mode; он возвращает прогноз изменения статуса, не изменяя целевой объект.

diff_mode

Поддержка: full

В режиме diff возвращает сведения об изменениях (или о возможных изменениях в check_mode).

idempotent

Поддержка: full

При повторном запуске подряд вне режима проверки с теми же аргументами второй вызов сообщает об отсутствии изменений.

Предполагается, что система, управляемая или запрашиваемая модулем, не изменилась существенным образом.

Примечания

Примечание

  • Обратите внимание, что не все типы записей поддерживаются обоими API. Старый API (hetzner_token) не поддерживает записи HTTPS, PTR и SVCB. Новый API (hetzner_api_token) не поддерживает записи DANE.
  • Для записей CNAME используйте в качестве значений абсолютные DNS-имена. Абсолютные DNS-имена заканчиваются точкой ., например foo.example.com.. Если использовать относительное DNS-имя без завершающей точки, значение будет относительным к зоне записи CNAME.

См. также

См. также

Поддерживаемые DNS-записи

Дополнительная информация о поддерживаемых типах DNS-записей.

Примеры

- name: Make sure some records exist and have the expected values
  community.dns.hetzner_dns_record_sets:
    zone: foo.com
    records:
      - prefix: new
        type: A
        ttl: 7200
        value:
          - 1.1.1.1
          - 2.2.2.2
      - prefix: new
        type: AAAA
        ttl: 7200
        value:
          - "::1"
      - record: foo.com
        type: TXT
        value:
          - test
    hetzner_token: access_token

- name: Synchronize DNS zone with a fixed set of records
  # If a record exists that is not mentioned here, it will be deleted
  community.dns.hetzner_dns_record_sets:
    zone_id: 23
    purge: true
    records:
      - prefix: ''
        type: A
        value: 127.0.0.1
      - prefix: ''
        type: AAAA
        value: "::1"
      - prefix: ''
        type: NS
        value:
          - ns-1.hoster.com
          - ns-2.hoster.com
          - ns-3.hoster.com
    hetzner_token: access_token

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

zone_id

string

Идентификатор зоны.

Возвращается: при успешном выполнении

Пример: "23"

Авторы

  • Markus Bergholz (@markuman)
  • Felix Fontein (@felixfontein)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Запросить помощь (DNS)
  • Сообщить об ошибке
  • Предложить новую функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/dns/hetzner_dns_record_sets_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API