cisco.ios.ios_lag_interfaces – Модуль ресурсов LAG-интерфейсов
Примечание
Этот плагин входит в коллекцию cisco.ios (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install cisco.ios.
Чтобы использовать его в плейбуке, укажите: cisco.ios.ios_lag_interfaces.
Новое в версии 1.0.0: модуля cisco.ios
Обзор
- Этот модуль управляет свойствами группы агрегированных каналов на устройствах Cisco IOS.
Примечание
У этого модуля есть соответствующий плагин действий.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| config список / элементы=словарь | Список конфигураций групп агрегированных каналов. | |||
| members список / элементы=словарь | Параметры интерфейсов для группы агрегированных каналов. | |||
| link целое число | Назначает идентификатор канала, используемый для балансировки нагрузки. Для допустимых значений обратитесь к документации производителя. ПРИМЕЧАНИЕ. Параметр поддерживается только на платформе Cisco IOS XE. | |||
| member строка | Член интерфейса группы агрегированных каналов. | |||
| mode строка / обязательный |
| Режим EtherChannel интерфейса для агрегирования каналов. Режим on должен быть указан как 'on', в противном случае pyyaml преобразует его в True до обработки Ansible. | ||
| name строка / обязательный | Идентификатор канала Ethernet интерфейсов. Для допустимых значений портов обратитесь к документации производителя. | |||
| running_config строка | Этот параметр используется только со состоянием parsed. Значение этого параметра должно соответствовать выводу устройства IOS с помощью команды show running-config | section ^interface. Состояние parsed считывает конфигурацию из параметра running_config и преобразует ее в структурированные данные Ansible в соответствии с argspec модуля ресурсов, а значение затем возвращается в ключе parsed в результате. | |||
| state строка |
| Состояние, в котором должна быть оставлена конфигурация Состояния rendered, gathered и parsed не производят никаких изменений на устройстве. Состояние rendered преобразует конфигурацию в config в команды CLI, специфичные для платформы, которые будут возвращены в ключе rendered в результате. Для состояния rendered не требуется активное подключение к удаленному хосту.Состояние gathered извлечёт рабочую конфигурацию с устройства и преобразует её в структурированные данные в формате, соответствующем argspec модуля ресурсов, а значение возвращается в ключе gathered в результате. Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в формат JSON в соответствии с параметрами модуля ресурсов, а значение возвращается в ключе parsed в результате. Значение параметра running_config должно соответствовать формату вывода команды show running-config | include ip route|ipv6 route, выполненной на устройстве. Для состояния parsed не требуется активное подключение к удаленному хосту. | ||
Примечания
Примечание
- Проверено на Cisco IOSv версии 15.2 на VIRL.
Примеры
# Using merged
#
# Before state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface GigabitEthernet0/1
# shutdown
# interface GigabitEthernet0/2
# shutdown
# interface GigabitEthernet0/3
# shutdown
# interface GigabitEthernet0/4
# shutdown
- name: Merge provided configuration with device configuration
cisco.ios.ios_lag_interfaces:
config:
- name: 10
members:
- member: GigabitEthernet0/1
mode: auto
- member: GigabitEthernet0/2
mode: auto
- name: 20
members:
- member: GigabitEthernet0/3
mode: on
- name: 30
members:
- member: GigabitEthernet0/4
mode: active
state: merged
# After state:
# ------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/2
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/3
# shutdown
# channel-group 20 mode on
# interface GigabitEthernet0/4
# shutdown
# channel-group 30 mode active
# Using overridden
#
# Before state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/2
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/3
# shutdown
# channel-group 20 mode on
# interface GigabitEthernet0/4
# shutdown
# channel-group 30 mode active
- name: Override device configuration of all interfaces with provided configuration
cisco.ios.ios_lag_interfaces:
config:
- name: 20
members:
- member: GigabitEthernet0/2
mode: auto
- member: GigabitEthernet0/3
mode: auto
state: overridden
# After state:
# ------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# interface GigabitEthernet0/2
# shutdown
# channel-group 20 mode auto
# interface GigabitEthernet0/3
# shutdown
# channel-group 20 mode auto
# interface GigabitEthernet0/4
# shutdown
# Using replaced
#
# Before state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/2
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/3
# shutdown
# channel-group 20 mode on
# interface GigabitEthernet0/4
# shutdown
# channel-group 30 mode active
- name: Replaces device configuration of listed interfaces with provided configuration
cisco.ios.ios_lag_interfaces:
config:
- name: 40
members:
- member: GigabitEthernet0/3
mode: auto
state: replaced
# After state:
# ------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface Port-channel40
# interface GigabitEthernet0/1
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/2
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/3
# shutdown
# channel-group 40 mode on
# interface GigabitEthernet0/4
# shutdown
# channel-group 30 mode active
# Using Deleted
#
# Before state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/2
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/3
# shutdown
# channel-group 20 mode on
# interface GigabitEthernet0/4
# shutdown
# channel-group 30 mode active
- name: "Delete LAG attributes of given interfaces (Note: This won't delete the interface itself)"
cisco.ios.ios_lag_interfaces:
config:
- name: 10
- name: 20
state: deleted
# After state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# interface GigabitEthernet0/2
# shutdown
# interface GigabitEthernet0/3
# shutdown
# interface GigabitEthernet0/4
# shutdown
# channel-group 30 mode active
# Using Deleted without any config passed
#"(NOTE: This will delete all of configured LLDP module attributes)"
#
# Before state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/2
# shutdown
# channel-group 10 mode auto
# interface GigabitEthernet0/3
# shutdown
# channel-group 20 mode on
# interface GigabitEthernet0/4
# shutdown
# channel-group 30 mode active
- name: "Delete all configured LAG attributes for interfaces (Note: This won't delete the interface itself)"
cisco.ios.ios_lag_interfaces:
state: deleted
# After state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel10
# interface Port-channel20
# interface Port-channel30
# interface GigabitEthernet0/1
# shutdown
# interface GigabitEthernet0/2
# shutdown
# interface GigabitEthernet0/3
# shutdown
# interface GigabitEthernet0/4
# shutdown
# Using Gathered
# Before state:
# -------------
#
# vios#show running-config | section ^interface
# interface Port-channel11
# interface Port-channel22
# interface GigabitEthernet0/1
# shutdown
# channel-group 11 mode active
# interface GigabitEthernet0/2
# shutdown
# channel-group 22 mode active
- name: Gather listed LAG interfaces with provided configurations
cisco.ios.ios_lag_interfaces:
config:
state: gathered
# Module Execution Result:
# ------------------------
#
# "gathered": [
# {
# "members": [
# {
# "member": "GigabitEthernet0/1",
# "mode": "active"
# }
# ],
# "name": "Port-channel11"
# },
# {
# "members": [
# {
# "member": "GigabitEthernet0/2",
# "mode": "active"
# }
# ],
# "name": "Port-channel22"
# }
# ]
# After state:
# ------------
#
# vios#sh running-config | section ^interface
# interface Port-channel11
# interface Port-channel22
# interface GigabitEthernet0/1
# shutdown
# channel-group 11 mode active
# interface GigabitEthernet0/2
# shutdown
# channel-group 22 mode active
# Using Rendered
- name: Render the commands for provided configuration
cisco.ios.ios_lag_interfaces:
config:
- name: Port-channel11
members:
- member: GigabitEthernet0/1
mode: active
- name: Port-channel22
members:
- member: GigabitEthernet0/2
mode: passive
state: rendered
# Module Execution Result:
# ------------------------
#
# "rendered": [
# "interface GigabitEthernet0/1",
# "channel-group 11 mode active",
# "interface GigabitEthernet0/2",
# "channel-group 22 mode passive",
# ]
# Using Parsed
# File: parsed.cfg
# ----------------
#
# interface GigabitEthernet0/1
# channel-group 11 mode active
# interface GigabitEthernet0/2
# channel-group 22 mode passive
- name: Parse the commands for provided configuration
cisco.ios.ios_lag_interfaces:
running_config: "{{ lookup('file', 'parsed.cfg') }}"
state: parsed
# Module Execution Result:
# ------------------------
#
# "parsed": [
# {
# "members": [
# {
# "member": "GigabitEthernet0/1",
# "mode": "active"
# }
# ],
# "name": "Port-channel11"
# },
# {
# "members": [
# {
# "member": "GigabitEthernet0/2",
# "mode": "passive"
# }
# ],
# "name": "Port-channel22"
# }
# ]
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| after список / элементы=строка | при изменении | Конфигурация в виде структурированных данных после завершения модуля. Пример: Возвращаемая конфигурация всегда будет иметь тот же формат, что и параметры выше. |
| before список / элементы=строка | всегда | Конфигурация в виде структурированных данных перед вызовом модуля. Пример: Возвращаемая конфигурация всегда будет иметь тот же формат, что и параметры выше. |
| commands список / элементы=строка | всегда | Набор команд, переданных удаленному устройству Пример: ['interface GigabitEthernet0/1', 'channel-group 1 mode active'] |
Авторы
- Sumit Jaiswal (@justjais)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/cisco/ios/ios_lag_interfaces_module.html