Spec-Zone.ru › Ansible

google.cloud.gcp_compute_vpn_tunnel модуль — Создаёт GCP VpnTunnel

Примечание

Этот модуль входит в коллекцию google.cloud (версия 1.4.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля потребуются дополнительные требования. Подробнее см. раздел Требования.

Чтобы использовать его в книге задач, укажите: google.cloud.gcp_compute_vpn_tunnel.

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата

Краткое описание

  • Ресурс VPN-туннеля.

Требования

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

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

Параметры

Параметр

Комментарии

access_token

string

Токен доступа OAuth2, если тип учетных данных — accesstoken.

auth_kind

string / required

Тип используемых учетных данных.

Варианты:

  • "application"
  • "machineaccount"
  • "serviceaccount"
  • "accesstoken"

description

string

Необязательное описание этого ресурса.

env_type

string

Указывает, в какой среде Ansible вы запускаете этот модуль.

Это не должно быть установлено, если вы не знаете, что делаете.

Это только изменяет строку User Agent для любых запросов API.

ike_version

integer

Версия протокола IKE, используемая при установлении VPN-туннеля с шлюзом VPN-партнера.

Допустимые версии IKE — 1 или 2. Версия по умолчанию — 2.

По умолчанию: 2

local_traffic_selector

list / elements=string

Селектор локального трафика, используемый при установлении VPN-туннеля с шлюзом VPN-партнера. Значение должно быть строкой в формате CIDR, например `192.168.0.0/16`. Диапазоны должны быть непересекающимися.

Поддерживается только IPv4.

name

string / required

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

peer_external_gateway

dictionary

URL внешнего VPN-шлюза со стороны партнера, к которому подключен этот VPN-туннель.

Это поле представляет собой ссылку на ресурс ExternalVpnGateway в GCP. Его можно указать двумя способами. Во-первых, вы можете разместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. В качестве альтернативы вы можете добавить `register: name-of-resource` к задаче gcp_compute_external_vpn_gateway, а затем установить это поле peer_external_gateway в значение “{{ name-of-resource }}”

peer_external_gateway_interface

integer

Идентификатор интерфейса внешнего VPN-шлюза, к которому подключен этот VPN-туннель.

peer_gcp_gateway

dictionary

URL шлюза HA GCP VPN со стороны партнера, к которому подключен этот VPN-туннель.

Если указано, VPN-туннель автоматически будет использовать тот же идентификатор vpn_gateway_interface в шлюзе VPN GCP партнера.

Это поле представляет собой ссылку на ресурс VpnGateway в GCP. Его можно указать двумя способами. Во-первых, вы можете разместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. В качестве альтернативы вы можете добавить `register: name-of-resource` к задаче gcp_compute_vpn_gateway, а затем установить это поле peer_gcp_gateway в значение “{{ name-of-resource }}”

peer_ip

string

IP-адрес шлюза VPN-партнера. Поддерживается только IPv4.

project

string

Проект Google Cloud Platform для использования.

region

string / required

Регион, где расположен туннель.

remote_traffic_selector

list / elements=string

Селектор удаленного трафика, используемый при установлении VPN-туннеля с шлюзом VPN-партнера. Значение должно быть строкой в формате CIDR, например `192.168.0.0/16`. Диапазоны должны быть непересекающимися.

Поддерживается только IPv4.

router

dictionary

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

Это поле представляет собой ссылку на ресурс Router в GCP. Его можно указать двумя способами. Во-первых, вы можете разместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. В качестве альтернативы вы можете добавить `register: name-of-resource` к задаче gcp_compute_router, а затем установить это поле router в значение “{{ name-of-resource }}”

scopes

list / elements=string

Массив областей, которые будут использоваться

service_account_contents

jsonarg

Содержимое файла JSON учетной записи службы, либо в словаре, либо в виде представляющей его JSON-строки.

service_account_email

string

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

service_account_file

path

Путь к файлу JSON учетной записи службы, если в качестве типа выбран serviceaccount.

shared_secret

string / required

Секретный ключ, используемый для установки защищенного сеанса между шлюзом Cloud VPN и шлюзом VPN-партнера.

состояние

строка

Указывает, должно ли данное облачное ресурс существовать в GCP

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

целевой_шлюз_vpn

словарь

URL целевого шлюза VPN, с которым связан этот VPN-туннель.

Это поле представляет собой ссылку на ресурс TargetVpnGateway в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя_ресурса` к задаче gcp_compute_target_vpn_gateway, а затем установить это поле target_vpn_gateway в «{{ имя_ресурса }}»

шлюз_vpn

словарь

URL шлюза VPN, с которым связан этот VPN-туннель.

Это необходимо, если создается ресурс шлюза VPN с высокой доступностью.

Это поле представляет собой ссылку на ресурс VpnGateway в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя_ресурса` к задаче gcp_compute_vpn_gateway, а затем установить это поле vpn_gateway в «{{ имя_ресурса }}»

интерфейс_шлюза_vpn

целое число

Идентификатор интерфейса шлюза VPN, с которым связан этот VPN-туннель.

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/rest/v1/vpnTunnels
  • Обзор Cloud VPN: https://cloud.google.com/vpn/docs/concepts/overview
  • Сети и маршрутизация туннелей: https://cloud.google.com/vpn/docs/concepts/choosing-networks-routing
  • для аутентификации можно установить service_account_file, используя переменную среды GCP_SERVICE_ACCOUNT_FILE.
  • для аутентификации можно установить service_account_contents, используя переменную среды GCP_SERVICE_ACCOUNT_CONTENTS.
  • Для аутентификации можно установить service_account_email, используя переменную среды GCP_SERVICE_ACCOUNT_EMAIL.
  • Для аутентификации можно установить access_token, используя переменную среды GCP_ACCESS_TOKEN.
  • Для аутентификации можно установить auth_kind, используя переменную среды GCP_AUTH_KIND.
  • Для аутентификации можно установить scopes, используя переменную среды GCP_SCOPES.
  • Значения переменных среды будут использоваться только в том случае, если значения в плейбуке не заданы.
  • Параметры service_account_email и service_account_file взаимоисключающие.

Примеры

- name: create a network
  google.cloud.gcp_compute_network:
    name: network-vpn-tunnel
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: network

- name: create a router
  google.cloud.gcp_compute_router:
    name: router-vpn-tunnel
    network: "{{ network }}"
    bgp:
      asn: 64514
      advertise_mode: CUSTOM
      advertised_groups:
      - ALL_SUBNETS
      advertised_ip_ranges:
      - range: 1.2.3.4
      - range: 6.7.0.0/16
    region: us-central1
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: router

- name: create a target vpn gateway
  google.cloud.gcp_compute_target_vpn_gateway:
    name: gateway-vpn-tunnel
    region: us-west1
    network: "{{ network }}"
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: gateway

- name: create a vpn tunnel
  google.cloud.gcp_compute_vpn_tunnel:
    name: test_object
    region: us-west1
    target_vpn_gateway: "{{ gateway }}"
    router: "{{ router }}"
    shared_secret: super secret
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

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

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

Ключ

Описание

creationTimestamp

string

Метка времени создания в текстовом формате RFC3339.

Возвращается: успех

description

string

Необязательное описание этого ресурса.

Возвращается: успех

id

string

Уникальный идентификатор ресурса. Этот идентификатор определяется сервером.

Возвращается: успех

ikeVersion

integer

Версия протокола IKE, используемая при установлении VPN-туннеля с шлюзом VPN-партнера.

Допустимые версии IKE — 1 или 2. Версия по умолчанию — 2.

Возвращается: успех

localTrafficSelector

list / elements=string

Селектор локального трафика, используемый при установлении VPN-туннеля со шлюзом VPN-партнера. Значение должно быть строкой в формате CIDR, например `192.168.0.0/16`. Диапазоны должны быть непересекающимися.

Поддерживается только IPv4.

Возвращается: успех

name

string

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

Возвращается: успех

peerExternalGateway

dictionary

URL внешнего шлюза VPN-партнера, к которому подключен этот VPN-туннель.

Возвращается: успех

peerExternalGatewayInterface

integer

Идентификатор интерфейса внешнего шлюза VPN, к которому подключен этот VPN-туннель.

Возвращается: успех

peerGcpGateway

dictionary

URL шлюза HA GCP VPN-партнера, к которому подключен этот VPN-туннель.

Если указано, VPN-туннель автоматически будет использовать тот же идентификатор vpn_gateway_interface в шлюзе GCP VPN-партнера.

Возвращается: успех

peerIp

string

IP-адрес шлюза VPN-партнера. Поддерживается только IPv4.

Возвращается: успех

region

string

Регион, в котором расположен туннель.

Возвращается: успех

remoteTrafficSelector

list / elements=string

Селектор удаленного трафика, используемый при установлении VPN-туннеля со шлюзом VPN-партнера. Значение должно быть строкой в формате CIDR, например `192.168.0.0/16`. Диапазоны должны быть непересекающимися.

Поддерживается только IPv4.

Возвращается: успех

router

dictionary

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

Возвращается: успех

sharedSecret

string

Секретный ключ, используемый для установки защищенного сеанса между шлюзом Cloud VPN и шлюзом VPN-партнера.

Возвращается: успех

sharedSecretHash

string

Хэш секретного ключа.

Возвращается: успех

targetVpnGateway

dictionary

URL целевого шлюза VPN, с которым связан этот VPN-туннель.

Возвращается: успех

vpnGateway

dictionary

URL шлюза VPN, с которым связан этот VPN-туннель.

Это должно быть использовано, если создается ресурс шлюза VPN высокой доступности.

Возвращается: успех

vpnGatewayInterface

integer

Идентификатор интерфейса шлюза VPN, с которым связан этот VPN-туннель.

Возвращается: успех

Авторы

  • Google Inc. (@googlecloudplatform)

Справочные ссылки

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (источники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_compute_vpn_tunnel_module.html

Spec-Zone.ru

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