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 строка |
| Протокол, используемый монитором. |
| record_name строка | Имя записи для получения/создания/удаления/обновления. Если record_name не указан, все записи для домена будут возвращены в «result», независимо от аргумента state. | |
| record_ttl целое число | Значение по умолчанию: 1800 | «Время жизни» записи. Количество секунд, в течение которого запись остается кэшированной в серверах DNS. |
| record_type строка |
| Тип записи. |
| record_value строка | Значение записи. HTTPRED: <URL перенаправления>, MX: <приоритет> <целевое имя>, NS: <имя сервера>, PTR: <целевое имя>, SRV: <приоритет> <вес> <порт> <целевое имя>, TXT: <текстовое значение>" Если record_value не указан, изменения не будут внесены, а запись будет возвращена в «result» (другими словами, этот модуль можно использовать для извлечения текущего идентификатора, типа и ttl записи). | |
| sandbox логический тип |
| Определяет, следует ли использовать API песочницы. В противном случае (по умолчанию) используется API DNS Made Easy для производства. |
| sensitivity строка |
| Количество проверок, выполняемых монитором, прежде чем произойдет отказ от резервного копирования, где Низкий = 8, Средний = 5, и Высокий = 3. |
| state строка / обязательный |
| Указывает, должна ли запись существовать или нет |
| 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