dellemc.enterprise_sonic.sonic_vrfs module – Manage VRFs and associate VRFs to interfaces such as, Eth, LAG, VLAN, and loopback
Note
This module is part of the dellemc.enterprise_sonic collection (version 2.5.1).
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_vrfs
.
New in dellemc.enterprise_sonic 1.0.0
Synopsis
Manages VRF and VRF interface attributes in Enterprise SONiC Distribution by Dell Technologies.
Note
This module has a corresponding action plugin.
Parameters
Parameter |
Comments |
---|---|
A list of VRF configurations. |
|
Holds a dictionary mapping of list of interfaces linked to a VRF interface. |
|
List of interface names that are linked to a specific VRF interface. |
|
The name of the physical interface. |
|
The name of the VRF interface. |
|
The state of the configuration after module completion. Choices:
|
Notes
Note
Tested against Enterprise SONiC Distribution by Dell Technologies.
Supports
check_mode
.
Examples
# Using deleted
#
# Before state:
# -------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1
#Vrfcheck2
#Vrfcheck3 Eth1/3
# Eth1/14
# Eth1/16
# Eth1/17
#Vrfcheck4 Eth1/5
# Eth1/6
#
- name: Configuring vrf deleted state
dellemc.enterprise_sonic.sonic_vrfs:
config:
- name: Vrfcheck4
members:
interfaces:
- name: Eth1/6
- name: Vrfcheck3
members:
interfaces:
- name: Eth1/3
- name: Eth1/14
state: deleted
#
# After state:
# ------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1
#Vrfcheck2
#Vrfcheck3 Eth1/16
# Eth1/17
#Vrfcheck4 Eth1/5
#
#
# Using merged
#
# Before state:
# -------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1
#Vrfcheck2
#Vrfcheck3 Eth1/16
# Eth1/17
#Vrfcheck4
#
- name: Configuring vrf merged state
dellemc.enterprise_sonic.sonic_vrfs:
config:
- name: Vrfcheck4
members:
interfaces:
- name: Eth1/5
- name: Eth1/6
- name: Vrfcheck3
members:
interfaces:
- name: Eth1/3
- name: Eth1/14
state: merged
#
# After state:
# ------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1
#Vrfcheck2
#Vrfcheck3 Eth1/3
# Eth1/14
# Eth1/16
# Eth1/17
#Vrfcheck4 Eth1/5
# Eth1/6
#
# Using overridden
#
# Before state:
# -------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1
#Vrfcheck2
#Vrfcheck3 Eth1/7
# Eth1/8
#
- name: Overridden VRF configuration
dellemc.enterprise_sonic.sonic_vrfs:
sonic_vrfs:
config:
- name: Vrfcheck1
members:
interfaces:
- name: Eth1/3
- name: Eth1/14
- name: Vrfcheck3
members:
interfaces:
- name: Eth1/5
- name: Eth1/6
state: overridden
#
# After state:
# ------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1 Eth1/3
# Eth1/14
#Vrfcheck2
#Vrfcheck3 Eth1/5
# Eth1/6
#
# Using replaced
#
# Before state:
# -------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1 Eth1/3
#Vrfcheck2
#Vrfcheck3 Eth1/5
# Eth1/6
#
- name: Replace VRF configuration
dellemc.enterprise_sonic.sonic_vrfs:
sonic_vrfs:
config:
- name: Vrfcheck1
members:
interfaces:
- name: Eth1/3
- name: Eth1/14
- name: Vrfcheck3
members:
interfaces:
- name: Eth1/5
- name: Eth1/6
state: replaced
#
# After state:
# ------------
#
#show ip vrf
#VRF-NAME INTERFACES
#----------------------------------------------------------------
#Vrfcheck1 Eth1/3
# Eth1/14
#Vrfcheck2
#Vrfcheck3 Eth1/5
# Eth1/6
#
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The resulting configuration module invocation. Returned: when changed Sample: |
|
The configuration prior to the module invocation. Returned: always Sample: |
|
The set of commands pushed to the remote device. Returned: always Sample: |