Модуль community.general.dnsmadeeasy – Взаимодействие с dnsmadeeasy.com (сервис хостинга DNS)
Примечание
Этот модуль является частью коллекции community.general (версия 9.5.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, запустите ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробной информации.
Для использования в playbook, укажите: community.general.dnsmadeeasy.
Краткое описание
- Управляет записями DNS через REST API v2 сервиса DNS Made Easy. Обрабатывает только записи; пока нет возможности управлять доменами или мониторингом/учетом. См.: https://www.dnsmadeeasy.com/integration/restapi/
Требования
Указанные ниже требования необходимы на хосте, на котором выполняется этот модуль.
- hashlib
- hmac
Параметры
Параметр | Комментарии |
|---|---|
account_key string / required | Ключ API учетной записи. |
account_secret string / required | Секретный ключ учетной записи. |
autoFailover boolean | Если true, возврат к основному IP-адресу осуществляется вручную после переключения. Если false, возврат к основному IP-адресу осуществляется автоматически после переключения. Варианты:
|
contactList string | Имя или ID списка контактов, которым будет отправлено уведомление монитора. Значение по умолчанию |
domain string / required | Домен для работы. Может быть именем домена (например, «mydomain.com») или числовым ID домена в DNS Made Easy (например, «839989») для более быстрого разрешения |
failover boolean | Если Варианты:
|
httpFile string | Файл по Fqdn, который монитор запрашивает для HTTP или HTTPS. |
httpFqdn string | Полностью определенное доменное имя, используемое монитором. |
httpQueryString string | Строка в httpFile, которую монитор запрашивает для HTTP или HTTPS. |
ip1 string | Основной IP-адрес для переключения. Обязательно, если добавляется или изменяется монитор или переключение. |
ip2 string | Вторичный IP-адрес для переключения. Обязательно, если добавляется или изменяется переключение. |
ip3 string | Третичный IP-адрес для переключения. |
ip4 string | Четвертичный IP-адрес для переключения. |
ip5 string | Пятеричный IP-адрес для переключения. |
maxEmails integer | Количество писем, отправляемых в список контактов монитором. По умолчанию: |
monitor boolean | Если Варианты:
|
port integer | Порт, используемый монитором. По умолчанию: |
protocol string | Протокол, используемый монитором. Варианты:
|
record_name string | Имя записи для получения/создания/удаления/обновления. Если record_name не указан, все записи для домена будут возвращены в «result» независимо от аргумента состояния. |
record_ttl integer | «Время жизни» записи. Количество секунд, в течение которых запись остается кэшированной на DNS-серверах. По умолчанию: |
record_type string | Тип записи. Варианты:
|
record_value string | Значение записи. HTTPRED: <URL перенаправления>, MX: <приоритет> <имя целевого объекта>, NS: <имя сервера>, PTR: <имя целевого объекта>, SRV: <приоритет> <вес> <порт> <имя целевого объекта>, TXT: <текстовое значение> Если record_value не указано, изменения не будут внесены, и запись будет возвращена в ‘result’ (другими словами, этот модуль можно использовать для получения текущего id, типа и ttl записи) |
sandbox boolean | Определяет, следует ли использовать API песочницы. В противном случае (по умолчанию) используется производственный API DNS Made Easy. Варианты:
|
sensitivity string | Количество проверок, выполняемых монитором перед переключением, где Low = 8, Medium = 5 и High = 3. Варианты:
|
state string / required | должна ли существовать запись или нет Варианты:
|
systemDescription string | Описание, используемое монитором. По умолчанию: |
validate_certs boolean | Если Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: отсутствует | Может работать в |
diff_mode | Поддержка: отсутствует | Возвращает подробную информацию о том, что изменилось (или, возможно, должно измениться в |
Примечания
Примечание
- Сервис DNS Made Easy требует, чтобы машины, взаимодействующие с API, имели правильно установленное время и часовой пояс. Убедитесь, что ваше время отличается от фактического не более чем на несколько секунд, используя NTP.
- Этот модуль возвращает записи и мониторы в элементе “result”, когда ‘state’ установлен в ‘present’. Эти значения могут быть зарегистрированы и использованы в ваших playbooks.
- Только записи типа A могут иметь монитор или failover.
- Для добавления failover требуются параметры ‘failover’, ‘autoFailover’, ‘port’, ‘protocol’, ‘ip1’ и ‘ip2’.
- Для добавления монитора требуются параметры ‘monitor’, ‘port’, ‘protocol’, ‘maxEmails’, ‘systemDescription’ и ‘ip1’.
- Монитор и failover будут совместно использовать параметры ‘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: true
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: true
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: true
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: false
- 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: false
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/dnsmadeeasy_module.html