cisco.nxos.nxos_l2_interfaces – L2 interfaces resource module¶
Note
This plugin is part of the cisco.nxos collection (version 1.4.0).
To install it use: ansible-galaxy collection install cisco.nxos
.
To use it in a playbook, specify: cisco.nxos.nxos_l2_interfaces
.
New in version 1.0.0: of cisco.nxos
Synopsis¶
This module manages Layer-2 interfaces attributes of NX-OS Interfaces.
Note
This module has a corresponding action plugin.
Parameters¶
Examples¶
# Using merged
# Before state:
# -------------
#
# interface Ethernet1/1
# switchport access vlan 20
# 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
# After state:
# ------------
#
# 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:
# -------------
#
# interface Ethernet1/1
# switchport access vlan 20
# interface Ethernet1/2
# switchport trunk native vlan 20
# 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
# After state:
# ------------
#
# 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:
# -------------
#
# interface Ethernet1/1
# switchport access vlan 20
# interface Ethernet1/2
# switchport trunk native vlan 20
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
- name: Override device configuration of all L2 interfaces on device with provided
configuration.
cisco.nxos.nxos_l2_interfaces:
config:
- name: Ethernet1/2
access:
vlan: 30
state: overridden
# After state:
# ------------
#
# interface Ethernet1/1
# interface Ethernet1/2
# switchport access vlan 30
# interface mgmt0
# ip address dhcp
# ipv6 address auto-config
# Using deleted
# Before state:
# -------------
#
# interface Ethernet1/1
# switchport access vlan 20
# interface Ethernet1/2
# switchport trunk native vlan 20
# 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
# After state:
# ------------
#
# 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 (redacted)
# -----------------------
# 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,6,7,8,9,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 (redacted)
# -----------------------
# parsed:
# - name: Ethernet1/800
# access:
# vlan: 18
# trunk:
# allowed_vlans: "210"
# - name: Ethernet1/801
# trunk:
# allowed_vlans: "2,4,15"
# Using gathered
# Existing device config state
# -------------------------------
# Nexus9kvI5# 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 (redacted)
# -----------------------
# gathered:
# - name: "Ethernet1/1"
# access:
# vlan: 6
# trunk:
# allowed_vlans: "200"
#
# - name: "Ethernet1/2"
# trunk:
# native_vlan: 10
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Authors¶
Trishna Guha (@trishnaguha)