eos_interface — Управление интерфейсами на устройствах Arista EOS
Новая версия с 2.5.
Обзор
- Этот модуль предоставляет декларативное управление интерфейсами на устройствах Arista EOS.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| aggregate | Список определений интерфейсов. Каждая запись в списке aggregate должна определять имя интерфейса name и другие необходимые параметры. | ||
| 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. | |
| delay | По умолчанию: 10 | Время в секундах, которое нужно подождать, прежде чем проверять рабочее состояние на удаленном устройстве. Это ожидание применимо к аргументу операционного состояния, который имеет значение up/down, tx_rate и rx_rate. | |
| description | Описание интерфейса до 240 символов. | ||
| enabled | По умолчанию: "да" | Состояние связи интерфейса. Если значение равно True, состояние интерфейса будет включено, в противном случае, если значение равно False, интерфейс будет в отключенном (выключенном) состоянии. | |
| mtu | Устанавливает максимальный размер единицы передачи (MTU) в байтах для передаваемого пакета интерфейса, указанного в параметре name. | ||
| name обязательно | Имя интерфейса, которое нужно настроить на удаленном устройстве. Имя интерфейса должно быть в полном формате, а не сокращенным. | ||
| neighbors | Проверить рабочее состояние указанного интерфейса name для соседа LLDP.Доступны следующие подпараметры. | ||
| host | Хост соседа LLDP для данного интерфейса name. | ||
| port | Порт соседа LLDP, к которому подключен данный интерфейс name. | ||
| 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 bool (добавлено в 2.5) |
| Если no, переменные среды http_proxy и https_proxy будут проигнорированы. | |
| rx_rate | Скорость приёма в битах в секунду (бит/с) для интерфейса, указанного в параметре name.Этот параметр используется только для проверки состояния. Поддерживает условные выражения, см. Условные выражения в сетевых модулях
| ||
| speed | Этот параметр настраивает autoneg и скорость/дуплекс/flowcontrol для интерфейса, указанного в параметре name. | ||
| state |
| Состояние конфигурации интерфейса, up означает наличие и рабочее состояние up, а down означает наличие и рабочее состояние down. | |
| tx_rate | Скорость передачи в битах в секунду (бит/с) для интерфейса, указанного в параметре name.Этот параметр используется только для проверки состояния. Поддерживает условные выражения, см. Условные выражения в сетевых модулях
| ||
Примечания
Примечание
- Тестировалось с EOS 4.15
- Для получения информации об использовании CLI, eAPI и привилегированного режима см. Руководство по параметрам платформы EOS
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в Руководстве по сети Ansible
- Дополнительную информацию об использовании Ansible для управления устройствами Arista EOS см. на странице интеграции Arista.
Примеры
- name: configure interface
eos_interface:
name: ethernet1
description: test-interface
speed: 100full
mtu: 512
- name: remove interface
eos_interface:
name: ethernet1
state: absent
- name: make interface up
eos_interface:
name: ethernet1
enabled: True
- name: make interface down
eos_interface:
name: ethernet1
enabled: False
- name: Check intent arguments
eos_interface:
name: ethernet1
state: up
tx_rate: ge(0)
rx_rate: le(0)
- name: Check neighbors intent arguments
eos_interface:
name: ethernet1
neighbors:
- port: eth0
host: netdev
- name: Configure interface in disabled state and check if the operational state is disabled or not
eos_interface:
name: ethernet1
enabled: False
state: down
- name: Add interface using aggregate
eos_interface:
aggregate:
- { name: ethernet1, mtu: 256, description: test-interface-1 }
- { name: ethernet2, mtu: 516, description: test-interface-2 }
speed: 100full
state: present
- name: Delete interface using aggregate
eos_interface:
aggregate:
- name: loopback9
- name: loopback10
state: absent
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commands список | всегда, за исключением платформ, использующих транспорт Netconf для управления устройством. | Список команд режима конфигурации, которые необходимо отправить устройству. Пример: ['interface ethernet1', 'description test-interface', 'speed 100full', 'mtu 512'] |
Статус
Этот модуль помечен как предварительный просмотр, что означает, что его интерфейс не гарантируется обратной совместимостью.
Техническое обслуживание
Этот модуль помечен как сетевой, что означает, что он поддерживается командой Ansible по работе с сетью. Дополнительную информацию см. в Документации по поддержке и обслуживанию модулей.
Список других модулей, которые также поддерживаются командой Ansible по работе с сетью, см. здесь.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией Red Hat см. в этой статье базы знаний
Автор
- Ganesh Nalawade (@ganeshrn)
Подсказка
Если вы обнаружите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 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_interface_module.html