graphiant.naas.graphiant_site_to_site_vpn module – Управление конфигурацией Graphiant Site-to-Site VPN
Примечание
Этот модуль входит в коллекцию graphiant.naas (версия 26.4.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install graphiant.naas. Для работы с этим модулем требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: graphiant.naas.graphiant_site_to_site_vpn.
Добавлено в graphiant.naas 26.2.0
Краткое описание
- Этот модуль предоставляет широкие возможности управления Site-to-Site VPN для устройств Graphiant Edge.
- Поддерживает создание и удаление Site-to-Site VPN с использованием статической маршрутизации или BGP.
- Для всех операций используются шаблоны Jinja2, обеспечивающие единообразное развертывание конфигурации.
- Файлы конфигурации поддерживают шаблоны Jinja2 для динамической генерации.
Требования
На хосте, выполняющем этот модуль, должны быть установлены следующие компоненты.
- python >= 3.7
- graphiant-sdk >= 26.4.0
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен Bearer для аутентификации API (например, полученный с помощью Если аргумент модуля не задан, коллекция считывает Если токен Bearer задан (в аргументе модуля или переменной окружения), он имеет приоритет над Если действительный токен недоступен, модуль выполняет аутентификацию с помощью |
detailed_logs логическое значение | Включить подробное ведение журналов для устранения неполадок и мониторинга. При включении предоставляет подробные журналы всех операций Site-to-Site VPN. Журналы собираются и включаются в result_msg для отображения с помощью модуля ansible.builtin.debug. Варианты:
|
host псевдонимы: base_url строка / обязательный | URL-адрес хоста портала Graphiant для подключения к API. Пример: “https://api.graphiant.com” |
operation строка | Операция Site-to-Site VPN, которую необходимо выполнить.
Варианты:
|
password строка | Пароль портала Graphiant для аутентификации. Требуется для входа по паролю, если действительный токен Bearer из |
site_to_site_vpn_config_file строка / обязательный | Путь к YAML-файлу конфигурации Site-to-Site VPN. Обязателен для всех операций. Может быть абсолютным или относительным. Относительные пути разрешаются с использованием настроенного config_path. Файлы конфигурации поддерживают синтаксис шаблонов Jinja2 для динамической генерации. Файл должен содержать описания Site-to-Site VPN с именами устройств и конфигурациями VPN. |
state строка | |
username строка | Имя пользователя портала Graphiant для аутентификации. Требуется для входа по паролю, если действительный токен Bearer из |
vault_bgp_md5_passwords словарь | Словарь, сопоставляющий имена VPN с паролями BGP MD5 (только для создания). Передавайте из переменных плейбука, загруженных из зашифрованного файла vault_secrets.yml; секреты хранятся только в памяти. Ключ должен совпадать с По умолчанию: |
vault_site_to_site_vpn_keys словарь | Словарь, сопоставляющий имена VPN с предварительно согласованными ключами (только для создания). Передавайте из переменных плейбука, загруженных из зашифрованного файла vault_secrets.yml; секреты хранятся только в памяти. Ключ должен совпадать с По умолчанию: |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная При запуске с | Поддерживает режим проверки. В режиме проверки конфигурация не отправляется на устройства, однако данные, которые были бы отправлены, записываются с |
Примечания
Примечание
- Режим проверки (
--check): конфигурация не отправляется; данные, которые были бы отправлены, записываются с[check_mode]. - Операции Site-to-Site VPN:
- - Создание: создание подключений Site-to-Site VPN на пограничных устройствах.
- - Удаление: удаление подключений Site-to-Site VPN с пограничных устройств.
- Файлы конфигурации поддерживают синтаксис шаблонов Jinja2 для динамической генерации конфигурации.
- Модуль автоматически преобразует имена устройств в идентификаторы.
- Все операции идемпотентны и безопасны при многократном выполнении.
- Создание: модуль сравнивает требуемую конфигурацию с текущим состоянием устройства (ipsecTunnels). Если они совпадают, конфигурация не отправляется, а
changedпринимает значениеfalse. - Удаление: удаляются только VPN, существующие на устройстве; повторное удаление не выполняет никаких действий и возвращает
changedfalse. - Перед применением Site-to-Site VPN необходимо сначала настроить каналы и интерфейсы.
- Vault (только для создания):
vault_site_to_site_vpn_keys,vault_bgp_md5_passwords. - Используйте зашифрованные файлы configs/vault_secrets.yml, configs/vault-password-file.sh; не храните данные в открытом виде.
- Загружайте данные с помощью ansible.builtin.include_vars (no_log true); передавайте словари, чтобы секреты оставались в памяти.
- Ключ Vault должен совпадать с
nameVPN. См. configs/vault_secrets.yml.example. Запускайте с--vault-password-file configs/vault-password-file.sh.
См. также
См. также
- graphiant.naas.graphiant_interfaces
-
Настройте интерфейсы перед установкой Site-to-Site VPN
- graphiant.naas.graphiant_device_config
-
Альтернативный способ настройки устройства
Примеры
# Playbook: use encrypted configs/vault_secrets.yml (from vault_secrets.yml.example),
# decrypt with configs/vault-password-file.sh (ANSIBLE_VAULT_PASSPHRASE). Run with:
# ansible-playbook site_to_site_vpn.yml --vault-password-file configs/vault-password-file.sh --tags create
- name: Create Site-to-Site VPN (vault dicts from include_vars; secrets in memory only)
graphiant.naas.graphiant_site_to_site_vpn:
operation: create
site_to_site_vpn_config_file: "sample_site_to_site_vpn.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
vault_site_to_site_vpn_keys: "{{ vault_site_to_site_vpn_keys | default({}) }}"
vault_bgp_md5_passwords: "{{ vault_bgp_md5_passwords | default({}) }}"
detailed_logs: true
no_log: true
register: vpn_result
- name: Delete Site-to-Site VPN
graphiant.naas.graphiant_site_to_site_vpn:
operation: delete
site_to_site_vpn_config_file: "sample_site_to_site_vpn.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
- name: Create using state (pass vault dicts when creating)
graphiant.naas.graphiant_site_to_site_vpn:
state: present
site_to_site_vpn_config_file: "sample_site_to_site_vpn.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
vault_site_to_site_vpn_keys: "{{ vault_site_to_site_vpn_keys | default({}) }}"
vault_bgp_md5_passwords: "{{ vault_bgp_md5_passwords | default({}) }}"
no_log: true
- name: Delete using state
graphiant.naas.graphiant_site_to_site_vpn:
state: absent
site_to_site_vpn_config_file: "sample_site_to_site_vpn.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
changed логическое значение | Изменило ли действие состояние системы.
Возвращается: всегда Пример: |
msg строка | Сообщение о результате операции, включая подробные журналы, если включён параметр Возвращается: всегда Пример: |
operation строка | Выполненная операция. Одно из значений: Возвращается: всегда Пример: |
site_to_site_vpn_config_file строка | Файл конфигурации Site-to-Site VPN, использованный для операции. Возвращается: всегда Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/graphiant/naas/graphiant_site_to_site_vpn_module.html