модуль graphiant.naas.graphiant_interfaces — управление интерфейсами и каналами Graphiant
Примечание
Этот модуль входит в коллекцию graphiant.naas (версия 26.4.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install graphiant.naas. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: graphiant.naas.graphiant_interfaces.
Добавлено в graphiant.naas 25.11.0
Краткое описание
- Этот модуль предоставляет широкие возможности для управления интерфейсами и каналами на устройствах Graphiant Edge.
- Поддерживает настройку и отмену настройки интерфейсов LAN для субинтерфейсов.
- Позволяет управлять интерфейсами WAN и каналами, включая статические маршруты.
- Поддерживает операции только с каналами, позволяя обновлять статические маршруты без повторной настройки интерфейсов.
- Для единообразного развертывания конфигурации во всех операциях используются шаблоны Jinja2.
- Файлы конфигурации поддерживают шаблоны Jinja2 для динамической генерации.
Требования
На хосте, где выполняется этот модуль, должны быть установлены перечисленные ниже компоненты.
- python >= 3.7
- graphiant-sdk >= 26.4.0
Параметры
Параметр | Комментарии |
|---|---|
access_token string | Bearer-токен для аутентификации API (например, полученный с помощью Если аргумент модуля не задан, коллекция считывает Если bearer-токен задан (в аргументе модуля или в переменной окружения), он имеет приоритет над Если действительный токен недоступен, модуль выполняет аутентификацию с помощью |
circuit_config_file string | Путь к YAML-файлу конфигурации каналов. Обязателен для операций WAN и операций с каналами ( Необязателен для операций только с LAN. Можно указать абсолютный или относительный путь. Относительные пути разрешаются относительно настроенного config_path. Файлы конфигурации поддерживают синтаксис шаблонов Jinja2 для динамической генерации. Файл должен содержать определения каналов со статическими маршрутами и конфигурациями каналов. |
circuits_only boolean | Если Поддерживается для Если задано Варианты:
|
detailed_logs boolean | Включить подробное ведение журналов для устранения неполадок и мониторинга. Если параметр включен, в журнал записываются подробные сведения обо всех операциях с интерфейсами. Журналы собираются и включаются в result_msg для отображения с помощью модуля ansible.builtin.debug. Варианты:
|
host псевдонимы: base_url string / обязательный | URL хоста портала Graphiant для подключения к API. Пример: “https://api.graphiant.com” |
interface_config_file string / обязательный | Путь к YAML-файлу конфигурации интерфейсов. Обязателен для всех операций. Можно указать абсолютный или относительный путь. Относительные пути разрешаются относительно настроенного config_path. Файлы конфигурации поддерживают синтаксис шаблонов Jinja2 для динамической генерации. Файл должен содержать определения интерфейсов с именами устройств, именами интерфейсов и конфигурациями субинтерфейсов. |
operation string | Операция с интерфейсами, которую необходимо выполнить.
Варианты:
|
password string | Пароль портала Graphiant для аутентификации. Обязателен для входа по паролю, если действительный bearer-токен недоступен из |
state string | |
username string | Имя пользователя портала Graphiant для аутентификации. Обязательно для входа по паролю, если действительный bearer-токен недоступен из |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная При запуске с | Поддерживает режим проверки. В режиме проверки конфигурация не отправляется на устройства, но данные, которые были бы отправлены, записываются в журнал с |
Примечания
Примечание
- Операции с интерфейсами:
- - Интерфейсы LAN: настройка и отмена настройки субинтерфейсов для подключения LAN.
- - Интерфейсы WAN: совместная настройка и отмена настройки каналов и интерфейсов WAN.
- - Только каналы: обновление конфигураций каналов, включая статические маршруты, без изменения интерфейсов.
- Файлы конфигурации поддерживают синтаксис шаблонов Jinja2 для динамического формирования конфигурации.
- Модуль автоматически преобразует имена устройств в идентификаторы и проверяет конфигурации.
- Операции отмены настройки идемпотентны и безопасны при многократном выполнении.
- Операции настройки всегда отправляют требуемую конфигурацию (они могут сообщить об изменении, даже если устройство уже настроено).
- Режим проверки (
--check): конфигурация не отправляется; данные, которые были бы отправлены, записываются в журнал с[check_mode]. - Перенос в сегмент LAN: при переносе интерфейса или субинтерфейса в другой сегмент LAN API требует двухэтапной отправки (сначала только сегмент, затем полная конфигурация). Модуль выполняет это автоматически; в режиме проверки отображаются оба набора данных.
- Очистка статических маршрутов WAN (важно):
- - Отключение интерфейса WAN от канала серверная часть может обрабатывать как удаление канала.
- Если в этом канале еще есть статические маршруты, операция может завершиться ошибкой:
- ‘ошибка при удалении канала «<name>». Сначала удалите статические маршруты.’
deconfigure_wan_circuits_interfacesиdeconfigure_interfacesавтоматически сначала удаляют статические маршруты (если указан файл конфигурации каналов).- - Используйте
deconfigure_circuits, если нужно удалить только статические маршруты, сохранив подключение интерфейсов и каналов.
См. также
См. также
- graphiant.naas.graphiant_global_config
-
Настройка глобальных объектов (сегментов LAN, профилей VPN), на которые могут ссылаться конфигурации интерфейсов.
- graphiant.naas.graphiant_bgp
-
Настройка BGP-пиринга после настройки интерфейсов
Примеры
- name: Configure all interfaces (LAN and WAN)
graphiant.naas.graphiant_interfaces:
operation: configure_interfaces
interface_config_file: "sample_interface_config.yaml"
circuit_config_file: "sample_circuit_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
detailed_logs: true
register: configure_result
- name: Configure LAN interfaces only
graphiant.naas.graphiant_interfaces:
operation: configure_lan_interfaces
interface_config_file: "sample_interface_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
detailed_logs: true
- name: Configure WAN circuits and interfaces
graphiant.naas.graphiant_interfaces:
operation: configure_wan_circuits_interfaces
interface_config_file: "sample_interface_config.yaml"
circuit_config_file: "sample_circuit_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
detailed_logs: true
- name: Configure circuits only (update static routes)
graphiant.naas.graphiant_interfaces:
operation: configure_circuits
interface_config_file: "sample_interface_config.yaml"
circuit_config_file: "sample_circuit_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
detailed_logs: true
- name: Deconfigure circuits (remove static routes)
graphiant.naas.graphiant_interfaces:
operation: deconfigure_circuits
interface_config_file: "sample_interface_config.yaml"
circuit_config_file: "sample_circuit_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
- name: Deconfigure WAN circuits and interfaces
graphiant.naas.graphiant_interfaces:
operation: deconfigure_wan_circuits_interfaces
interface_config_file: "sample_interface_config.yaml"
circuit_config_file: "sample_circuit_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
- name: Deconfigure all interfaces
graphiant.naas.graphiant_interfaces:
operation: deconfigure_interfaces
interface_config_file: "sample_interface_config.yaml"
circuit_config_file: "sample_circuit_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
- name: Deconfigure interfaces using state parameter
graphiant.naas.graphiant_interfaces:
state: absent
interface_config_file: "sample_interface_config.yaml"
circuit_config_file: "sample_circuit_config.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
changed boolean | Были ли внесены изменения в систему в результате операции. Операции настройки обычно возвращают Операции отмены настройки могут возвращать Возвращается: всегда Пример: |
circuit_config_file string | Файл конфигурации каналов, использованный для операции. Возвращается только в том случае, если был указан circuit_config_file. Возвращается: если применимо Пример: |
circuits_only boolean | Затронула ли операция только каналы. Возвращается: всегда Пример: |
interface_config_file string | Файл конфигурации интерфейсов, использованный для операции. Возвращается: всегда Пример: |
msg string | Сообщение о результатах операции, включая подробные журналы, если включен параметр Возвращается: всегда Пример: |
operation string | Выполненная операция. Одно из значений: Возвращается: всегда Пример: |
Ссылки на коллекцию
© 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_interfaces_module.html