dnsmadeeasy – Работа с dnsmadeeasy.com (услуга хостинга DNS)
Обзор
- Управляет записями DNS через REST API v2 сервиса DNS Made Easy. Обрабатывает только записи; нет пока возможности управления доменами или поддержкой мониторинга/аккаунтов. См.: https://www.dnsmadeeasy.com/integration/restapi/
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- hashlib
- hmac
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account_key - / обязательно | Ключ API учетной записи. | |
| account_secret - / обязательно | Секретный ключ учетной записи. | |
| autoFailover boolean добавлен в 2.4 |
| Если значение true, отключение основного IP-адреса происходит вручную после переключения. Если значение false, отключение основного IP-адреса происходит автоматически после переключения. |
| contactList - / обязательно добавлен в 2.4 | По умолчанию: "" | Имя или идентификатор списка контактов, которым будет отправляться уведомление монитором. Значение по умолчанию '' означает владельца учетной записи. |
| domain - / обязательно | Домен для работы. Может быть именем домена (например, "mydomain.com") или числовым идентификатором домена в DNS Made Easy (например, "839989") для более быстрого разрешения. | |
| failover boolean добавлен в 2.4 |
| Если yes, добавьте или измените переключение.Это применимо только для записей типа A. |
| httpFile - добавлен в 2.4 | Файл на Fqdn, который монитор запрашивает для HTTP или HTTPS. | |
| httpFqdn - добавлен в 2.4 | Полное доменное имя, используемое монитором. | |
| httpQueryString - добавлен в 2.4 | Строка в httpFile, которую монитор запрашивает для HTTP или HTTPS. | |
| ip1 - добавлен в 2.4 | Основной IP-адрес для переключения. Требуется при добавлении или изменении монитора или переключения. | |
| ip2 - добавлен в 2.4 | Дополнительный IP-адрес для переключения. Требуется при добавлении или изменении переключения. | |
| ip3 - добавлен в 2.4 | Третичный IP-адрес для переключения. | |
| ip4 - добавлен в 2.4 | Четвертичный IP-адрес для переключения. | |
| ip5 - добавлен в 2.4 | Пятеричный IP-адрес для переключения. | |
| maxEmails - / обязательно добавлен в 2.4 | По умолчанию: 1 | Количество электронных писем, отправленных в список контактов монитором. |
| monitor boolean добавлен в 2.4 |
| Если yes, добавьте или измените монитор. Это применимо только для записей типа A. |
| port - / обязательно добавлен в 2.4 | По умолчанию: 80 | Порт, используемый монитором. |
| protocol - / обязательно добавлен в 2.4 |
| Протокол, используемый монитором. |
| record_name - | Имя записи для получения/создания/удаления/обновления. Если record_name не указан, все записи для домена будут возвращены в "result" независимо от аргумента состояния. | |
| record_ttl - | По умолчанию: 1800 | Время жизни записи. Количество секунд, в течение которого запись остается кэшированной в серверах DNS. |
| record_type - |
| Тип записи. |
| record_value - | Значение записи. HTTPRED: <URL перенаправления>, MX: <приоритет> <целевое имя>, NS: <имя сервера>, PTR: <целевое имя>, SRV: <приоритет> <вес> <порт> <целевое имя>, TXT: <текстовое значение>. Если record_value не указано, изменения не будут внесены, и запись будет возвращена в 'result' (другими словами, этот модуль может использоваться для извлечения текущего id, типа и ttl записи). | |
| sandbox boolean добавлен в 2.7 |
| Определяет, использовать ли API песочницы. В противном случае (по умолчанию) используется производственный API DNS Made Easy. |
| sensitivity - / обязательно добавлен в 2.4 |
| Количество проверок, выполняемых монитором, прежде чем произойдёт переключение. Низкий = 8, Средний = 5, Высокий = 3. |
| state - / обязательно |
| указывает, должна ли запись существовать или нет |
| systemDescription - / обязательно добавлен в 2.4 | По умолчанию: "" | Описание, используемое монитором. |
| validate_certs boolean |
| Если 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».
Примеры
# fetch my.com domain records
- dnsmadeeasy:
account_key: key
account_secret: secret
domain: my.com
state: present
register: response
# create / ensure the presence of a record
- dnsmadeeasy:
account_key: key
account_secret: secret
domain: my.com
state: present
record_name: test
record_type: A
record_value: 127.0.0.1
# update the previously created record
- dnsmadeeasy:
account_key: key
account_secret: secret
domain: my.com
state: present
record_name: test
record_value: 192.0.2.23
# fetch a specific record
- dnsmadeeasy:
account_key: key
account_secret: secret
domain: my.com
state: present
record_name: test
register: response
# delete a record / ensure it is absent
- dnsmadeeasy:
account_key: key
account_secret: secret
domain: my.com
record_type: A
state: absent
record_name: test
# Add a failover
- 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
- 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
# Add a monitor
- 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
# Add a monitor with http options
- 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
# Add a monitor and a failover
- 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
# Remove a failover
- 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
# Remove a monitor
- 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
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- 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.9/modules/dnsmadeeasy_module.html