Spec-Zone.ru › Ansible 2.8

gcp_compute_subnetwork – Создаёт подсеть GCP

Новая в версии 2.6.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Состояние

Обзор

  • Сеть VPC — это виртуальная версия традиционных физических сетей, которые существуют внутри и между физическими дата-центрами. Сеть VPC обеспечивает подключение для ваших виртуальных машин (ВМ) Compute Engine, контейнеров Container Engine, сервисов App Engine Flex и других сетевых ресурсов.
  • Каждый проект GCP содержит одну или несколько сетей VPC. Каждая сеть VPC — это глобальный объект, охватывающий все регионы GCP. Эта глобальная сеть VPC позволяет виртуальным машинам и другим ресурсам взаимодействовать друг с другом через внутренние частные IP-адреса.
  • Каждая сеть VPC подразделяется на подсети, и каждая подсеть содержится в одном регионе. Вы можете иметь более одной подсети в регионе для заданной сети VPC. Каждая подсеть имеет непрерывное пространство частных IP-адресов RFC1918. В этих подсетях вы создаёте виртуальные машины, контейнеры и т.п.
  • При создании виртуальной машины (ВМ) её необходимо создать в подсети, и виртуальная машина получает свой внутренний IP-адрес из этой подсети.
  • Виртуальные машины (ВМ) в сети VPC могут взаимодействовать с ВМ во всех других подсетях той же сети VPC, независимо от региона, используя их частные IP-адреса RFC1918. Вы можете изолировать части сети, даже целые подсети, используя правила брандмауэра.

Требования

Ниже перечислены требования к хосту, на котором выполняется этот модуль.

  • python >= 2.6
  • requests >= 2.18.4
  • google-auth >= 1.3.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
description
-
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. Это поле можно задать только при создании ресурса.
enable_flow_logs
булево
добавлен в 2.8
    Варианты:
  • no
  • yes
Включить или выключить логирование потоков для этой подсети.
ip_cidr_range
- / обязательно
Диапазон внутренних адресов, принадлежащих этой подсети.
Укажите это свойство при создании подсети. Например, 10.0.0.0/8 или 192.168.0.0/16. Диапазоны должны быть уникальными и не перекрываться в рамках одной сети. Поддерживается только IPv4.
name
- / обязательно
Имя ресурса, задаваемое клиентом при первоначальном создании ресурса. Длина имени должна быть 1–63 символа и соответствовать RFC1035. В частности, длина имени должна быть 1–63 символа, и оно должно соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
network
- / обязательно
Сеть, к которой принадлежит эта подсеть.
Только сети в режиме распределения могут иметь подсети.
Это поле представляет ссылку на ресурс Network в GCP. Оно может быть задано двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_network, а затем установить это поле network в "{{ имя-ресурса }}"
private_ip_google_access
булево
    Варианты:
  • no
  • yes
При включении ВМ в этой подсети без внешних IP-адресов могут получить доступ к Google API и сервисам, используя Private Google Access.
project
строка
Проект Google Cloud Platform для использования.
region
- / обязательно
URL региона GCP для этой подсети.
scopes
список
Массив используемых областей.
secondary_ip_ranges
-
добавлен в 2.8
Массив конфигураций для вторичных диапазонов IP-адресов для ВМ, содержащихся в этой подсети. Основной IP такой ВМ должен принадлежать основному диапазону ipCidrRange подсети. Alias IP могут принадлежать как основному, так и вторичным диапазонам.
ip_cidr_range
- / обязательно
Диапазон IP-адресов, принадлежащих вторичному диапазону этой подсети. Укажите это свойство при создании подсети.
Диапазоны должны быть уникальными и не перекрываться с любыми основными и вторичными IP-диапазонами в рамках одной сети. Поддерживается только IPv4.
range_name
- / обязательно
Имя, связанное со вторичным диапазоном этой подсети, используемое при добавлении диапазона alias IP в виртуальную машину. Длина имени должна быть 1–63 символа и соответствовать RFC1035. Имя должно быть уникальным в рамках подсети.
service_account_contents
строка
Строка, представляющая содержимое JSON-файла учетной записи службы.
Это не должно передаваться как словарь, а строка, содержащая точное содержимое файла JSON учетной записи службы (валидный JSON).
service_account_email
строка
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
service_account_file
путь
Путь к файлу JSON учетной записи службы, если выбран тип serviceaccount.
state
-
    Варианты:
  • present ←
  • absent
Существование объекта в GCP.

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/rest/beta/subnetworks
  • Private Google Access: https://cloud.google.com/vpc/docs/configure-private-google-access
  • Сеть облака: https://cloud.google.com/vpc/docs/using-vpc
  • Для аутентификации можно установить 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.
  • Значения переменных среды будут использоваться только в том случае, если значения в playбуке не заданы.
  • Параметры service_account_email и service_account_file взаимно исключают друг друга.

Примеры

- name: create a network
  gcp_compute_network:
    name: network-subnetwork
    auto_create_subnetworks: 'true'
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: network

- name: create a subnetwork
  gcp_compute_subnetwork:
    name: ansiblenet
    region: us-west1
    network: "{{ network }}"
    ip_cidr_range: 172.16.0.0/16
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Возвращаемые значения

Общие возвращаемые значения документированы здесь, следующие — поля, уникальные для этого модуля:

Ключ Возвращённое значение Описание
creationTimestamp
строка
успешно
Маркер времени создания в формате RFC3339.

description
строка
успешно
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. Это поле можно установить только во время создания ресурса.

enableFlowLogs
булево
успешно
Включить ли ведение журнала потоков для этой подсети.

fingerprint
строка
успешно
Отпечаток этого ресурса. Это поле используется во внутренних процессах при обновлении этого ресурса.

gatewayAddress
строка
успешно
Адрес шлюза для маршрутов по умолчанию, чтобы достичь адресов назначения за пределами этой подсети.

id
целое число
успешно
Уникальный идентификатор ресурса.

ipCidrRange
строка
успешно
Диапазон внутренних адресов, принадлежащих этой подсети.
Укажите это свойство при создании подсети. Например, 10.0.0.0/8 или 192.168.0.0/16. Диапазоны должны быть уникальными и не пересекаться в рамках сети. Поддерживается только IPv4.

name
строка
успешно
Имя ресурса, предоставленное клиентом при первоначальном создании ресурса. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035. То есть длина имени должна быть от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефис, строчная буква или цифра, за исключением последнего символа, который не может быть дефисом.

network
словарь
успешно
Сеть, к которой принадлежит эта подсеть.
Только сети в распределённом режиме могут иметь подсети.

privateIpGoogleAccess
булево
успешно
При включении ВМ в этой подсети без внешних IP-адресов могут получить доступ к Google API и сервисам с помощью Private Google Access.

region
строка
успешно
URL региона GCP для этой подсети.

secondaryIpRanges
сложный
успешно
Массив конфигураций для вторичных диапазонов IP-адресов для ВМ, содержащихся в этой подсети. Основной IP такой ВМ должен принадлежать основному диапазону ipCidrRange подсети. Адреса псевдонимов могут принадлежать либо основному, либо вторичному диапазону.

ipCidrRange
строка
успешно
Диапазон IP-адресов, принадлежащих вторичному диапазону этой подсети. Укажите это свойство при создании подсети.
Диапазоны должны быть уникальными и не пересекаться со всеми основными и вторичными диапазонами IP-адресов в рамках сети. Поддерживается только IPv4.

rangeName
строка
успешно
Имя, связанное с этим вторичным диапазоном подсети, используемое при добавлении диапазона адресов псевдонимов для ВМ. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035. Имя должно быть уникальным в пределах подсети.



Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • 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_compute_subnetwork_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API