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 ложно, этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTH_PASS. | |
| authorize |
| Устаревший Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli и become: yes.Этот параметр требуется только при использовании eAPI. Дополнительную информацию см. в руководстве EOS Platform Options. Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в обычном режиме. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| config (добавлен в 2.2) | По умолчанию: nul | По умолчанию модуль подключается к удалённому устройству и получает текущую конфигурацию, чтобы использовать её как основу для сравнения с содержимым источника. Иногда нежелательно получать текущую рабочую конфигурацию для каждой задачи в плейбуке. Аргумент 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-протокол выключен.Обратите внимание, что значение независимо от аргумента http.псевдонимы: enable_local_http | |
| local_http_port | По умолчанию: 8080 | Настраивает порт HTTP, который будет прослушивать подключения при включённом HTTP-протоколе транспорта. Этот аргумент принимает целые значения в диапазоне от 1 до 65535. | |
| provider | По умолчанию: None | Устаревший Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli.Этот параметр требуется только при использовании eAPI. Дополнительную информацию см. в руководстве EOS Platform Options. Объект словаря с данными подключения. | |
| username | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации входа в CLI или аутентификации eAPI в зависимости от используемого транспорта. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| authorize |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в обычном режиме. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспортов cli. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| use_proxy (добавлен в 2.5) |
| Если no, переменные среды http_proxy и https_proxy будут проигнорированы. | |
| auth_pass | По умолчанию: нет | Указывает пароль для входа в привилегированный режим на удалённом устройстве. Если authorize ложно, этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTH_PASS. | |
| host обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение хоста используется как адрес назначения для транспорта. | ||
| timeout | По умолчанию: 10 | Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль выдаст ошибку. | |
| use_ssl |
| Настраивает transport на использование SSL, если установлено значение true только когда transport=eapi. Если аргумент transport не eapi, это значение игнорируется. | |
| password | По умолчанию: None | Указывает пароль для аутентификации подключения к удалённому устройству. Это общий аргумент, используемый для транспортов cli или eapi. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_PASSWORD. | |
| validate_certs |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на контролируемых сайтах с самозаверяющимися сертификатами. Если аргумент transport не eapi, это значение игнорируется. | |
| port | По умолчанию: 0 (используется стандартный порт) | Указывает порт для подключения к удалённому устройству. Это значение применимо к cli или eapi. Значение порта по умолчанию устанавливается на соответствующий стандартный порт транспорта, если он не указан в задаче (cli=22, http=80, https=443). | |
| transport обязательно |
| Настраивает транспортное соединение для подключения к удалённому устройству. | |
| socket |
| Аргумент socket управляет состоянием UNIX Domain Socket, используемого для получения запросов 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 уже был создан, иначе задача завершится с ошибкой. | |
Примечания
Примечание
- Дополнительную информацию об использовании командной строки, eAPI и режима с привилегиями см. в руководстве EOS Platform Options.
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide.
- Дополнительную информацию об использовании 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 строка | если changed = True | Имя сеанса конфигурации EOS, используемого для загрузки конфигурации Пример: ansible_1479315771 |
| urls словарь | при запуске eAPI | Хэш URL-адресов конечных точек, на которых eAPI прослушивает подключения по интерфейсу Пример: {'Management1': ['http://172.26.10.1:80']} |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантированно будет совместим со старыми версиями.
Поддержка
Дополнительную информацию о поддержке данного модуля компанией 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.5/modules/eos_eapi_module.html