• AnsibleFest
  • Products
  • Community
  • Webinars & Training
  • Blog
Ansible Logo
Documentation
Ansible
7

Ansible getting started

  • Getting started with Ansible

Installation, Upgrade & Configuration

  • Installation Guide
  • Ansible Porting Guides

Using Ansible

  • Building Ansible inventories
  • Using Ansible command line tools
  • Using Ansible playbooks
  • Protecting sensitive data with Ansible vault
  • Using Ansible modules and plugins
  • Using Ansible collections
  • Using Ansible on Windows and BSD
  • Ansible tips and tricks

Contributing to Ansible

  • Ansible Community Guide
  • Ansible Collections Contributor Guide
  • ansible-core Contributors Guide
  • Advanced Contributor Guide
  • Ansible documentation style guide

Extending Ansible

  • Developer Guide

Common Ansible Scenarios

  • Legacy Public Cloud Guides
  • Network Technology Guides
  • Virtualization and Containerization Guides

Network Automation

  • Network Getting Started
  • Network Advanced Topics
  • Network Developer Guide

Ansible Galaxy

  • Galaxy User Guide
  • Galaxy Developer Guide

Reference & Appendices

  • Collection Index
    • Collections in the Amazon Namespace
    • Collections in the Ansible Namespace
    • Collections in the Arista Namespace
    • Collections in the Awx Namespace
    • Collections in the Azure Namespace
    • Collections in the Check_point Namespace
    • Collections in the Chocolatey Namespace
    • Collections in the Cisco Namespace
    • Collections in the Cloud Namespace
    • Collections in the Cloudscale_ch Namespace
    • Collections in the Community Namespace
    • Collections in the Containers Namespace
    • Collections in the Cyberark Namespace
    • Collections in the Dellemc Namespace
      • Dellemc.Enterprise_Sonic
        • Description
        • Plugin Index
      • Dellemc.Openmanage
      • Dellemc.Os10
      • Dellemc.Os6
      • Dellemc.Os9
      • Dellemc.Powerflex
      • Dellemc.Unity
    • Collections in the F5networks Namespace
    • Collections in the Fortinet Namespace
    • Collections in the Frr Namespace
    • Collections in the Gluster Namespace
    • Collections in the Google Namespace
    • Collections in the Grafana Namespace
    • Collections in the Hetzner Namespace
    • Collections in the Hpe Namespace
    • Collections in the Ibm Namespace
    • Collections in the Infinidat Namespace
    • Collections in the Infoblox Namespace
    • Collections in the Inspur Namespace
    • Collections in the Junipernetworks Namespace
    • Collections in the Kubernetes Namespace
    • Collections in the Lowlydba Namespace
    • Collections in the Mellanox Namespace
    • Collections in the Netapp Namespace
    • Collections in the Netapp_eseries Namespace
    • Collections in the Netbox Namespace
    • Collections in the Ngine_io Namespace
    • Collections in the Openstack Namespace
    • Collections in the Openvswitch Namespace
    • Collections in the Ovirt Namespace
    • Collections in the Purestorage Namespace
    • Collections in the Sensu Namespace
    • Collections in the Splunk Namespace
    • Collections in the T_systems_mms Namespace
    • Collections in the Theforeman Namespace
    • Collections in the Vmware Namespace
    • Collections in the Vultr Namespace
    • Collections in the Vyos Namespace
    • Collections in the Wti Namespace
  • Indexes of all modules and plugins
  • Playbook Keywords
  • Return Values
  • Ansible Configuration Settings
  • Controlling how Ansible behaves: precedence rules
  • YAML Syntax
  • Python 3 Support
  • Interpreter Discovery
  • Releases and maintenance
  • Testing Strategies
  • Sanity Tests
  • Frequently Asked Questions
  • Glossary
  • Ansible Reference: Module Utilities
  • Special Variables
  • Red Hat Ansible Automation Platform
  • Ansible Automation Hub
  • Logging Ansible output

Roadmaps

  • Ansible Roadmap
  • ansible-core Roadmaps




Ansible
  • Collection Index
  • Collections in the Dellemc Namespace
  • Dellemc.Enterprise_Sonic
  • dellemc.enterprise_sonic.sonic_mclag module – Manage multi chassis link aggregation groups domain (MCLAG) and its parameters


dellemc.enterprise_sonic.sonic_mclag module – Manage multi chassis link aggregation groups domain (MCLAG) and its parameters

Note

This module is part of the dellemc.enterprise_sonic collection (version 2.0.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 dellemc.enterprise\_sonic.

To use it in a playbook, specify: dellemc.enterprise_sonic.sonic_mclag.

New in dellemc.enterprise_sonic 1.0.0

  • Synopsis

  • Parameters

  • Notes

  • Examples

  • Return Values

Synopsis

  • Manage multi chassis link aggregation groups domain (MCLAG) and its parameters

Note

This module has a corresponding action plugin.

Parameters

Parameter

Comments

config

dictionary

Dict of mclag domain configurations.

domain_id

integer / required

ID of the mclag domain (MCLAG domain).

keepalive

integer

MCLAG session keepalive-interval in secs.

members

dictionary

Holds portchannels dictionary for an MCLAG domain.

portchannels

list / elements=dictionary

Holds a list of portchannels for configuring as an MCLAG interface.

lag

string

Holds a PortChannel ID.

peer_address

string

The IPV4 peer-ip for corresponding MCLAG.

peer_link

string

Peer-link for corresponding MCLAG.

session_timeout

integer

MCLAG session timeout value in secs.

source_address

string

The IPV4 source-ip for corresponding MCLAG.

system_mac

string

Mac address of MCLAG.

unique_ip

dictionary

Holds Vlan dictionary for mclag unique ip.

vlans

list / elements=dictionary

Holds list of VLANs for which a separate IP addresses is enabled for Layer 3 protocol support over MCLAG.

vlan

string

Holds a VLAN ID.

state

string

The state that the configuration should be left in.

Choices:

  • "merged" ← (default)

  • "deleted"

Notes

Note

  • Tested against Enterprise SONiC Distribution by Dell Technologies.

  • Supports check_mode.

Examples

# Using merged
#
# Before state:
# -------------
#
# sonic# show mclag brief
# MCLAG Not Configured
#
- name: Merge provided configuration with device configuration
  dellemc.enterprise_sonic.sonic_mclag:
    config:
      domain_id: 1
      peer_address: 1.1.1.1
      source_address: 2.2.2.2
      peer_link: 'Portchannel1'
      keepalive: 1
      session_timeout: 3
      unique_ip:
          vlans:
            - vlan: Vlan4
      members:
          portchannles:
            - lag: PortChannel10
    state: merged
#
# After state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       : 2.2.2.2
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 1 secs
# Session Timeout      : 3 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:1
#-----------------------------------------------------------
# MLAG Interface       Local/Remote Status
#-----------------------------------------------------------
# PortChannel10            down/down
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
#
#
# Using merged
#
# Before state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       : 2.2.2.2
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 1 secs
# Session Timeout      : 3 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:1
#-----------------------------------------------------------
# MLAG Interface       Local/Remote Status
#-----------------------------------------------------------
# PortChannel10            down/down
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
#
#
- name: Merge device configuration with the provided configuration
  dellemc.enterprise_sonic.sonic_mclag:
    config:
      domain_id: 1
      source_address: 3.3.3.3
      keepalive: 10
      session_timeout: 30
      unique_ip:
        vlans:
          - vlan: Vlan5
      members:
        portchannels:
          - lag: PortChannel12
    state: merged
#
# After state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       : 3.3.3.3
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 10 secs
# Session Timeout      : 30 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:2
#-----------------------------------------------------------
# MLAG Interface       Local/Remote Status
#-----------------------------------------------------------
# PortChannel10            down/down
# PortChannel12            down/down
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        },
#         "Vlan5": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
#
#
# Using deleted
#
# Before state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       : 3.3.3.3
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 10 secs
# Session Timeout      : 30 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:1
#-----------------------------------------------------------
# MLAG Interface       Local/Remote Status
#-----------------------------------------------------------
# PortChannel10            down/down
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
#
- name: Delete device configuration based on the provided configuration
  dellemc.enterprise_sonic.sonic_mclag:
   config:
     domain_id: 1
     source_address: 3.3.3.3
     keepalive: 10
     members:
       portchannels:
         - lag: PortChannel10
   state: deleted
#
# After state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       :
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 1 secs
# Session Timeout      : 15 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:0
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
#
#
#
# Using deleted
#
# Before state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       : 3.3.3.3
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 10 secs
# Session Timeout      : 30 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:1
#-----------------------------------------------------------
# MLAG Interface       Local/Remote Status
#-----------------------------------------------------------
# PortChannel10            down/down
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
#
- name: Delete all device configuration
  dellemc.enterprise_sonic.sonic_mclag:
    config:
    state: deleted
#
# After state:
# ------------
#
# sonic# show mclag brief
# MCLAG Not Configured
#
# [email protected]:~$ show runningconfiguration all | grep MCLAG_UNIQUE_IP
# [email protected]:~$
#
#
# Using deleted
#
# Before state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       : 3.3.3.3
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 10 secs
# Session Timeout      : 30 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:2
#-----------------------------------------------------------
# MLAG Interface       Local/Remote Status
#-----------------------------------------------------------
# PortChannel10            down/down
# PortChannel12            down/sown
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
- name: Delete device configuration based on the provided configuration
  dellemc.enterprise_sonic.sonic_mclag:
    config:
      domain_id: 1
      source_address: 3.3.3.3
      keepalive: 10
      members:
        portchannels:
          - lag: PortChannel10
    state: deleted
#
# After state:
# ------------
#
# sonic# show mclag brief
#
# Domain ID            : 1
# Role                 : standby
# Session Status       : down
# Peer Link Status     : down
# Source Address       :
# Peer Address         : 1.1.1.1
# Peer Link            : PortChannel1
# Keepalive Interval   : 1 secs
# Session Timeout      : 15 secs
# System Mac           : 20:04:0f:37:bd:c9
#
#
# Number of MLAG Interfaces:0
#
# [email protected]:~$ show runningconfiguration all
# {
# ...
# "MCLAG_UNIQUE_IP": {
#        "Vlan4": {
#            "unique_ip": "enable"
#        }
#    },
# ...
# }
#
#

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

after

list / elements=string

The resulting configuration model invocation.

Returned: when changed

Sample: ["The configuration returned always in the same format\n of the parameters above.\n"]

before

list / elements=string

The configuration prior to the model invocation.

Returned: always

Sample: ["The configuration returned always in the same format\n of the parameters above.\n"]

commands

list / elements=string

The set of commands pushed to the remote device.

Returned: always

Sample: ["command 1", "command 2", "command 3"]

Authors

  • Abirami N (@abirami-n)

Collection links

Issue Tracker Repository (Sources)

Previous Next

© Copyright Ansible project contributors. Last updated on Mar 17, 2023.