eos_eapi – Управление и настройка Arista EOS eAPI
Краткое описание
- Используется для включения или отключения доступа к eAPI и настройки порта и состояния серверов http, https, local_http и unix-socket.
- При включении доступа к eAPI по умолчанию включен HTTP на порту 80, включен HTTPS на порту 443, выключен локальный HTTP и выключен сервер Unix-сокет. Используйте перечисленные ниже параметры для изменения конфигурации по умолчанию.
- Требуется EOS v4.12 или более поздняя версия.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- EOS v4.12 или более поздняя версия
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| auth_pass строка | Устаревший Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli и become: yes с become_pass. Этот параметр необходим только при использовании eAPI. Дополнительную информацию можно найти в руководстве EOS Platform Options. Указывает пароль, необходимый для входа в привилегированный режим на удаленном устройстве. Если authorize имеет значение false, этот параметр не используется. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_AUTH_PASS. | ||
| authorize логическое |
| Устаревший Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli и become: yes. Этот параметр необходим только при использовании eAPI. Дополнительную информацию можно найти в руководстве EOS Platform Options. Инструктирует модуль войти в привилегированный режим на удаленном устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| config - | По умолчанию модуль подключается к удаленному устройству и извлекает текущую конфигурацию для использования в качестве базы сравнения с содержимым источника. Иногда нежелательно получать текущую рабочую конфигурацию для каждой задачи в плейбуке. Параметр config позволяет разработчику указать конфигурацию для использования в качестве базовой конфигурации для сравнения. | ||
| http логическое |
| Параметр http управляет режимом работы протокола HTTP-транспорта, когда в рабочей конфигурации присутствует eAPI. При значении True протокол HTTP включен, а при значении False — выключен. По умолчанию, когда eAPI впервые настроен, протокол HTTP выключен.псевдонимы: enable_http | |
| http_port - | Значение по умолчанию: 80 | Настраивает порт HTTP, который будет прослушивать подключения при включенном протоколе HTTP-транспорта. Этот параметр принимает целые значения в диапазоне от 1 до 65535. | |
| https логическое |
| Параметр https управляет режимом работы протокола HTTPS-транспорта, когда в рабочей конфигурации присутствует eAPI. При значении True протокол HTTPS включен, а при значении False — выключен. По умолчанию, когда eAPI впервые настроен, протокол HTTPS включен.псевдонимы: enable_https | |
| https_port - | Значение по умолчанию: 443 | Настраивает порт HTTP, который будет прослушивать подключения при включенном протоколе HTTP-транспорта. Этот параметр принимает целые значения в диапазоне от 1 до 65535. | |
| local_http логическое |
| Параметр local_http управляет режимом работы локального протокола HTTP-транспорта, когда в рабочей конфигурации присутствует eAPI. При значении True протокол HTTP включен и ограничен подключениями только из локальной сети. При значении False протокол HTTP локальной сети выключен.Обратите внимание, что значение независимо от параметра httpпсевдонимы: enable_local_http | |
| local_http_port - | Значение по умолчанию: 8080 | Настраивает порт HTTP, который будет прослушивать подключения при включенном протоколе HTTP-транспорта. Этот параметр принимает целые значения в диапазоне от 1 до 65535. | |
| provider словарь | Устаревший Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli. Этот параметр необходим только при использовании eAPI. Дополнительную информацию можно найти в руководстве 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 логическое добавлено в 2.5 |
| Если no, переменные среды http_proxy и https_proxy будут проигнорированы. | |
| use_ssl логическое |
| Настраивает transport на использование SSL, если установлено значение yes, только когда transport=eapi. Если параметр transport не равен eapi, это значение игнорируется. | |
| username строка | Настраивает имя пользователя для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации входа CLI или аутентификации eAPI в зависимости от используемого транспорта. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| validate_certs boolean |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на сайтах, контролируемых лично, с использованием самозаверяющих сертификатов. Если аргумент transport не eapi, это значение игнорируется. | |
| socket boolean |
| Аргумент socket управляет рабочим состоянием сокета UNIX Domain Socket, используемого для получения запросов eAPI. Когда значение этого аргумента установлено в True, UDS будет прослушивать запросы eAPI. Когда значение установлено в False, UDS не будет доступен для обработки запросов. По умолчанию, при первой конфигурации eAPI, UDS отключён.псевдонимы: enable_socket | |
| state - |
| Аргумент state управляет рабочим состоянием eAPI на удалённом устройстве. Когда этот аргумент установлен в started, eAPI включён для получения запросов, и когда этот аргумент stopped, eAPI отключён и не будет получать запросы. | |
| vrf - | По умолчанию: "default" | Аргумент vrf настраивает eAPI для прослушивания подключений в указанном VRF. По умолчанию, транспортные средства eAPI будут прослушивать подключения в глобальной таблице. Это значение требует, чтобы VRF был уже создан, иначе задача завершится ошибкой. | |
Примечания
Примечание
- Сведения об использовании командной строки, eAPI и привилегированного режима см. в руководстве EOS Platform Options
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide
- Дополнительную информацию об использовании Ansible для управления устройствами Arista EOS см. на странице интеграции Arista Arista integration page.
Примеры
- name: Enable eAPI access with default configuration
eos_eapi:
state: started
- name: Enable eAPI with no HTTP, HTTPS at port 9443, local HTTP at port 80, and socket enabled
eos_eapi:
state: started
http: false
https_port: 9443
local_http: yes
local_http_port: 80
socket: yes
- name: Shutdown eAPI access
eos_eapi:
state: stopped
Возвращаемые значения
Общие возвращаемые значения описаны в документации, а ниже приведены поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commands список | всегда | Список команд конфигурации в режиме конфигурации для отправки на устройство Пример: ['management api http-commands', 'protocol http port 81', 'no protocol https'] |
| session_name строка | при изменении значение равно True | Имя сеанса конфигурации EOS, используемое для загрузки конфигурации Пример: ansible_1479315771 |
| urls словарь | при запуске eAPI | Хэш URL-адресов конечных точек, на которых прослушивает eAPI по интерфейсу Пример: {'Management1': ['http://172.26.10.1:80']} |
Состояние
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается Ansible Network Team. [сеть]
Поддержка Red Hat
Дополнительную информацию о поддержке этого модуля Red Hat можно найти в этой статье из базы знаний Red Hat Red Hat Knowledge Base article.
Авторы
- 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.9/modules/eos_eapi_module.html