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.". | |||
| 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 строка | Строка, представляющая содержимое файла JSON учетной записи службы. Не следует передавать как словарь, а строку с точным содержимым файла service account json (валидный JSON). | |||
| service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. | |||
| service_account_file путь | Путь к файлу JSON учетной записи службы, если тип serviceaccount выбран как тип. | |||
| state - |
| Нужно ли, чтобы данный объект существовал в GCP | ||
| visibility - добавлен в 2.8 |
| Видимость зоны: публичные зоны доступны через Интернет, а частные — только для ресурсов Virtual Private Cloud. Должно быть одним из: `public`, `private`. | ||
Примечания
Примечание
- Ссылка на API: https://cloud.google.com/dns/api/v1/managedZones
- Управление зонами: https://cloud.google.com/dns/zones/
- Для аутентификации можно установить service_account_file, используя переменную среды
GCP_SERVICE_ACCOUNT_FILE. - Для аутентификации можно установить service_account_email, используя переменную среды
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации можно установить service_account_contents, используя переменную среды
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации можно установить 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.". | ||
| id целое число | успех | Уникальный идентификатор ресурса; определён сервером. | ||
| labels словарь | успех | Набор пар "ключ-значение" меток для назначения этой ManagedZone. | ||
| name строка | успех | Назначенное пользователем имя для этого ресурса. Должно быть уникальным в рамках проекта. | ||
| nameServers список | успех | Делегируйте свою managed_zone на эти виртуальные имена серверов; определено сервером. | ||
| nameServerSet строка | успех | Необязательно указывает NameServerSet для этой ManagedZone. NameServerSet — это набор DNS-серверов, все из которых размещают одни и те же ManagedZones. Большинство пользователей оставят это поле пустым. | ||
| privateVisibilityConfig сложная структура | успех | Для зон с частной видимостью — набор ресурсов Virtual Private Cloud, из которых видна зона. | ||
| networks сложная структура | успех | Список VPC-сетей, которые могут видеть эту зону. | ||
| networkUrl строка | успех | Полный URL VPC-сети, к которой нужно привязаться. Должен быть отформатирован как `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}` . | ||
| visibility строка | успех | Видимость зоны: публичные зоны доступны через Интернет, а частные — только для ресурсов Virtual Private Cloud. Должно быть одним из: `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.8/modules/gcp_dns_managed_zone_module.html