Spec-Zone.ru › Ansible 2.10

community.general.dnsmadeeasy – Взаимодействие с dnsmadeeasy.com (услугой хостинга DNS).

Примечание

Этот плагин входит в коллекцию community.general (версия 1.3.2).

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

Для использования в книге задач укажите: community.general.dnsmadeeasy.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры

Обзор

  • Управляет записями DNS через REST API v2 службы DNS Made Easy. Обрабатывает только записи; манипуляции с доменами или мониторингом/управлением учетными записями пока не поддерживаются. См.: https://www.dnsmadeeasy.com/integration/restapi/

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • hashlib
  • hmac

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
account_key
строка / обязательный
Ключ API учетной записи.
account_secret
строка / обязательный
Секретный ключ учетной записи.
autoFailover
логический тип
    Варианты:
  • нет ←
  • да
Если True, откат к первичному IP-адресу выполняется вручную после сбоя.
Если False, откат к первичному IP-адресу выполняется автоматически после сбоя.
contactList
строка
Значение по умолчанию:
""
Имя или идентификатор списка контактов, о котором будет уведомлять монитор.
По умолчанию '' означает владельца учетной записи.
domain
строка / обязательный
Домен для работы. Может быть именем домена (например, "mydomain.com") или числовым идентификатором домена в DNS Made Easy (например, "839989") для более быстрого разрешения.
failover
логический тип
    Варианты:
  • нет ←
  • да
Если yes, добавить или изменить резервное копирование. Это применимо только к записям типа A.
httpFile
строка
Файл по Fqdn, который монитор запрашивает для HTTP или HTTPS.
httpFqdn
строка
Полное доменное имя, используемое монитором.
httpQueryString
строка
Строка в httpFile, которую монитор запрашивает для HTTP или HTTPS.
ip1
строка
Первичный IP-адрес для резервного копирования.
Требуется при добавлении или изменении монитора или резервного копирования.
ip2
строка
Вторичный IP-адрес для резервного копирования.
Требуется при добавлении или изменении резервного копирования.
ip3
строка
Третичный IP-адрес для резервного копирования.
ip4
строка
Четвертичный IP-адрес для резервного копирования.
ip5
строка
Пятеричный IP-адрес для резервного копирования.
maxEmails
целое число
Значение по умолчанию:
1
Количество писем, отправленных в список контактов монитором.
monitor
логический тип
    Варианты:
  • нет ←
  • да
Если yes, добавить или изменить монитор. Применимо только к записям типа A.
port
целое число
Значение по умолчанию:
80
Порт, используемый монитором.
protocol
строка
    Варианты:
  • TCP
  • UDP
  • HTTP ←
  • DNS
  • SMTP
  • HTTPS
Протокол, используемый монитором.
record_name
строка
Имя записи для получения/создания/удаления/обновления. Если record_name не указан, все записи для домена будут возвращены в «result», независимо от аргумента state.
record_ttl
целое число
Значение по умолчанию:
1800
«Время жизни» записи. Количество секунд, в течение которого запись остается кэшированной в серверах DNS.
record_type
строка
    Варианты:
  • A
  • AAAA
  • CNAME
  • ANAME
  • HTTPRED
  • MX
  • NS
  • PTR
  • SRV
  • TXT
Тип записи.
record_value
строка
Значение записи. HTTPRED: <URL перенаправления>, MX: <приоритет> <целевое имя>, NS: <имя сервера>, PTR: <целевое имя>, SRV: <приоритет> <вес> <порт> <целевое имя>, TXT: <текстовое значение>"
Если record_value не указан, изменения не будут внесены, а запись будет возвращена в «result» (другими словами, этот модуль можно использовать для извлечения текущего идентификатора, типа и ttl записи).
sandbox
логический тип
    Варианты:
  • нет ←
  • да
Определяет, следует ли использовать API песочницы. В противном случае (по умолчанию) используется API DNS Made Easy для производства.
sensitivity
строка
    Варианты:
  • Низкий
  • Средний ←
  • Высокий
Количество проверок, выполняемых монитором, прежде чем произойдет отказ от резервного копирования, где Низкий = 8, Средний = 5, и Высокий = 3.
state
строка / обязательный
    Варианты:
  • present
  • absent
Указывает, должна ли запись существовать или нет
systemDescription
строка
Значение по умолчанию:
""
Описание, используемое монитором.
validate_certs
логический тип
    Варианты:
  • нет
  • да ←
Если no, сертификаты SSL не будут проверены. Это следует использовать только на контролируемых вами сайтах, использующих самозаверенные сертификаты.

Примечания

Примечание

  • Сервис DNS Made Easy требует, чтобы машины, взаимодействующие с API, имели правильно установленное время и часовой пояс. Убедитесь, что вы находитесь в пределах нескольких секунд от фактического времени, используя NTP.
  • Этот модуль возвращает запись(и) и монитор(ы) в элементе «result», когда «state» установлен в «present». Эти значения могут быть зарегистрированы и использованы в ваших задачах.
  • Только записи типа A могут иметь монитор или резервное копирование.
  • Для добавления резервного копирования требуются параметры «failover», «autoFailover», «port», «protocol», «ip1» и «ip2».
  • Для добавления монитора требуются параметры «monitor», «port», «protocol», «maxEmails», «systemDescription» и «ip1».
  • Монитор и резервное копирование будут совместно использовать параметры «port», «protocol» и «ip1».

Примеры

- name: Fetch my.com domain records
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
  register: response

- name: Create a record
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1

- name: Update the previously created record
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_value: 192.0.2.23

- name: Fetch a specific record
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
  register: response

- name: Delete a record
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    record_type: A
    state: absent
    record_name: test

- name: Add a failover
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1
    failover: True
    ip1: 127.0.0.2
    ip2: 127.0.0.3

- name: Add a failover
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1
    failover: True
    ip1: 127.0.0.2
    ip2: 127.0.0.3
    ip3: 127.0.0.4
    ip4: 127.0.0.5
    ip5: 127.0.0.6

- name: Add a monitor
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1
    monitor: yes
    ip1: 127.0.0.2
    protocol: HTTP  # default
    port: 80  # default
    maxEmails: 1
    systemDescription: Monitor Test A record
    contactList: my contact list

- name: Add a monitor with http options
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1
    monitor: yes
    ip1: 127.0.0.2
    protocol: HTTP  # default
    port: 80  # default
    maxEmails: 1
    systemDescription: Monitor Test A record
    contactList: 1174  # contact list id
    httpFqdn: http://my.com
    httpFile: example
    httpQueryString: some string

- name: Add a monitor and a failover
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1
    failover: True
    ip1: 127.0.0.2
    ip2: 127.0.0.3
    monitor: yes
    protocol: HTTPS
    port: 443
    maxEmails: 1
    systemDescription: monitoring my.com status
    contactList: emergencycontacts

- name: Remove a failover
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1
    failover: no

- name: Remove a monitor
  community.general.dnsmadeeasy:
    account_key: key
    account_secret: secret
    domain: my.com
    state: present
    record_name: test
    record_type: A
    record_value: 127.0.0.1
    monitor: no

Авторы

  • Brice Burgess (@briceburg)

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/dnsmadeeasy_module.html

Spec-Zone.ru

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