ios_interface - Управление интерфейсом на устройствах Cisco IOS
Новая версия с 2.4.
Обзор
- Этот модуль предоставляет декларативное управление интерфейсами на устройствах Cisco IOS.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| aggregate | Список определений интерфейсов. | ||
| auth_pass | Устаревший Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli и become: yes с become_pass. Дополнительную информацию см. в руководстве IOS Platform Options. Указывает пароль для входа в привилегированный режим на удалённом устройстве. Если authorize имеет значение false, этот аргумент не используется. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| authorize bool |
| Устаревший Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli и become: yes. Дополнительную информацию см. в руководстве IOS Platform Options. Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| delay | По умолчанию: 10 | Время в секундах ожидания проверки операционного состояния на удалённом устройстве. Это ожидание применимо к аргументу операционного состояния, значениями которого являются up/down, tx_rate и rx_rate. | |
| description | Описание интерфейса. | ||
| duplex |
| Состояние соединения интерфейса | |
| enabled | Состояние соединения интерфейса. | ||
| mtu | Максимальный размер передаваемого пакета. | ||
| name обязательно | Имя интерфейса. | ||
| neighbors | Проверка операционного состояния заданного интерфейса name для соседей CDP/LLDP.Доступны следующие подопции. | ||
| host | Хост соседа CDP/LLDP для заданного интерфейса name. | ||
| port | Порт соседа CDP/LLDP, к которому подключен заданный интерфейс name. | ||
| provider | Устаревший Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli. Дополнительную информацию см. в руководстве IOS Platform Options. Объект словаря, содержащий сведения о подключении. | ||
| host обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта. | ||
| port | По умолчанию: 22 | Указывает порт, используемый при установлении соединения с удалённым устройством. | |
| username | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| password | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| timeout | По умолчанию: 10 | Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль вернёт ошибку. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение - путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| authorize bool |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| auth_pass | Указывает пароль для входа в привилегированный режим на удалённом устройстве. Если authorize имеет значение false, этот аргумент не используется. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| rx_rate | Скорость приёма в битах в секунду (бит/с). Этот параметр используется только для проверки состояния. Поддерживает условные выражения, см. Условные выражения в сетевых модулях | ||
| speed | Скорость интерфейса. | ||
| state |
| Состояние конфигурации интерфейса, up означает присутствующий и операционно включённый, а down означает присутствующий и операционно down. | |
| tx_rate | Скорость передачи в битах в секунду (бит/с). Этот параметр используется только для проверки состояния. Поддерживает условные выражения, см. Условные выражения в сетевых модулях | ||
Примечания
Примечание
- Тестировалось с IOS 15.6
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в Руководстве по сети Ansible
- Дополнительную информацию об использовании 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'] |
Статус
Этот модуль помечен как предварительная версия, что означает, что его интерфейс не гарантированно будет обратной совместимостью.
Техническое обслуживание
Этот модуль помечен как сетевой, что означает, что он поддерживается командой Ansible Network. См. Поддержка и техническое обслуживание модулей для получения дополнительной информации.
Список других модулей, также поддерживаемых командой Ansible Network, см. здесь.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией 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/ios_interface_module.html