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 bool |
| Устаревшее Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli и become: yes. Этот параметр необходим только если вы используете eAPI. Для получения дополнительной информации, обратитесь к руководству EOS Platform Options. Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| config (добавлен в 2.2) | По умолчанию модуль подключается к удалённому устройству и получает текущую конфигурацию для сравнения с содержимым источника. Иногда необходимо, чтобы задача не получала текущую рабочую конфигурацию для каждой задачи в плейбуке. Параметр config позволяет разработчику передать конфигурацию, используемую в качестве базовой для сравнения. | ||
| http bool |
| Аргумент http управляет состоянием протокола HTTP-транспорта, когда eAPI присутствует в рабочей конфигурации. При значении True HTTP-протокол включён, при значении False — выключен. По умолчанию, когда eAPI впервые настроен, HTTP-протокол выключен.псевдонимы: enable_http | |
| http_port | Значение по умолчанию: 80 | Настраивает HTTP-порт, который будет принимать соединения при включенном HTTP-транспорте. Этот аргумент принимает целые значения в диапазоне от 1 до 65535. | |
| https bool |
| Аргумент https управляет состоянием протокола HTTPS-транспорта, когда eAPI присутствует в рабочей конфигурации. При значении True HTTPS-протокол включён, при значении False — выключен. По умолчанию, когда eAPI впервые настроен, HTTPS-протокол включён.псевдонимы: enable_https | |
| https_port | Значение по умолчанию: 443 | Настраивает порт HTTP, который будет принимать соединения при включенном протоколе HTTP-транспорта. Этот аргумент принимает целые значения в диапазоне от 1 до 65535. | |
| local_http bool |
| Аргумент 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. Объект словаря, содержащий детали подключения. | ||
| host обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта. | ||
| port | Значение по умолчанию: "0 (использовать стандартный порт)" | Указывает порт для подключения к удалённому устройству. Это значение относится к cli или eapi. Значение порта будет по умолчанию соответствовать стандартному порту транспорта, если не указано в задаче. (cli=22, http=80, https=443). | |
| username | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации входа в CLI или аутентификации eAPI в зависимости от используемого транспорта. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| password | Указывает пароль для аутентификации подключения к удалённому устройству. Это общий аргумент, используемый для транспортов cli или eapi. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| timeout | Значение по умолчанию: 10 | Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль выдаст ошибку. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспортов cli. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| authorize bool |
| Указывает модулю войти в привилегированный режим на удаленном устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| auth_pass | Указывает пароль для входа в привилегированный режим на удалённом устройстве. Если authorize равно false, этот аргумент не работает. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| transport обязательно |
| Настраивает транспортное соединение для подключения к удалённому устройству. | |
| use_ssl bool |
| Настраивает transport на использование SSL, если значение true, только когда transport=eapi. Если параметр transport не eapi, это значение игнорируется. | |
| validate_certs bool |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на контролируемых вами сайтах с самозаверяющимися сертификатами. Если параметр transport не eapi, это значение игнорируется. | |
| use_proxy (добавлен в 2.5) bool |
| Если no, переменные окружения http_proxy и https_proxy будут проигнорированы. | |
| socket bool |
| Аргумент socket управляет состоянием сокета доменной области Unix, используемого для получения запросов eAPI. При значении True UDS будет принимать запросы eAPI. При значении False UDS не будет доступен для обработки запросов. По умолчанию, когда eAPI впервые настроен, UDS отключён.псевдонимы: enable_socket | |
| state |
| Аргумент state управляет рабочим состоянием eAPI на удалённом устройстве. Когда этот аргумент равен started, eAPI включён для получения запросов. Когда этот аргумент равен stopped, eAPI выключен и не будет принимать запросы. | |
| vrf (добавлено в 2.2) | Значение по умолчанию: "default" | Аргумент vrf настраивает eAPI для прослушивания подключений в указанном VRF. По умолчанию, транспорты eAPI прослушивают подключения в глобальной таблице. Это значение требует, чтобы VRF был уже создан, иначе задача завершится ошибкой. | |
Примечания
Примечание
- Для получения информации об использовании CLI, eAPI и привилегированного режима см. Руководство по параметрам платформы EOS
- Для получения дополнительной информации об использовании Ansible для управления сетевыми устройствами см. Руководство по сети Ansible
- Для получения дополнительной информации об использовании Ansible для управления устройствами Arista EOS см. страницу интеграции Arista здесь.
Примеры
- 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 по работе с сетями. Более подробную информацию см. в разделе Техническое обслуживание и поддержка модулей.
Список других модулей, которые также поддерживаются командой Ansible по работе с сетями, см. здесь.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией Red Hat см. в этой статье базы знаний здесь
Автор
- 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.6/modules/eos_eapi_module.html