Spec-Zone.ru › Ansible 2.8

ec2_vpc_vpn – Создание, изменение и удаление подключений VPN EC2

Новое в версии 2.4.

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

Описание

  • Этот модуль создаёт, изменяет и удаляет подключения VPN. Идемпотентность достигается с помощью параметра filters или указания идентификатора подключения VPN.

Требования

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

  • boto
  • boto3
  • botocore
  • python >= 2.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
aws_access_key
строка
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.

псевдонимы: ec2_access_key, access_key
aws_secret_key
строка
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.

псевдонимы: ec2_secret_key, secret_key
connection_type
-
    Варианты:
  • ipsec.1 ←
Тип подключения VPN.
customer_gateway_id
-
Идентификатор шлюза клиента.
debug_botocore_endpoint_logs
логический тип
добавлено в 2.8
    Варианты:
  • нет ←
  • да
Использовать логгер botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполняемых во время задачи, выводящий набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в общий список, созданный во время выполнения игры. Также можно использовать переменную среды ANSIBLE_DEBUG_BOTOCORE_LOGS.
delay
целое число
добавлено в 2.8
По умолчанию:
15
Время ожидания перед повторной проверкой операции. в секундах.
ec2_url
строка
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если не используется регион. Если не указан, используется значение переменной среды EC2_URL, если таковое имеется.
filters
-
Альтернатива использованию vpn_connection_id. Если найдено несколько совпадений, необходимо использовать vpn_connection_id. Если один из следующих подвариантов является списком элементов для фильтрации, для поиска VPN достаточно совпадения по одному элементу. Например, если фильтр «cidr» — это [«194.168.2.0/24», «192.168.2.0/24»], а маршрут VPN содержит только блок назначения cidr «192.168.2.0/24», он будет найден по этому фильтру (предполагается, что VPN не несколько). Другой пример, если фильтр «vpn» равен [«vpn-ccf7e7ad», «vpn-cb0ae2a2»], и один из VPN имеет состояние удалённый (существует, но не может быть изменён), а другой существует и не удалён, он будет найден по этому фильтру. См. примеры.
bgp
-
Номер ASN BGP, связанный с устройством BGP. Работает только если соединение подключено. Эта опция фильтрации в настоящее время не работает.
cgw
-
Идентификатор шлюза клиента как строка или список строк.
cgw-config
-
Настройка шлюза клиента VPN как строка (в формате возвращаемого значения) или список таких строк.
cidr
-
Целевой cidr маршрута VPN как строка или список строк.
static-routes-only
-
Тип маршрутизации; true или false.
tag-keys
-
Ключ тега как строка или список строк.
tag-values
-
Значение тега как строка или список строк.
tags
-
Словарь пар ключ-значение.
vgw
-
Виртуальный шлюз как строка или список строк.
vpn
-
Идентификатор соединения VPN как строка или список строк.
profile
строка
Использует профиль boto. Работает только с boto >= 2.24.0.
purge_routes
логический тип
    Варианты:
  • нет
  • да
Удалять ли маршруты VPN-соединений, которые не указаны в задаче.
purge_tags
логический тип
    Варианты:
  • нет ←
  • да
Удалять ли метки VPN-соединений, которые связаны с соединением, но не указаны в задаче.
region
строка
AWS-регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковое имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

псевдонимы: aws_region, ec2_region
routes
-
Маршруты для добавления к соединению.
security_token
строка
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

псевдонимы: access_token
state
-
    Варианты:
  • present ←
  • absent
Желаемое состояние VPN-соединения.
static_only
логический тип
    Варианты:
  • нет ←
  • да
Указывает, использует ли VPN-соединение только статические маршруты. Статические маршруты должны использоваться для устройств, которые не поддерживают BGP.
tags
-
Метки для добавления к VPN-соединению.
tunnel_options
-
добавлено в 2.5
Необязательный список, содержащий не более двух элементов словаря, каждый из которых может содержать ключи «TunnelInsideCidr» и/или «PreSharedKey» со соответствующими строковыми значениями. Значения по умолчанию AWS будут применены в отсутствие одного из вышеупомянутых ключей.
validate_certs
логический тип
    Варианты:
  • нет
  • да ←
При значении «нет» сертификаты SSL не будут проверяться для версий boto >= 2.6.0.
vpn_connection_id
-
Идентификатор VPN-соединения. Требуется для изменения или удаления соединения, если опция filters не обеспечивает уникального соответствия.
vpn_gateway_id
-
Идентификатор виртуального шлюза VPN.
wait_timeout
целое число
добавлено в 2.8
По умолчанию:
600
Сколько времени ждать, прежде чем ожидание прекратится, в секундах.

Примечания

Примечание

  • Если параметры не заданы в модуле, следующие переменные среды могут быть использованы в порядке убывания приоритета AWS_URL или EC2_URL, AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY или EC2_ACCESS_KEY, AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY или EC2_SECRET_KEY, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN, AWS_REGION или EC2_REGION
  • Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно используются для указания региона AWS, при необходимости, но это также можно настроить в файле конфигурации boto

Примеры

# Note: None of these examples set aws_access_key, aws_secret_key, or region.
# It is assumed that their matching environment variables are set.

- name: create a VPN connection
  ec2_vpc_vpn:
    state: present
    vpn_gateway_id: vgw-XXXXXXXX
    customer_gateway_id: cgw-XXXXXXXX

- name: modify VPN connection tags
  ec2_vpc_vpn:
    state: present
    vpn_connection_id: vpn-XXXXXXXX
    tags:
      Name: ansible-tag-1
      Other: ansible-tag-2

- name: delete a connection
  ec2_vpc_vpn:
    vpn_connection_id: vpn-XXXXXXXX
    state: absent

- name: modify VPN tags (identifying VPN by filters)
  ec2_vpc_vpn:
    state: present
    filters:
      cidr: 194.168.1.0/24
      tag-keys:
        - Ansible
        - Other
    tags:
      New: Tag
    purge_tags: true
    static_only: true

- name: set up VPN with tunnel options utilizing 'TunnelInsideCidr' only
  ec2_vpc_vpn:
    state: present
    filters:
      vpn: vpn-XXXXXXXX
    static_only: true
    tunnel_options:
      -
        TunnelInsideCidr: '169.254.100.1/30'
      -
        TunnelInsideCidr: '169.254.100.5/30'

- name: add routes and remove any preexisting ones
  ec2_vpc_vpn:
    state: present
    filters:
      vpn: vpn-XXXXXXXX
    routes:
      - 195.168.2.0/24
      - 196.168.2.0/24
    purge_routes: true

- name: remove all routes
  ec2_vpc_vpn:
    state: present
    vpn_connection_id: vpn-XXXXXXXX
    routes: []
    purge_routes: true

- name: delete a VPN identified by filters
  ec2_vpc_vpn:
    state: absent
    filters:
      tags:
        Ansible: Tag

Значения возврата

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

Ключ Возвращаемое Описание
changed
boolean
всегда
Если соединение VPN изменилось.

Пример:
{'changed': True}
customer_gateway_configuration
строка
state=present
Настройка соединения VPN.

customer_gateway_id
строка
state=present
Клиентский шлюз, подключенный через соединение.

Пример:
{'customer_gateway_id': 'cgw-1220c87b'}
options
сложный
state=present
Параметры соединения VPN (в настоящее время содержит только static_routes_only).

static_routes_only
строка
state=present
Если соединение VPN разрешает только статические маршруты.

Пример:
{'static_routes_only': True}
routes
список
state=present
Маршруты соединения VPN.

Пример:
{'routes': [{'destination_cidr_block': '192.168.1.0/24', 'state': 'available'}]}
state
строка
state=present
Статус соединения VPN.

Пример:
{'state': 'available'}
tags
словарь
state=present
Теги, связанные с подключением.

Пример:
{'tags': {'name': 'ansible-test', 'other': 'tag'}}
type
строка
state=present
Тип соединения VPN (в настоящее время доступен только ipsec.1).

Пример:
{'type': 'ipsec.1'}
vgw_telemetry
список
state=present
Телеметрия для туннеля VPN.

Пример:
{'vgw_telemetry': [{'outside_ip_address': 'строка', 'status': 'up', 'last_status_change': 'datetime(2015', 1: None, '1)': None, 'status_message': 'строка', 'accepted_route_count': 123}]}
vpn_connection_id
строка
state=present
Идентификатор соединения VPN.

Пример:
{'vpn_connection_id': 'vpn-781e0e19'}
vpn_gateway_id
строка
state=present
Виртуальный частный шлюз, подключенный через соединение.

Пример:
{'vpn_gateway_id': 'vgw-cb0ae2a2'}


Статус

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

Авторы

  • Sloane Hertel (@s-hertel)

Подсказка

Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 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/ec2_vpc_vpn_module.html

Spec-Zone.ru

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