eos_eapi – Управление и настройка Arista EOS eAPI
Новая версия 2.1.
Описание
- Используется для включения или отключения доступа к 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 - добавлено в 2.2 | По умолчанию модуль подключается к удалённому устройству и получает текущую конфигурацию для сравнения с содержимым источника. В некоторых случаях нежелательно получать текущую конфигурацию для каждой задачи в плейбуке. Параметр 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-протокол включён и ограничен подключениями только с localhost. При значении False - выключен.Обратите внимание, что параметр независим от 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 целое число | По умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут истекает до завершения операции, модуль выдаст ошибку. | |
| 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-соккета домена, используемого для получения запросов eAPI. Когда значение этого аргумента установлено в True, UDS будет прослушивать запросы eAPI. Когда значение установлено в False, UDS не будет доступен для обработки запросов. По умолчанию, когда eAPI первоначально настроен, UDS отключен.Псевдонимы: enable_socket | |
| state - |
| Аргумент state управляет операционным состоянием eAPI на удалённом устройстве. Когда этот аргумент установлен в started, eAPI включён для получения запросов, а когда этот аргумент установлен в stopped, eAPI отключён и не будет получать запросы. | |
| vrf - добавлено в 2.2 | По умолчанию: "по умолчанию" | Аргумент vrf настраивает eAPI на прослушивание подключений в указанном VRF. По умолчанию, транспортные средства eAPI будут прослушивать подключения в глобальной таблице. Это значение требует, чтобы VRF уже был создан, иначе задача завершится неудачно. | |
Примечания
Примечание
- Дополнительную информацию об использовании CLI, eAPI и привилегированного режима см. в руководстве EOS Platform Options
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide
- Дополнительную информацию об использовании Ansible для управления устройствами Arista EOS см. на странице интеграции Arista Arista integration.
Примеры
- 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 строка | когда changed равно True | Имя сеанса конфигурации EOS, используемого для загрузки конфигурации Пример: ansible_1479315771 |
| urls словарь | когда eAPI запущен | Хэш URL-адресов конечных точек, на которых eAPI прослушивает по каждому интерфейсу Пример: {'Management1': ['http://172.26.10.1:80']} |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается командой Ansible Network. [сеть]
Поддержка 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.8/modules/eos_eapi_module.html