community.general.gcdns_record – Создаёт или удаляет записи ресурсов в Google Cloud DNS
Примечание
Этот плагин входит в коллекцию community.general (версия 1.3.2).
Для его установки используйте: ansible-galaxy collection install community.general.
Для использования в playbook, укажите: community.general.gcdns_record.
УСТАРЕВШИЙ
- Удалён в
-
версии 2.0.0
- Почему
-
Обновлённые модули с расширенной функциональностью
- Альтернатива
-
Используйте google.cloud.gcp_dns_resource_record_set вместо этого.
Описание
- Создаёт или удаляет записи ресурсов в Google Cloud DNS.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- apache-libcloud >= 0.19.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| credentials_file путь | Путь к JSON-файлу, связанному с электронным адресом учётной записи сервиса. | |
| overwrite булево |
| Определяет, должно ли выполнение попытки перезаписи существующей записи завершиться успешно или неудачно. Поведение этого параметра зависит от параметра state. Если state равен present, а overwrite равен True, этот модуль заменит существующую запись ресурса с тем же именем предоставленными данными record_data. Если state равен present, а overwrite равен False, этот модуль завершится с ошибкой, если существует существующая запись ресурса с тем же именем и типом, но разными данными ресурса.Если state равен absent, а overwrite равен True, этот модуль удалит заданную запись ресурса безусловно. Если state равен absent, а overwrite равен False, этот модуль завершится с ошибкой, если предоставленные данные record_data не точно совпадают с данными record_data существующей записи ресурса. |
| pem_file путь | Путь к файлу PEM, связанному с электронным адресом учётной записи сервиса. Этот параметр устарел и может быть удалён в будущих выпусках. Используйте credentials_file вместо него. | |
| project_id строка | Идентификатор проекта Google Cloud Platform, который следует использовать. | |
| record строка / обязательно | Полное доменное имя записи ресурса. псевдонимы: имя | |
| record_data список / элементы=строка | Данные record_data, которые следует использовать для записи ресурса.
record_data должны быть указаны, если state равен present или overwrite равен True, в противном случае модуль завершится с ошибкой.Допустимые record_data зависят от типа записи. Кроме того, записи ресурсов, содержащие доменное имя DNS в поле значения (например, CNAME, PTR, SRV и т. д.), ДОЛЖНЫ включать заключительную точку в значении. Отдельные строковые record_data для записей TXT должны быть заключены в двойные кавычки. Для записей ресурсов с одинаковым именем, но различными record_data (например, несколько записей A), они должны быть определены как несколько записей в списке в одной записи. псевдонимы: значение | |
| service_account_email строка | Электронный адрес учётной записи сервиса с доступом к Google Cloud DNS. | |
| state строка |
| Определяет, должна ли данная запись ресурса присутствовать или отсутствовать. |
| ttl целое число | Значение по умолчанию: 300 | Время в секундах, в течение которого запись ресурса будет кешироваться решающим кешем. |
| type строка / обязательно |
| Тип записи ресурса, который следует добавить. |
| zone строка | Доменное имя DNS зоны (например, example.com). Один из параметров zone или zone_id должен быть указан, в противном случае модуль завершится с ошибкой. Если оба параметра zone и zone_id указаны, будет использоваться zone_id. | |
| zone_id строка | Идентификатор зоны Google Cloud (например, example-com). Один из параметров zone или zone_id должен быть указан, в противном случае модуль завершится с ошибкой. Они обычно имеют вид доменных имён с точками, заменёнными дефисами. Идентификатор зоны никогда не будет содержать точек.
zone_id может быть быстрее, чем zone в проектах с большим количеством зон. Если оба параметра zone и zone_id указаны, будет использоваться zone_id. |
Примечания
Примечание
- См. также community.general.gcdns_zone.
- Внутренняя библиотека данного модуля не поддерживает обновления записей ресурсов DNS на месте. Вместо этого записи ресурсов быстро удаляются и воссоздаются.
- Записи SOA технически поддерживаются, но их функциональность ограничена проверкой того, что существующая запись SOA зоны соответствует предварительно определённому значению. Запись SOA не может быть обновлена.
- Корневые записи NS не могут быть обновлены.
- Записи NAPTR не поддерживаются.
Примеры
- name: Create an A record
community.general.gcdns_record:
record: 'www1.example.com'
zone: 'example.com'
type: A
value: '1.2.3.4'
- name: Update an existing record
community.general.gcdns_record:
record: 'www1.example.com'
zone: 'example.com'
type: A
overwrite: true
value: '5.6.7.8'
- name: Remove an A record
community.general.gcdns_record:
record: 'www1.example.com'
zone_id: 'example-com'
state: absent
type: A
value: '5.6.7.8'
- name: Create a CNAME record. Note the trailing dot of value
community.general.gcdns_record:
record: 'www.example.com'
zone_id: 'example-com'
type: CNAME
value: 'www.example.com.'
- name: Create an MX record with a custom TTL. Note the trailing dot of value
community.general.gcdns_record:
record: 'example.com'
zone: 'example.com'
type: MX
ttl: 3600
value: '10 mail.example.com.'
- name: Create multiple A records with the same name
community.general.gcdns_record:
record: 'api.example.com'
zone_id: 'example-com'
type: A
record_data:
- '192.0.2.23'
- '10.4.5.6'
- '198.51.100.5'
- '203.0.113.10'
- name: Change the value of an existing record with multiple record_data
community.general.gcdns_record:
record: 'api.example.com'
zone: 'example.com'
type: A
overwrite: true
record_data: # WARNING: All values in a record will be replaced
- '192.0.2.23'
- '192.0.2.42' # The changed record
- '198.51.100.5'
- '203.0.113.10'
- name: Safely remove a multi-line record
community.general.gcdns_record:
record: 'api.example.com'
zone_id: 'example-com'
state: absent
type: A
record_data: # NOTE: All of the values must match exactly
- '192.0.2.23'
- '192.0.2.42'
- '198.51.100.5'
- '203.0.113.10'
- name: Unconditionally remove a record
community.general.gcdns_record:
record: 'api.example.com'
zone_id: 'example-com'
state: absent
overwrite: true # overwrite is true, so no values are needed
type: A
- name: Create an AAAA record
community.general.gcdns_record:
record: 'www1.example.com'
zone: 'example.com'
type: AAAA
value: 'fd00:db8::1'
- name: Create a PTR record
community.general.gcdns_record:
record: '10.5.168.192.in-addr.arpa'
zone: '5.168.192.in-addr.arpa'
type: PTR
value: 'api.example.com.' # Note the trailing dot.
- name: Create an NS record
community.general.gcdns_record:
record: 'subdomain.example.com'
zone: 'example.com'
type: NS
ttl: 21600
record_data:
- 'ns-cloud-d1.googledomains.com.' # Note the trailing dots on values
- 'ns-cloud-d2.googledomains.com.'
- 'ns-cloud-d3.googledomains.com.'
- 'ns-cloud-d4.googledomains.com.'
- name: Create a TXT record
community.general.gcdns_record:
record: 'example.com'
zone_id: 'example-com'
type: TXT
record_data:
- '"v=spf1 include:_spf.google.com -all"' # A single-string TXT value
- '"hello " "world"' # A multi-string TXT value
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| overwrite булево | успех | Указание того, разрешил ли модуль перезапись записи Пример: True |
| record строка | успех | Полное доменное имя записи ресурса Пример: mail.example.com. |
| record_data список / элементы=строка | успех | Значения записи ресурса Пример: ['5.6.7.8', '9.10.11.12'] |
| state строка | успех | Указание того, присутствует или отсутствует запись Пример: present |
| ttl целое число | успех | Время жизни записи ресурса Пример: 300 |
| type строка | успех | Тип записи ресурса Пример: A |
| zone строка | успех | Имя домена зоны Пример: example.com. |
| zone_id строка | успех | Идентификатор зоны Google Cloud DNS Пример: example-com |
Статус
- Этот модуль будет удалён в версии 2.0.0. [устарел]
- Для получения дополнительной информации см. УСТАРЕВШИЙ.
Авторы
- William Albert (@walbert947)
© 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/gcdns_record_module.html