community.general.dnsmadeeasy – Интерфейс с dnsmadeeasy.com (услуга хостинга DNS).
Примечание
Этот плагин входит в коллекцию community.general (версия 2.0.1).
Для его установки используйте: 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", независимо от параметра состояния. | |
| record_ttl целое число | По умолчанию: 1800 | Время жизни записи. Количество секунд, в течение которого запись остается в кэше DNS-серверов. |
| record_type строка |
| Тип записи. |
| record_value строка | Значение записи. HTTPRED: <URL перенаправления>, MX: <приоритет> <целевое имя>, NS: <сервер имен>, PTR: <целевое имя>, SRV: <приоритет> <вес> <порт> <целевое имя>, TXT: <текстовое значение>". Если record_value не указан, изменения не будут внесены, и запись будет возвращена в 'result' (другими словами, этот модуль может использоваться для получения текущего id, типа и 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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/dnsmadeeasy_module.html