Spec-Zone.ru › Ansible 2.9

gcp_compute_vpn_tunnel – Создаёт туннель GCP VpnTunnel

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

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

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

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

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
description
строка
Необязательное описание этого ресурса.
env_type
строка
Указывает, в какой среде Ansible выполняется этот модуль.
Не следует устанавливать, если вы не знаете, что делаете.
Это влияет только на строку User Agent для всех запросов API.
ike_version
целое число
По умолчанию:
"2"
Версия протокола IKE для использования при установлении VPN-туннеля с подключенным VPN-шлюзом.
Допустимые версии IKE — 1 или 2. Версия по умолчанию — 2.
local_traffic_selector
список
Локальный селектор трафика для использования при установлении VPN-туннеля с подключенным VPN-шлюзом. Значение должно быть строкой в формате CIDR, например `192.168.0.0/16`. Диапазоны должны быть непересекающимися.
Поддерживается только IPv4.
name
строка / обязательно
Имя ресурса. Длина имени должна быть от 1 до 63 символов и соответствовать RFC1035. В частности, длина имени должна быть от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
peer_ip
строка
IP-адрес подключенного VPN-шлюза. Поддерживается только IPv4.
project
строка
Проект Google Cloud Platform для использования.
region
строка / обязательно
Регион, в котором находится туннель.
remote_traffic_selector
список
Удаленный селектор трафика для использования при установлении VPN-туннеля с подключенным VPN-шлюзом. Значение должно быть строкой в формате CIDR, например `192.168.0.0/16`. Диапазоны должны быть непересекающимися.
Поддерживается только IPv4.
router
словарь
URL ресурса маршрутизатора для использования динамической маршрутизации.
Это поле представляет ссылку на ресурс Маршрутизатор в GCP. Можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, можно добавить `register: name-of-resource` к задаче gcp_compute_router, а затем установить это поле router в "{{ name-of-resource }}"
scopes
список
Массив используемых областей.
service_account_contents
jsonarg
Содержимое файла JSON учетной записи службы, либо в виде словаря, либо в виде JSON-строки, которая его представляет.
service_account_email
строка
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
service_account_file
путь
Путь к файлу JSON учетной записи службы, если тип выбран serviceaccount.
shared_secret
строка / обязательно
Секретный ключ, используемый для установления защищенного сеанса между шлюзом Cloud VPN и подключенным VPN-шлюзом.
state
строка
    Варианты:
  • present ←
  • absent
Требуется ли существование объекта в GCP
target_vpn_gateway
словарь
URL целевого VPN-шлюза, к которому связан этот VPN-туннель.
Это поле представляет ссылку на ресурс TargetVpnGateway в GCP. Можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, можно добавить `register: name-of-resource` к задаче gcp_compute_target_vpn_gateway, а затем установить это поле target_vpn_gateway в "{{ name-of-resource }}"

Примечания

Примечание

  • Справочник 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 с помощью переменной среды 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-vpn-tunnel
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: network

- name: create a router
  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
  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
  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
success
Марка времени создания в формате RFC3339.

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

ikeVersion
integer
success
Версия протокола IKE, используемая при установлении VPN-туннеля с целевым VPN шлюзом.
Допустимые версии IKE — 1 или 2. По умолчанию используется версия 2.

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

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

peerIp
string
success
IP-адрес целевого VPN-шлюза. Поддерживается только IPv4.

region
string
success
Регион, где находится туннель.

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

router
dictionary
success
URL ресурса маршрутизатора, используемого для динамической маршрутизации.

sharedSecret
string
success
Общий секрет, используемый для настройки защищённого сеанса между шлюзом Cloud VPN и целевым VPN-шлюзом.

sharedSecretHash
string
success
Хеш общего секрета.

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



Состояние

  • Данный модуль не гарантирует обратную совместимость. [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_vpn_tunnel_module.html

Spec-Zone.ru

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