ios_interface — Управление интерфейсами на устройствах Cisco IOS
Новое в версии 2.4.
Обзор
- Этот модуль обеспечивает декларативное управление интерфейсами на устройствах Cisco IOS.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| aggregate | Список определений интерфейсов. | ||
| auth_pass | По умолчанию: none | Устарело Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli и become: yes с become_pass. Для получения дополнительной информации, пожалуйста, ознакомьтесь с руководством IOS Platform Options. Указывает пароль для входа в привилегированный режим на удалённом устройстве. Если authorize равно false, этот аргумент не имеет эффекта. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | |
| authorize |
| Устарело Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli и become: yes. Для получения дополнительной информации, пожалуйста, ознакомьтесь с руководством IOS Platform Options. Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| delay | По умолчанию: 10 | Время в секундах ожидания проверки оперативного состояния на удалённом устройстве. Это ожидание применимо для аргумента оперативного состояния, где state имеет значения up/down, tx_rate и rx_rate. | |
| description | Описание интерфейса. | ||
| duplex |
| Состояние подключения интерфейса | |
| enabled | Состояние подключения интерфейса. | ||
| mtu | Максимальный размер передаваемого пакета. | ||
| name обязательно | Имя интерфейса. | ||
| neighbors | Проверка оперативного состояния заданного интерфейса name для соседей CDP/LLDP.Доступны следующие подопции. | ||
| host | Хост соседа CDP/LLDP для заданного интерфейса name. | ||
| port | Порт соседа CDP/LLDP, к которому подключён данный интерфейс name. | ||
| provider | По умолчанию: None | Устарело Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli. Для получения дополнительной информации, пожалуйста, ознакомьтесь с руководством IOS Platform Options. Объект словаря с деталями соединения. | |
| username | Устанавливает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| authorize |
| Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| auth_pass | По умолчанию: none | Указывает пароль для входа в привилегированный режим на удалённом устройстве. Если authorize равно false, этот аргумент не имеет эффекта. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | |
| host обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта. | ||
| timeout | По умолчанию: 10 | Устанавливает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут превышен до завершения операции, модуль вернёт ошибку. | |
| password | По умолчанию: None | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD. | |
| port | По умолчанию: 22 | Указывает порт для подключения к удалённому устройству. | |
| rx_rate | Скорость приёма в битах в секунду (бит/с). Только для проверки состояния. Поддерживает условные выражения, см. Условные выражения в сетевых модулях
| ||
| speed | Скорость подключения интерфейса. | ||
| state |
| Состояние конфигурации интерфейса. up означает присутствие и активность, а down означает присутствие и down
| |
| tx_rate | Скорость передачи в битах в секунду (бит/с). Только для проверки состояния. Поддерживает условные выражения, см. Условные выражения в сетевых модулях
| ||
Примечания
Примечание
- Тестировалось на IOS 15.6
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве Ansible Network Guide
- Дополнительную информацию об использовании Ansible для управления устройствами Cisco см. на странице интеграции Cisco.
Примеры
- name: configure interface
ios_interface:
name: GigabitEthernet0/2
description: test-interface
speed: 100
duplex: half
mtu: 512
- name: remove interface
ios_interface:
name: Loopback9
state: absent
- name: make interface up
ios_interface:
name: GigabitEthernet0/2
enabled: True
- name: make interface down
ios_interface:
name: GigabitEthernet0/2
enabled: False
- name: Check intent arguments
ios_interface:
name: GigabitEthernet0/2
state: up
tx_rate: ge(0)
rx_rate: le(0)
- name: Check neighbors intent arguments
ios_interface:
name: Gi0/0
neighbors:
- port: eth0
host: netdev
- name: Config + intent
ios_interface:
name: GigabitEthernet0/2
enabled: False
state: down
- name: Add interface using aggregate
ios_interface:
aggregate:
- { name: GigabitEthernet0/1, mtu: 256, description: test-interface-1 }
- { name: GigabitEthernet0/2, mtu: 516, description: test-interface-2 }
duplex: full
speed: 100
state: present
- name: Delete interface using aggregate
ios_interface:
aggregate:
- name: Loopback9
- name: Loopback10
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commands список | всегда, за исключением платформ, использующих транспорт Netconf для управления устройством. | Список команд конфигурации для отправки на устройство. Пример: ['interface GigabitEthernet0/2', 'description test-interface', 'duplex half', 'mtu 512'] |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется как обратная совместимость.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией 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.5/modules/ios_interface_module.html