Spec-Zone.ru › Ansible 2.9

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
Включить или нет логирование потоков для этой подсети.
env_type
строка
Указывает, в какой среде Ansible вы запускаете этот модуль.
Не нужно устанавливать, если вы не знаете, что делаете.
Это изменяет только строку User-Agent для всех запросов API.
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
словарь / обязательно
Сеть, к которой принадлежит эта подсеть.
Только сети в распределенном режиме могут иметь подсети.
Это поле представляет ссылку на ресурс сети GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_network, а затем установить это поле сети на "{{ имя-ресурса }}"
private_ip_google_access
логический тип
    Варианты:
  • no
  • yes
При включении ВМ в этой подсети без внешних IP-адресов могут получать доступ к службам и API Google с помощью 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
jsonarg
Содержимое файла 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
  • Сеть Cloud Networking: https://cloud.google.com/vpc/docs/using-vpc
  • для аутентификации можно установить 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.
  • Значения переменных окружения будут использоваться только в том случае, если значения в плейбуке не заданы.
  • Параметры 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
строка
success
Маркер времени создания в формате RFC3339.

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

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

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

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

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

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

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

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

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

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

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

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

rangeName
строка
success
Название, связанное с этим вторичным диапазоном подсети, используемое при добавлении диапазона alias IP в виртуальную машину. Название должно быть длиной от 1 до 63 символов и соответствовать RFC1035. Название должно быть уникальным в пределах подсети.



Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [preview]
  • Этот модуль поддерживается сообществом 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_compute_subnetwork_module.html

Spec-Zone.ru

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