cloudflare_dns — управление записями DNS Cloudflare
Новое в версии 2.1.
Обзор
- Управляет записями DNS через API Cloudflare, см. документацию: https://api.cloudflare.com/
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account_api_token обязательно | Токен API учетной записи. Вы можете получить свой ключ API в нижней части страницы Cloudflare «Мой аккаунт» по адресу: https://www.cloudflare.com/a/account
| |
| account_email обязательно | Адрес электронной почты учетной записи. | |
| port | По умолчанию: None | Порт службы. Требуется для type=SRV
|
| priority | По умолчанию: 1 | Приоритет записи. Требуется для type=MX и type=SRV
|
| proto |
None | Протокол службы. Требуется для type=SRV
|
| proxied (добавлен в 2.3) | По умолчанию: no | Проксирование через сеть Cloudflare или просто использование DNS |
| record | По умолчанию: @ | Запись для добавления. Требуется, если state=present. По умолчанию @ (например, имя зоны).псевдонимы: name |
| service | По умолчанию: None | Служба записи. Требуется для type=SRV
|
| solo | По умолчанию: None | Является ли запись единственной для данного типа и имени записи. Используется только с state=present
Это приведет к удалению всех других записей с таким же именем и типом. |
| state |
| Должна ли запись(и) существовать или нет |
| timeout | По умолчанию: 30 | Таймаут для вызовов API Cloudflare |
| ttl | По умолчанию: 1 (автоматически) | TTL для новой записи. Должно быть значение от 120 до 2 147 483 647 секунд или 1 для автоматического значения. |
| type |
None | Тип записи DNS для создания. Требуется, если state=present
|
| value | По умолчанию: None | Значение записи. Требуется для state=present
псевдонимы: content |
| weight | По умолчанию: 1 | Вес службы. Требуется для type=SRV
|
| zone обязательно | Имя зоны для работы (например, "example.com"). Зона должна уже существовать. псевдонимы: domain |
Примеры
# create a test.my.com A record to point to 127.0.0.1
- cloudflare_dns:
zone: my.com
record: test
type: A
value: 127.0.0.1
account_email: test@example.com
account_api_token: dummyapitoken
register: record
# create a my.com CNAME record to example.com
- cloudflare_dns:
zone: my.com
type: CNAME
value: example.com
state: present
account_email: test@example.com
account_api_token: dummyapitoken
# change it's ttl
- cloudflare_dns:
zone: my.com
type: CNAME
value: example.com
ttl: 600
state: present
account_email: test@example.com
account_api_token: dummyapitoken
# and delete the record
- cloudflare_dns:
zone: my.com
type: CNAME
value: example.com
state: absent
account_email: test@example.com
account_api_token: dummyapitoken
# create a my.com CNAME record to example.com and proxy through cloudflare's network
- cloudflare_dns:
zone: my.com
type: CNAME
value: example.com
state: present
proxied: yes
account_email: test@example.com
account_api_token: dummyapitoken
# create TXT record "test.my.com" with value "unique value"
# delete all other TXT records named "test.my.com"
- cloudflare_dns:
domain: my.com
record: test
type: TXT
value: unique value
state: present
solo: true
account_email: test@example.com
account_api_token: dummyapitoken
# create a SRV record _foo._tcp.my.com
- cloudflare_dns:
domain: my.com
service: foo
proto: tcp
port: 3500
priority: 10
weight: 20
type: SRV
value: fooserver.my.com
Значения возврата
Общие значения возврата описаны в этом месте, следующие — поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| record сложное | успех, за исключением удаления записи | словарь, содержащий данные записи | |
| proxiable булево | успех | можно ли проксировать эту запись через Cloudflare | |
| locked булево | успех | Нет доступной документации | |
| name строка | успех | имя записи в формате FQDN (включая _service и _proto для SRV) Пример: www.sample.com | |
| data словарь | успех, если тип — SRV | дополнительные данные записи Пример: {'priority': 10, 'target': 'jabberhost.sample.com', 'service': '_xmpp', 'proto': '_tcp', 'port': 8080, 'weight': 5, 'name': 'jabber'} | |
| proxied булево | успех | запись проксируется через Cloudflare | |
| priority целое число | успех, если тип — MX | приоритет записи MX Пример: 10 | |
| created_on строка | успех | дата создания записи Пример: 2016-03-25 19:09:42.516553 | |
| meta словарь | успех | Нет доступной документации Пример: {'auto_added': False} | |
| ttl целое число | успех | время жизни записи Пример: 300 | |
| modified_on строка | успех | дата изменения записи Пример: 2016-03-25 19:09:42.516553 | |
| zone_name строка | успех | имя зоны, содержащей запись Пример: sample.com | |
| content строка | успех | содержимое записи (детали зависят от типа записи) Пример: 192.0.2.91 | |
| type строка | успех | тип записи Пример: A | |
| id строка | успех | идентификатор записи Пример: f9efb0549e96abcb750de63b38c9576e | |
| zone_id строка | успех | идентификатор зоны, содержащей запись Пример: abcede0bf9f0066f94029d2e6b73856a | |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется обратной совместимостью.
Автор
- Michael Gruener (@mgruener)
Подсказка
Если вы заметили какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/cloudflare_dns_module.html