gcp_dns_managed_zone – Создаёт зону GCP ManagedZone
Новая в версии 2.5.
Описание
- Зона — это поддерево пространства имён DNS, находящееся под одной административной ответственностью. ManagedZone — это ресурс, представляющий зону DNS, размещённую в службе Cloud DNS.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. | ||
| description строка / обязательно | Изменяемая строка длиной не более 1024 символов, связанная с этим ресурсом для удобства пользователя. Не влияет на работу зоны. | |||
| dns_name строка / обязательно | Имя DNS этой управляемой зоны, например, "example.com.". | |||
| dnssec_config словарь добавлено в 2.9 | Настройка DNSSEC. | |||
| default_key_specs список | Указывает параметры, которые будут использоваться для создания начальных DnsKeys для этой ManagedZone. Если вы предоставляете спецификацию для keySigning или zoneSigning, вы также должны предоставить её для другой. | |||
| algorithm строка | Строковое обозначение алгоритма DNSSEC для этого ключа. Некоторые допустимые варианты включают: "ecdsap256sha256", "ecdsap384sha384", "rsasha1", "rsasha256", "rsasha512" | |||
| key_length целое число | Длина ключей в битах. | |||
| key_type строка | Указывает, является ли это ключом подписи ключа (KSK) или ключом подписи зоны (ZSK). Ключи подписи ключей имеют флаг Secure Entry Point и, при активации, будут использоваться только для подписи наборов записей ресурсов типа DNSKEY. Ключи подписи зоны не имеют флага Secure Entry Point и будут использоваться для подписи всех других типов наборов записей ресурсов. . Некоторые допустимые варианты включают: "keySigning", "zoneSigning" | |||
| kind строка | По умолчанию: "dns#dnsKeySpec" | Идентифицирует тип этого ресурса. | ||
| kind строка | По умолчанию: "dns#managedZoneDnsSecConfig" | Идентифицирует тип этого ресурса. | ||
| non_existence строка | Указывает механизм, используемый для предоставления аутентифицированных ответов об отсутствии объекта. Некоторые допустимые варианты включают: "nsec", "nsec3" | |||
| state строка | Указывает, включена ли DNSSEC и в каком режиме она находится. Некоторые допустимые варианты включают: "off", "on", "transfer" | |||
| env_type строка | Указывает, в какой среде Ansible выполняется этот модуль. Это не следует устанавливать, если вы не знаете, что делаете. Это изменяет только строку User Agent для любых запросов API. | |||
| labels словарь добавлено в 2.8 | Набор пар ключ/значение меток для назначения этой ManagedZone. | |||
| name строка / обязательно | Назначенное пользователем имя для этого ресурса. Должно быть уникальным в рамках проекта. | |||
| name_server_set строка | Необязательно указывает NameServerSet для этой ManagedZone. NameServerSet — это набор DNS-серверов, все из которых размещают одни и те же ManagedZones. Большинство пользователей оставят это поле не заполненным. | |||
| private_visibility_config словарь добавлено в 2.8 | Для зон с частной видимость набор ресурсов Virtual Private Cloud, с которых видна зона. | |||
| networks список | Список VPC-сетей, которые могут видеть эту зону. | |||
| network_url строка | Полный URL VPC-сети, которая должна быть привязана. Это должно быть отформатировано как `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}` . | |||
| project строка | Проект Google Cloud Platform, который следует использовать. | |||
| scopes список | Массив используемых областей. | |||
| service_account_contents jsonarg | Содержимое файла JSON учетной записи службы, либо в словаре, либо как строка JSON, представляющая его. | |||
| service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. | |||
| service_account_file путь | Путь к файлу JSON учетной записи службы, если выбран тип serviceaccount. | |||
| state строка |
| Должен ли данный объект существовать в GCP | ||
| visibility строка добавлено в 2.8 | По умолчанию: "public" | Видимость зоны: публичные зоны доступны через Интернет, а частные зоны видны только ресурсам Virtual Private Cloud. Должно быть одно из: `public`, `private`. Некоторые допустимые варианты включают: "private", "public" | ||
Примечания
Примечание
- Ссылка на API: https://cloud.google.com/dns/api/v1/managedZones
- Управление зонами: https://cloud.google.com/dns/zones/
- для аутентификации можно установить service_account_file с использованием переменной среды c(gcp_service_account_file).
- для аутентификации можно установить service_account_contents с использованием переменной среды c(GCP_SERVICE_ACCOUNT_CONTENTS).
- для аутентификации можно установить service_account_email с использованием переменной среды
GCP_SERVICE_ACCOUNT_EMAIL. - для аутентификации можно установить auth_kind с использованием переменной среды
GCP_AUTH_KIND. - для аутентификации можно установить scopes с использованием переменной среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в playbook не заданы.
- Параметры service_account_email и service_account_file взаимоисключающие.
Примеры
- name: create a managed zone
gcp_dns_managed_zone:
name: test_object
dns_name: test.somewild2.example.com.
description: test zone
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращено | Описание | ||
|---|---|---|---|---|
| creationTime строка | успех | Время создания данного ресурса на сервере. Формат соответствует RFC3339. | ||
| description строка | успех | Изменяемая строка длиной не более 1024 символов, связанная с этим ресурсом для удобства пользователя. Не оказывает влияния на функцию управляемой зоны. | ||
| dnsName строка | успех | Имя DNS этой управляемой зоны, например "example.com". | ||
| dnssecConfig сложный | успех | Настройка DNSSEC. | ||
| defaultKeySpecs сложный | успех | Указывает параметры, которые будут использоваться для генерации начальных ключей DnsKeys для этой управляемой зоны. Если вы предоставляете спецификацию для keySigning или zoneSigning, вы также должны предоставить её для другой. | ||
| algorithm строка | успех | Мемоническая строка, определяющая алгоритм DNSSEC этого ключа. | ||
| keyLength целое число | успех | Длина ключей в битах. | ||
| keyType строка | успех | Указывает, является ли это ключом подписи ключа (KSK) или ключом подписи зоны (ZSK). Ключи подписи ключей имеют установленный флаг «Безопасная точка входа» и, когда активны, будут использоваться только для подписи наборов записей ресурсов типа DNSKEY. Ключи подписи зоны не имеют установленного флага «Безопасная точка входа» и будут использоваться для подписи всех других типов наборов записей ресурсов. | ||
| kind строка | успех | Идентифицирует вид этого ресурса. | ||
| kind строка | успех | Идентифицирует вид этого ресурса. | ||
| nonExistence строка | успех | Указывает механизм, используемый для предоставления аутентифицированных ответов об отсутствии. | ||
| state строка | успех | Указывает, включен ли DNSSEC и в каком режиме он находится. | ||
| id целое число | успех | Уникальный идентификатор ресурса; определён сервером. | ||
| labels словарь | успех | Набор пар ключ/значение меток для назначения этой управляемой зоны. | ||
| name строка | успех | Назначенное пользователем имя для этого ресурса. Должно быть уникальным в проекте. | ||
| nameServers список | успех | Делегируйте свою управляемую зону этим виртуальным серверам имен; определено сервером. | ||
| nameServerSet строка | успех | Необязательно указывает NameServerSet для этой управляемой зоны. NameServerSet — это набор DNS-серверов, на которых размещены все управляемые зоны. Большинство пользователей оставят это поле пустым. | ||
| privateVisibilityConfig сложный | успех | Для зон с приватной видимостью набор ресурсов виртуальной частной сети, из которых зона видна. | ||
| networks сложный | успех | Список VPC-сетей, которые могут видеть эту зону. | ||
| networkUrl строка | успех | Полный URL VPC-сети, к которой нужно привязаться. Он должен быть отформатирован как `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`. | ||
| visibility строка | успех | Видимость зоны: публичные зоны доступны в интернете, в то время как приватные зоны видны только ресурсам виртуальной частной сети. Должно быть одно из: `public`, `private`. | ||
Состояние
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Google Inc. (@googlecloudplatform)
Подсказка
Если вы заметите какие-либо проблемы в этом руководстве, вы можете изменить этот документ, чтобы улучшить его.
© 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/gcp_dns_managed_zone_module.html