Модуль cisco.nxos.nxos_l2_interfaces — модуль ресурсов интерфейсов L2
Примечание
Этот модуль входит в коллекцию cisco.nxos (версия 11.2.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните команду ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install cisco.nxos.
Чтобы использовать её в плейбуке, укажите: cisco.nxos.nxos_l2_interfaces.
Добавлено в cisco.nxos 1.0.0
Краткое описание
- Этот модуль управляет атрибутами интерфейсов уровня 2 интерфейсов NX-OS.
Примечание
Этому модулю соответствует плагин действий.
Псевдонимы: l2_interfaces
Параметры
Параметр | Комментарии |
|---|---|
config list / elements=dictionary | Список параметров интерфейсов уровня 2 |
|
access dictionary |
Команда switchport mode access для настройки интерфейса как порта доступа уровня 2. |
|
vlan integer |
Настройка указанной VLAN на порту доступа. Используется как идентификатор VLAN доступа. |
|
beacon boolean |
Отключить/включить маячок интерфейса Варианты:
|
|
cdp_enable boolean |
Включить/отключить CDP на интерфейсе Варианты:
|
|
link_flap dictionary |
Настройка действий при колебаниях состояния соединения |
|
error_disable dictionary |
Настройка перевода порта в состояние error-disable при колебаниях состояния соединения |
|
count integer |
Настройка числа колебаний состояния соединения, при котором срабатывает действие |
|
interval integer |
Настройка интервала, в течение которого срабатывает действие |
|
mode псевдонимы: switchport_mode string |
Режим, в котором необходимо настроить интерфейс. Режим доступа не отображается в данных интерфейса, поэтому идемпотентность не будет соблюдаться для режима switchport mode access, и при каждом запуске результат будет содержать changed=True. Варианты:
|
|
name string / обязательный |
Полное имя интерфейса, например Ethernet1/1. |
|
trunk dictionary |
Команда switchport mode trunk для настройки интерфейса как транкового порта уровня 2. |
|
allowed_vlans string |
Список VLAN, разрешённых на указанном транковом порту. Только эти VLAN будут настроены на транке. Если включён режим switchport mode trunk, модуль будет считать диапазон 1–4093 диапазоном по умолчанию. |
|
allowed_vlans_none boolean |
Этот параметр управляет конфигурацией `switchport trunk allowed vlan none` Отмена этой команды подразумевает использование диапазона 1–4093 по умолчанию. Этот атрибут не обеспечивает идемпотентность. Варианты:
|
|
native_vlan integer |
Собственная VLAN для настройки на транковом порту. Используется как идентификатор собственной VLAN транка. |
running_config string | Этот параметр используется только при состоянии parsed. Значением этого параметра должен быть вывод, полученный с устройства NX-OS при выполнении команды show running-config | section ^interface. При состоянии parsed конфигурация считывается из параметра |
state string | Состояние конфигурации после выполнения модуля. Варианты:
|
Примечания
Примечание
- Проверено на NXOS 10.3(2) в CML
- Не поддерживается на Cisco MDS
Примеры
# Using merged
# Before state:
# -------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# interface Ethernet1/2
# switchport trunk native vlan 20
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
- name: Merge provided configuration with device configuration
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/1
trunk:
native_vlan: 10
allowed_vlans: 2,4,15
- name: Ethernet1/2
access:
vlan: 30
state: merged
# Task Output
# -----------
#
# before:
# - name: Loopback999
# - name: Ethernet1/2
# - name: mgmt0
# - name: Ethernet1/1
# commands:
# - interface Ethernet1/1
# - switchport trunk allowed vlan 2,4,15
# - switchport trunk native vlan 10
# - interface Ethernet1/2
# - switchport access vlan 30
# after:
# - name: Ethernet1/1
# trunk:
# allowed_vlans: 2,4,15
# native_vlan: 10
# - access:
# vlan: 30
# name: Ethernet1/2
# - name: mgmt0
# - name: Loopback999
# After state:
# ------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# switchport trunk native vlan 10
# switchport trunk allowed vlans 2,4,15
# interface Ethernet1/2
# switchport access vlan 30
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
# Using replaced
# Before state:
# -------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# switchport trunk native vlan 10
# switchport trunk allowed vlans 2,4,15
# interface Ethernet1/2
# switchport access vlan 30
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
- name: Replace device configuration of specified L2 interfaces with provided configuration.
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/1
trunk:
native_vlan: 20
allowed_vlans: 5-10, 15
state: replaced
# Task Output
# -----------
#
# before:
# - name: Ethernet1/1
# trunk:
# allowed_vlans: 2,4,15
# native_vlan: 10
# - access:
# vlan: 30
# name: Ethernet1/2
# - name: mgmt0
# commands:
# - interface Ethernet1/1
# - no switchport trunk native vlan
# - switchport trunk allowed vlan 5-10,15
# - switchport trunk native vlan 20
# after:
# - name: Ethernet1/1
# trunk:
# allowed_vlans: 5-10,15
# native_vlan: 20
# - access:
# vlan: 30
# name: Ethernet1/2
# - name: mgmt0
# After state:
# ------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# switchport trunk native vlan 20
# switchport trunk allowed vlan 5-10,15
# interface Ethernet1/2
# switchport trunk native vlan 20
# switchport mode trunk
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
# Using overridden
# Before state:
# -------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# switchport trunk native vlan 20
# switchport trunk allowed vlan 5-10,15
# interface Ethernet1/2
# switchport trunk native vlan 20
# switchport mode trunk
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
- name: Override device configuration with provided configuration.
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/2
access:
vlan: 30
state: overridden
# Task Output
# -----------
#
# before:
# - name: Ethernet1/1
# trunk:
# allowed_vlans: 5,6,7,8,9,10,15
# native_vlan: 20
# - access:
# vlan: 30
# name: Ethernet1/2
# - name: mgmt0
# commands:
# - interface Ethernet1/1
# - no switchport trunk allowed vlan
# - no switchport trunk native vlan
# after:
# - name: Ethernet1/1
# - access:
# vlan: 30
# name: Ethernet1/2
# - name: mgmt0
# After state:
# ------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# interface Ethernet1/2
# switchport access vlan 30
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
# Using deleted
# Before state:
# -------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# switchport trunk native vlan 10
# switchport trunk allowed vlan 2,4,15
# interface Ethernet1/2
# switchport access vlan 30
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
- name: Delete L2 attributes of given interfaces (Note This won't delete the interface
itself).
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/1
- name: Ethernet1/2
state: deleted
# Task Output
# -----------
#
# before:
# - name: Ethernet1/1
# trunk:
# allowed_vlans: 2,4,15
# native_vlan: 10
# - access:
# vlan: 30
# name: Ethernet1/2
# - name: mgmt0
# commands:
# - interface Ethernet1/1
# - no switchport trunk allowed vlan
# - no switchport trunk native vlan
# - interface Ethernet1/2
# - no switchport access vlan
# after:
# - name: Ethernet1/1
# - name: Ethernet1/2
# - name: mgmt0
# After state:
# ------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# interface Ethernet1/2
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
# Using rendered
- name: Render platform specific configuration lines (without connecting to the device)
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/1
trunk:
native_vlan: 10
allowed_vlans: 2,4,15
- name: Ethernet1/2
access:
vlan: 30
- name: Ethernet1/3
trunk:
native_vlan: 20
allowed_vlans: 5-10, 15
state: rendered
# Task Output
# -----------
#
# rendered:
# - interface Ethernet1/1
# - switchport trunk allowed vlan 2,4,15
# - switchport trunk native vlan 10
# - interface Ethernet1/2
# - switchport access vlan 30
# - interface Ethernet1/3
# - switchport trunk allowed vlan 5-10,15
# - switchport trunk native vlan 20
# Using parsed
# parsed.cfg
# ------------
#
# interface Ethernet1/800
# switchport access vlan 18
# switchport trunk allowed vlan 210
# interface Ethernet1/801
# switchport trunk allowed vlan 2,4,15
- name: Use parsed state to convert externally supplied config to structured format
cisco.nxos.nxos_l2_interfaces:
running_config: "{{ lookup('file', 'parsed.cfg') }}"
state: parsed
# Task output
# -----------
#
# parsed:
# - name: Ethernet1/800
# access:
# vlan: 18
# trunk:
# allowed_vlans: "210"
# - name: Ethernet1/801
# trunk:
# allowed_vlans: "2,4,15"
# Using gathered
# Before state:
# -------------
#
# switch# sh running-config | section ^interface
# interface Ethernet1/1
# switchport access vlan 6
# switchport trunk allowed vlan 200
# interface Ethernet1/2
# switchport trunk native vlan 10
- name: Gather l2_interfaces facts from the device using nxos_l2_interfaces
cisco.nxos.nxos_l2_interfaces:
state: gathered
# Task output
# -----------
#
# gathered:
# - name: "Ethernet1/1"
# access:
# vlan: 6
# trunk:
# allowed_vlans: "200"
# - name: "Ethernet1/2"
# trunk:
# native_vlan: 10
# Using allowed_vlans_none
# Before state:
# -------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# switchport mode trunk
# switchport trunk allowed vlan 10-100
# interface Ethernet1/2
# switchport mode trunk
- name: Configure trunk interface to allow no VLANs (block all traffic)
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/1
trunk:
allowed_vlans_none: true
state: merged
# Task Output
# -----------
#
# before:
# - name: Ethernet1/1
# trunk:
# allowed_vlans: "10-100"
# - name: Ethernet1/2
# trunk:
# allowed_vlans: "1-4094"
# commands:
# - interface Ethernet1/1
# - switchport trunk allowed vlan none
# after:
# - name: Ethernet1/1
# trunk:
# allowed_vlans_none: true
# - name: Ethernet1/2
# trunk:
# allowed_vlans: "1-4094"
# After state:
# ------------
#
# switch# show running-config | section interface
# interface Ethernet1/1
# switchport mode trunk
# switchport trunk allowed vlan none
# interface Ethernet1/2
# switchport mode trunk
# Note: When allowed_vlans_none is not configured on a trunk interface,
# the module assumes the default allowed VLANs range of 1-4094.
# This is consistent with NX-OS default behavior where all VLANs are
# allowed on trunk ports unless explicitly restricted.
- name: Configure specific VLANs after removing none restriction
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/1
trunk:
allowed_vlans: "10,20,30"
- name: Ethernet1/2
trunk:
allowed_vlans_none: true
state: replaced
# Task Output
# -----------
#
# commands:
# - interface Ethernet1/1
# - switchport trunk allowed vlan 10,20,30
# - interface Ethernet1/2
# - switchport trunk allowed vlan none
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже приведены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
after list / elements=string | Конфигурация в виде структурированных данных после выполнения модуля. Возвращается: при наличии изменений Пример: |
before list / elements=string | Конфигурация в виде структурированных данных до вызова модуля. Возвращается: всегда Пример: |
commands list / elements=string | Набор команд, отправленных на удалённое устройство. Возвращается: всегда Пример: |
gathered list / elements=string | Сведения о сетевом ресурсе, собранные с удалённого устройства в виде структурированных данных. Возвращается: если state равен Пример: |
parsed list / elements=string | Собственная конфигурация устройства, указанная в параметре running_config, разобранная в структурированные данные согласно argspec модуля. Возвращается: если state равен Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/cisco/nxos/nxos_l2_interfaces_module.html