Spec-Zone.ru › Ansible

Модуль cisco.ios.ios_lag_interfaces – Модуль ресурса для настройки интерфейсов LAG.

Примечание

Этот модуль является частью коллекции cisco.ios (версия 8.0.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install cisco.ios.

Чтобы использовать её в playbook, укажите: cisco.ios.ios_lag_interfaces.

Новое в cisco.ios 1.0.0

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Описание

  • Этот модуль управляет свойствами групп агрегирования каналов (LAG) на устройствах Cisco IOS.

Псевдонимы: lag_interfaces

Параметры

Параметр

Комментарии

config

список / элементы=словарь

Список конфигураций групп агрегирования каналов.

members

список / элементы=словарь

Параметры интерфейсов для группы агрегирования каналов.

link

целое число

Назначение идентификатора канала, используемого для балансировки нагрузки.

Обратитесь к документации производителя для допустимых значений.

ПРИМЕЧАНИЕ: параметр поддерживается только на платформе Cisco IOS XE.

member

строка

Член интерфейса группы агрегирования каналов.

mode

строка

Режим EtherChannel интерфейса для агрегирования каналов.

Режим «on» необходимо указывать в кавычках («on»), иначе pyyaml преобразует его в True до попадания в Ansible.

Варианты:

  • "auto"
  • "on"
  • "desirable"
  • "active"
  • "passive"

name

строка / обязательно

Идентификатор Ethernet канала интерфейсов.

Обратитесь к документации производителя для допустимых значений портов.

running_config

строка

Этот параметр используется только со значением parsed.

Значение этого параметра должно быть результатом выполнения команды show running-config | section ^interface на устройстве IOS.

Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в структурированные данные Ansible в соответствии со спецификацией модуля ресурса, а затем возвращает значение в ключе parsed в результате.

state

строка

Состояние, в котором должна остаться конфигурация

Состояния rendered, gathered и parsed не вносят никаких изменений на устройстве.

Состояние rendered преобразует конфигурацию в параметре config в команды CLI, специфичные для платформы, которые будут возвращены в ключе rendered в результате. Для состояния rendered активное подключение к удалённому хосту не требуется.

Состояние gathered получит текущую конфигурацию устройства и преобразует её в структурированные данные в формате, соответствующем параметрам модуля ресурса, и значение возвращается в ключе gathered в результате.

Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в формат JSON в соответствии с параметрами модуля ресурса, а значение возвращается в ключе parsed в результате. Значение параметра running_config должно соответствовать формату вывода команды show running-config | include ip route|ipv6 route, выполненной на устройстве. Для состояния parsed активное подключение к удалённому хосту не требуется.

Варианты:

  • "merged" ← (по умолчанию)
  • "replaced"
  • "overridden"
  • "deleted"
  • "rendered"
  • "parsed"
  • "gathered"

Примечания

Примечание

  • Тестировано на Cisco IOSXE версии 17.3 на CML.
  • Этот модуль работает с подключением network_cli. См. https://docs.ansible.com/ansible/latest/network/user_guide/platform_ios.html

Примеры

# 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: Port-channel10
        members:
          - member: GigabitEthernet0/1
            mode: auto
          - member: GigabitEthernet0/2
            mode: auto
      - name: Port-channel20
        members:
          - member: GigabitEthernet0/3
            mode: "on"
      - name: Port-channel30
        members:
          - member: GigabitEthernet0/4
            mode: active
    state: merged

# Task Output:
# ---------------

# commands:
# - interface GigabitEthernet0/1
# - channel-group 10 mode auto
# - interface GigabitEthernet0/2
# - channel-group 10 mode auto
# - interface GigabitEthernet0/3
# - channel-group 20 mode on
# - interface GigabitEthernet0/4
# - channel-group 30 mode active

# 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: Port-channel20
        members:
          - member: GigabitEthernet0/2
            mode: auto
          - member: GigabitEthernet0/3
            mode: auto
    state: overridden

# Task Output:
# ---------------

# commands:
# - interface GigabitEthernet0/1
# - no channel-group 10 mode auto
# - interface GigabitEthernet0/2
# - no channel-group 10 mode auto
# - interface GigabitEthernet0/4
# - no channel-group 30 mode active
# - interface GigabitEthernet0/2
# - channel-group 20 mode auto
# - interface GigabitEthernet0/3
# - channel-group 20 mode auto

# 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: Port-channel30
        members:
          - member: GigabitEthernet0/3
            mode: auto
    state: replaced

# Task Output:
# ---------------

# commands:
# - interface GigabitEthernet0/3
# - channel-group 30 mode auto
# - interface GigabitEthernet0/4
# - no channel-group 30 mode active

# 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 30 mode auto
# interface GigabitEthernet0/4
#  shutdown

# 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: Port-channel10
      - name: Port-channel20
    state: deleted

# Task Output:
# ---------------

# commands:
# - interface GigabitEthernet0/1
# - no channel-group 10 mode auto
# - interface GigabitEthernet0/2
# - no channel-group 10 mode auto
# - interface GigabitEthernet0/3
# - no channel-group 20 mode on

# 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

# Task Output:
# ---------------

# commands:
# - interface GigabitEthernet0/1
# - no channel-group 10 mode auto
# - interface GigabitEthernet0/2
# - no channel-group 10 mode auto
# - interface GigabitEthernet0/3
# - no channel-group 20 mode on
# - interface GigabitEthernet0/4
# - no channel-group 30 mode active

# 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-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: Gather listed LAG interfaces with provided configurations
  cisco.ios.ios_lag_interfaces:
    config:
    state: gathered

# Module Execution Result:
# ------------------------
#
# "gathered": [
# {
#     "members": [
#         {
#             "member": "GigabitEthernet0/1",
#             "mode": "auto"
#         },
#         {
#             "member": "GigabitEthernet0/2",
#             "mode": "auto"
#         }
#     ],
#     "name": "Port-channel10"
# },
# {
#     "members": [
#         {
#             "member": "GigabitEthernet0/3",
#             "mode": "on"
#         }
#     ],
#     "name": "Port-channel20"
# },
# {
#     "members": [
#         {
#             "member": "GigabitEthernet0/4",
#             "mode": "active"
#         }
#     ],
#     "name": "Port-channel30"
# }
# ]

# After state:
# ------------
#
# vios#sh 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 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

словарь

Результирующая конфигурация после выполнения модуля.

Возвращается: при изменении

Пример: "This output will always be in the same format as the module argspec.\n"

before

словарь

Конфигурация до выполнения модуля.

Возвращается: когда state равно merged, replaced, overridden, deleted или purged

Пример: "This output will always be in the same format as the module argspec.\n"

commands

список / элементы=строка

Набор команд, отправленных на удалённое устройство.

Возвращается: когда state равно merged, replaced, overridden, deleted или purged

Пример: ["interface GigabitEthernet0/1", "channel-group 10 mode auto", "channel-group 10 mode active link 20"]

gathered

список / элементы=строка

Сведения о сетевом ресурсе, собранные с удаленного устройства в виде структурированных данных.

Возвращается: когда state равно gathered

Пример: ["This output will always be in the same format as the module argspec.\n"]

parsed

список / элементы=строка

Родная конфигурация устройства, предоставленная в опции running_config, разпарсованная в структурированные данные в соответствии со спецификацией модуля argspec.

Возвращается: когда state равно parsed

Пример: ["This output will always be in the same format as the module argspec.\n"]

rendered

список / элементы=строка

Предоставленная конфигурация в задаче, отрендеренная в формате, понятном устройству (офлайн).

Возвращается: когда state равно rendered

Пример: ["interface GigabitEthernet0/2", "channel-group 20 mode auto", "channel-group 20 mode active link 60"]

Авторы

  • Sagar Paul (@KB-perByte)
  • Sumit Jaiswal (@justjais)

Ссылки на коллекцию

  • Система отслеживания ошибок
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cisco/ios/ios_lag_interfaces_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API