arista.eos.eos_eapi – Управление и настройка eAPI Arista EOS.
Примечание
Этот плагин входит в коллекцию arista.eos (версия 1.2.0).
Для его установки используйте: ansible-galaxy collection install arista.eos.
Для использования в playbook укажите: arista.eos.eos_eapi.
Новое в версии 1.0.0: of arista.eos
Обзор
- Используется для включения или выключения доступа к eAPI и настройки порта и состояния серверов http, https, local_http и unix-socket.
- При включении доступа к eAPI по умолчанию включен HTTP на порту 80, HTTPS на порту 443, отключен local HTTP и сервер Unix-соккета. Используйте параметры ниже, чтобы переопределить конфигурацию по умолчанию.
- Требуется EOS v4.12 или выше.
Примечание
Данный модуль имеет соответствующий плагин действий.
Требования
Ниже перечислены требования, необходимые на хосте, выполняющем этот модуль.
- EOS v4.12 или выше
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| config строка | По умолчанию модуль подключится к удалённому устройству и получит текущую конфигурацию, чтобы использовать её в качестве базы для сравнения с содержимым источника. В некоторых случаях нежелательно получать текущую рабочую конфигурацию для каждой задачи в плейбуке. Аргумент config позволяет реализатору передать конфигурацию для использования в качестве базовой конфигурации сравнения. | ||
| http булево |
| Аргумент http управляет состоянием протокола HTTP-транспорта при наличии eAPI в рабочей конфигурации. При значении True протокол HTTP включен, а при значении False — выключен. По умолчанию, после первоначальной настройки eAPI, протокол HTTP выключен.Псевдонимы: enable_http | |
| http_port целое число | Настраивает HTTP-порт, который будет слушать подключения при включенном протоколе HTTP-транспорта. Этот аргумент принимает целые числа в диапазоне от 1 до 65535. | ||
| https булево |
| Аргумент https управляет состоянием протокола HTTPS-транспорта при наличии eAPI в рабочей конфигурации. При значении True протокол HTTPS включен, а при значении False — выключен. По умолчанию, после первоначальной настройки eAPI, протокол HTTPS включен.Псевдонимы: enable_https | |
| https_port целое число | Настраивает HTTP-порт, который будет слушать подключения при включенном протоколе HTTP-транспорта. Этот аргумент принимает целые числа в диапазоне от 1 до 65535. | ||
| local_http булево |
| Аргумент local_http управляет состоянием локального протокола HTTP-транспорта при наличии eAPI в рабочей конфигурации. При значении True протокол HTTP включён и ограничен подключениями только с localhost. При значении False локальный протокол HTTP выключен.Примечание: значение независимо от аргумента httpПсевдонимы: enable_local_http | |
| local_http_port целое число | Настраивает HTTP-порт, который будет слушать подключения при включенном протоколе HTTP-транспорта. Этот аргумент принимает целые числа в диапазоне от 1 до 65535. | ||
| provider словарь | Устарело Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli. Начиная с Ansible 2.6, рекомендуется использовать connection: httpapi для eAPI.Этот параметр будет удалён в версии после 2022-06-01. Для получения дополнительной информации, пожалуйста, обратитесь к руководству EOS Platform Options. Объект словаря, содержащий данные подключения. | ||
| auth_pass строка | Указывает пароль для входа в привилегированный режим на удалённом устройстве, если это необходимо. Если authorize равно false, этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTH_PASS. | ||
| authorize булево |
| Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| host строка | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта. | ||
| password строка | Указывает пароль для аутентификации подключения к удалённому устройству. Этот аргумент обычно используется для транспортов cli или eapi. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_PASSWORD. | ||
| port целое число | По умолчанию: 0 | Указывает порт, используемый при построении подключения к удалённому устройству. Это значение относится к транспорту cli или eapi. Значение порта будет установлено по умолчанию к общему порту соответствующего транспорта, если не указано в задаче (cli=22, http=80, https=443). | |
| ssh_keyfile путь | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспортов cli. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число | Устанавливает тайм-аут в секундах для связи с сетевым устройством при подключении или отправке команд. Если тайм-аут истекает до завершения операции, модуль выдаст ошибку. | ||
| transport строка |
| Настраивает транспортное соединение для подключения к удалённому устройству. | |
| use_proxy булево |
| Если no, переменные среды http_proxy и https_proxy будут проигнорированы. | |
| use_ssl булево |
| Настраивает transport на использование SSL, если значение равно yes, только когда transport=eapi. Если аргумент transport не равен eapi, это значение игнорируется. | |
| username строка | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации входа в CLI или аутентификации eAPI в зависимости от используемого транспорта. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| validate_certs булево |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на контролируемых вами сайтах с использованием самозаверяемых сертификатов. Если аргумент transport не равен eapi, это значение игнорируется. | |
| socket булево |
| Аргумент socket управляет состоянием сокета UNIX Domain Socket, используемого для получения запросов eAPI. При значении True UDS будет слушать запросы eAPI. При значении False UDS не будет доступен для обработки запросов. По умолчанию, после первоначальной настройки eAPI, UDS отключён.Псевдонимы: enable_socket | |
| state строка |
| Аргумент state управляет рабочим состоянием eAPI на удалённом устройстве. При значении started eAPI включён для получения запросов, а при значении stopped eAPI отключён и не будет получать запросы. | |
| timeout целое число | По умолчанию: 30 | Время (в секундах) ожидания отражения конфигурации eAPI в рабочей конфигурации. | |
| vrf строка | По умолчанию: "default" | Аргумент vrf настроит eAPI на прослушивание подключений в указанном VRF. По умолчанию eAPI-транспорты будут прослушивать подключения в глобальной таблице. Это значение требует, чтобы VRF уже был создан, иначе задача завершится ошибкой. | |
Примечания
Примечание
- Сведения об использовании CLI, eAPI и привилегированного режима см. в руководстве по параметрам платформы EOS
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве по сети Ansible
- Дополнительную информацию об использовании Ansible для управления устройствами Arista EOS см. на странице интеграции Arista.
Примеры
- name: Enable eAPI access with default configuration
arista.eos.eos_eapi:
state: started
- name: Enable eAPI with no HTTP, HTTPS at port 9443, local HTTP at port 80, and socket
enabled
arista.eos.eos_eapi:
state: started
http: false
https_port: 9443
local_http: yes
local_http_port: 80
socket: yes
- name: Shutdown eAPI access
arista.eos.eos_eapi:
state: stopped
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие — поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commands список / elements=строка | всегда | Список команд конфигурационного режима, которые необходимо отправить устройству Пример: ['management api http-commands', 'protocol http port 81', 'no protocol https'] |
| session_name строка | при изменении is True | Имя сеанса конфигурации EOS, используемое для загрузки конфигурации Пример: ansible_1479315771 |
| urls словарь | при запуске eAPI | Хеш URL-пунктов доступа eAPI, прослушиваемых по каждому интерфейсу Пример: {'Management1': ['http://172.26.10.1:80']} |
Авторы
- Peter Sprygada (@privateip)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/arista/eos/eos_eapi_module.html