On this page
cisco.nxos.nxos_lag_interfaces – LAG interfaces resource module
Note
This plugin is part of the cisco.nxos collection (version 2.7.0).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install cisco.nxos.
To use it in a playbook, specify: cisco.nxos.nxos_lag_interfaces.
New in version 1.0.0: of cisco.nxos
Synopsis
- This module manages attributes of link aggregation groups of NX-OS Interfaces.
 
Note
This module has a corresponding action plugin.
Parameters
| Parameter | Choices/Defaults | Comments | ||
|---|---|---|---|---|
| config
        
        list / elements=dictionary
         | 
      
        
        A list of link aggregation group configurations.
         | 
     |||
| members
        
        list / elements=dictionary
         | 
      
        
        The list of interfaces that are part of the group.
         | 
     |||
| force
        
        boolean
         | 
      
       
  | 
      
        
        When true it forces link aggregation group members to match what is declared in the members param. This can be used to remove members.
         | 
     ||
| member
        
        string
         | 
      
        
        The interface name.
         | 
     |||
| mode
        
        string
         | 
      
       
  | 
      
        
        Link aggregation group (LAG).
         | 
     ||
| name
        
        string / required
         | 
      
        
        Name of the link aggregation group (LAG).
         | 
     |||
| running_config
        
        string
         | 
      
        
        This option is used only with state parsed.
        
       
        The value of this option should be the output received from the NX-OS device by executing the command show running-config | section ^interface.
        
       
        The state parsed reads the configuration from  running_config option and transforms it into Ansible structured data as per the resource module's argspec and the value is then returned in the parsed key within the result.
        | 
     |||
| state
        
        string
         | 
      
       
  | 
      
        
        The state of the configuration after module completion.
         | 
     ||
Notes
Note
- Tested against NXOS 7.3.(0)D1(1) on VIRL.
 - Unsupported for Cisco MDS
 - This module works with connection 
network_cli. 
Examples
# Using merged
# Before state:
# -------------
#
# interface Ethernet1/4
- name: Merge provided configuration with device configuration.
  cisco.nxos.nxos_lag_interfaces:
    config:
    - name: port-channel99
      members:
      - member: Ethernet1/4
    state: merged
# After state:
# ------------
#
# interface Ethernet1/4
#   channel-group 99
# Using replaced
# Before state:
# -------------
#
# interface Ethernet1/4
#   channel-group 99 mode active
- name: Replace device configuration of specified LAG attributes of given interfaces
    with provided configuration.
  cisco.nxos.nxos_lag_interfaces:
    config:
    - name: port-channel10
      members:
      - member: Ethernet1/4
    state: replaced
# After state:
# ------------
#
# interface Ethernet1/4
#   channel-group 10
# Using overridden
# Before state:
# -------------
#
# interface Ethernet1/4
#   channel-group 10
# interface Ethernet1/2
#   channel-group 99 mode passive
- name: Override device configuration of all LAG attributes of given interfaces on
    device with provided configuration.
  cisco.nxos.nxos_lag_interfaces:
    config:
    - name: port-channel20
      members:
      - member: Ethernet1/6
        force: true
    state: overridden
# After state:
# ------------
# interface Ethernet1/2
# interface Ethernet1/4
# interface Ethernet1/6
#   channel-group 20 force
# Using deleted
# Before state:
# -------------
#
# interface Ethernet1/4
#   channel-group 99 mode active
- name: Delete LAG attributes of given interface (This won't delete the port-channel
    itself).
  cisco.nxos.nxos_lag_interfaces:
    config:
    - port-channel: port-channel99
    state: deleted
- name: Delete LAG attributes of all the interfaces
  cisco.nxos.nxos_lag_interfaces:
    state: deleted
# After state:
# ------------
#
# interface Ethernet1/4
#   no channel-group 99
# Using rendered
- name: Use rendered state to convert task input to device specific commands
  cisco.nxos.nxos_lag_interfaces:
    config:
    - name: port-channel10
      members:
      - member: Ethernet1/800
        mode: active
      - member: Ethernet1/801
    - name: port-channel11
      members:
      - member: Ethernet1/802
        mode: passive
    state: rendered
# Task Output (redacted)
# -----------------------
# rendered:
#  - "interface Ethernet1/800"
#  - "channel-group 10 mode active"
#  - "interface Ethernet1/801"
#  - "channel-group 10"
#  - "interface Ethernet1/802"
#  - "channel-group 11 mode passive"
# Using parsed
# parsed.cfg
# ------------
# interface port-channel10
# interface port-channel11
# interface port-channel12
# interface Ethernet1/800
#   channel-group 10 mode active
# interface Ethernet1/801
#   channel-group 10 mode active
# interface Ethernet1/802
#   channel-group 11 mode passive
# interface Ethernet1/803
#   channel-group 11 mode passive
- name: Use parsed state to convert externally supplied config to structured format
  cisco.nxos.nxos_lag_interfaces:
    running_config: "{{ lookup('file', 'parsed.cfg') }}"
    state: parsed
# Task output (redacted)
# -----------------------
# parsed:
#  - members:
#      - member: Ethernet1/800
#        mode: active
#      - member: Ethernet1/801
#        mode: active
#    name: port-channel10
#
#  - members:
#      - member: Ethernet1/802
#        mode: passive
#      - member: Ethernet1/803
#        mode: passive
#    name: port-channel11
#
#  - name: port-channel12
# Using gathered
# Existing device config state
# -------------------------------
# interface port-channel10
# interface port-channel11
# interface Ethernet1/1
#   channel-group 10 mode active
# interface Ethernet1/2
#   channel-group 11 mode passive
#
- name: Gather lag_interfaces facts from the device using nxos_lag_interfaces
  cisco.nxos.nxos_lag_interfaces:
    state: gathered
# Task output (redacted)
# -----------------------
# gathered:
#  - name: port-channel10
#    members:
#      - member: Ethernet1/1
#        mode: active
#  - name: port-channel11
#    members:
#      - member: Ethernet1/2
#        mode: passive
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| after
        
        list / elements=string
         | 
      when changed | 
        
        The configuration as structured data after module completion.
         Sample:
        
       
        The configuration returned will always be in the same format of the parameters above.
         | 
     
| before
        
        list / elements=string
         | 
      always | 
        
        The configuration as structured data prior to module invocation.
         Sample:
        
       
        The configuration returned will always be in the same format of the parameters above.
         | 
     
| commands
        
        list / elements=string
         | 
      always | 
        
        The set of commands pushed to the remote device.
         Sample:
        
       
        ['interface Ethernet1/800', 'channel-group 10 mode active', 'interface Ethernet1/801', 'channel-group 10', 'interface Ethernet1/802', 'channel-group 11 mode passive']
         | 
     
Authors
- Trishna Guha (@trishnaguha)
 - Nilashish Chakraborty (@NilashishC)
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/cisco/nxos/nxos_lag_interfaces_module.html