community.network.exos_lldp_global – Configure and manage Link Layer Discovery Protocol(LLDP) attributes on EXOS platforms.
community.network.exos_lldp_global – Configure and manage Link Layer Discovery Protocol(LLDP) attributes on EXOS platforms.
Note
This plugin is part of the community.network collection (version 2.0.1).
To install it use: ansible-galaxy collection install community.network
.
To use it in a playbook, specify: community.network.exos_lldp_global
.
Synopsis
- This module configures and manages the Link Layer Discovery Protocol(LLDP) attributes on Extreme Networks EXOS platforms.
Parameters
Parameter | Choices/Defaults | Comments | ||
---|---|---|---|---|
config dictionary |
A dictionary of LLDP options | |||
interval integer |
Default: 30 |
Frequency at which LLDP advertisements are sent (in seconds). By default - 30 seconds. | ||
tlv_select dictionary |
This attribute can be used to specify the TLVs that need to be sent in the LLDP packets. By default, only system name and system description is sent | |||
management_address boolean |
|
Used to specify the management address in TLV messages | ||
port_description boolean |
|
Used to specify the port description TLV | ||
system_capabilities boolean |
|
Used to specify the system capabilities TLV | ||
system_description boolean |
|
Used to specify the system description TLV | ||
system_name boolean |
|
Used to specify the system name TLV | ||
state string |
|
The state of the configuration after module completion. |
Notes
Note
- Tested against Extreme Networks EXOS version 30.2.1.8 on x460g2.
- This module works with connection
httpapi
. See EXOS Platform Options
Examples
# Using merged
# Before state:
# -------------
# path: /rest/restconf/data/openconfig_lldp:lldp/config
# method: GET
# data:
# {
# "openconfig_lldp:config": {
# "enabled": true,
# "hello-timer": 30,
# "suppress-tlv-advertisement": [
# "PORT_DESCRIPTION",
# "SYSTEM_CAPABILITIES",
# "MANAGEMENT_ADDRESS"
# ],
# "system-description": "ExtremeXOS (X460G2-24t-10G4) version 30.2.1.8"
# "system-name": "X460G2-24t-10G4"
# }
# }
- name: Merge provided LLDP configuration with device configuration
community.network.exos_lldp_global:
config:
interval: 10000
tlv_select:
system_capabilities: true
state: merged
# Module Execution Results:
# -------------------------
#
# "before": [
# {
# "interval": 30,
# "tlv_select": {
# "system_name": true,
# "system_description": true
# "port_description": false,
# "management_address": false,
# "system_capabilities": false
# }
# }
# ]
#
# "requests": [
# {
# "data": {
# "openconfig_lldp:config": {
# "hello-timer": 10000,
# "suppress-tlv-advertisement": [
# "PORT_DESCRIPTION",
# "MANAGEMENT_ADDRESS"
# ]
# }
# },
# "method": "PATCH",
# "path": "/rest/restconf/data/openconfig_lldp:lldp/config"
# }
# ]
#
# "after": [
# {
# "interval": 10000,
# "tlv_select": {
# "system_name": true,
# "system_description": true,
# "port_description": false,
# "management_address": false,
# "system_capabilities": true
# }
# }
# ]
# After state:
# -------------
# path: /rest/restconf/data/openconfig_lldp:lldp/config
# method: GET
# data:
# {
# "openconfig_lldp:config": {
# "enabled": true,
# "hello-timer": 10000,
# "suppress-tlv-advertisement": [
# "PORT_DESCRIPTION",
# "MANAGEMENT_ADDRESS"
# ],
# "system-description": "ExtremeXOS (X460G2-24t-10G4) version 30.2.1.8"
# "system-name": "X460G2-24t-10G4"
# }
# }
# Using replaced
# Before state:
# -------------
# path: /rest/restconf/data/openconfig_lldp:lldp/config
# method: GET
# data:
# {
# "openconfig_lldp:config": {
# "enabled": true,
# "hello-timer": 30,
# "suppress-tlv-advertisement": [
# "PORT_DESCRIPTION",
# "SYSTEM_CAPABILITIES",
# "MANAGEMENT_ADDRESS"
# ],
# "system-description": "ExtremeXOS (X460G2-24t-10G4) version 30.2.1.8"
# "system-name": "X460G2-24t-10G4"
# }
# }
- name: Replace device configuration with provided LLDP configuration
community.network.exos_lldp_global:
config:
interval: 10000
tlv_select:
system_capabilities: true
state: replaced
# Module Execution Results:
# -------------------------
#
# "before": [
# {
# "interval": 30,
# "tlv_select": {
# "system_name": true,
# "system_description": true
# "port_description": false,
# "management_address": false,
# "system_capabilities": false
# }
# }
# ]
#
# "requests": [
# {
# "data": {
# "openconfig_lldp:config": {
# "hello-timer": 10000,
# "suppress-tlv-advertisement": [
# "SYSTEM_NAME",
# "SYSTEM_DESCRIPTION",
# "PORT_DESCRIPTION",
# "MANAGEMENT_ADDRESS"
# ]
# }
# },
# "method": "PATCH",
# "path": "/rest/restconf/data/openconfig_lldp:lldp/config"
# }
# ]
#
# "after": [
# {
# "interval": 10000,
# "tlv_select": {
# "system_name": false,
# "system_description": false,
# "port_description": false,
# "management_address": false,
# "system_capabilities": true
# }
# }
# ]
# After state:
# -------------
# path: /rest/restconf/data/openconfig_lldp:lldp/config
# method: GET
# data:
# {
# "openconfig_lldp:config": {
# "enabled": true,
# "hello-timer": 10000,
# "suppress-tlv-advertisement": [
# "SYSTEM_NAME",
# "SYSTEM_DESCRIPTION",
# "PORT_DESCRIPTION",
# "MANAGEMENT_ADDRESS"
# ],
# "system-description": "ExtremeXOS (X460G2-24t-10G4) version 30.2.1.8"
# "system-name": "X460G2-24t-10G4"
# }
# }
# Using deleted
# Before state:
# -------------
# path: /rest/restconf/data/openconfig_lldp:lldp/config
# method: GET
# data:
# {
# "openconfig_lldp:config": {
# "enabled": true,
# "hello-timer": 10000,
# "suppress-tlv-advertisement": [
# "SYSTEM_CAPABILITIES",
# "MANAGEMENT_ADDRESS"
# ],
# "system-description": "ExtremeXOS (X460G2-24t-10G4) version 30.2.1.8"
# "system-name": "X460G2-24t-10G4"
# }
# }
- name: Delete attributes of given LLDP service (This won't delete the LLDP service itself)
community.network.exos_lldp_global:
config:
state: deleted
# Module Execution Results:
# -------------------------
#
# "before": [
# {
# "interval": 10000,
# "tlv_select": {
# "system_name": true,
# "system_description": true,
# "port_description": true,
# "management_address": false,
# "system_capabilities": false
# }
# }
# ]
#
# "requests": [
# {
# "data": {
# "openconfig_lldp:config": {
# "hello-timer": 30,
# "suppress-tlv-advertisement": [
# "SYSTEM_CAPABILITIES",
# "PORT_DESCRIPTION",
# "MANAGEMENT_ADDRESS"
# ]
# }
# },
# "method": "PATCH",
# "path": "/rest/restconf/data/openconfig_lldp:lldp/config"
# }
# ]
#
# "after": [
# {
# "interval": 30,
# "tlv_select": {
# "system_name": true,
# "system_description": true,
# "port_description": false,
# "management_address": false,
# "system_capabilities": false
# }
# }
# ]
# After state:
# -------------
# path: /rest/restconf/data/openconfig_lldp:lldp/config
# method: GET
# data:
# {
# "openconfig_lldp:config": {
# "enabled": true,
# "hello-timer": 30,
# "suppress-tlv-advertisement": [
# "SYSTEM_CAPABILITIES",
# "PORT_DESCRIPTION",
# "MANAGEMENT_ADDRESS"
# ],
# "system-description": "ExtremeXOS (X460G2-24t-10G4) version 30.2.1.8"
# "system-name": "X460G2-24t-10G4"
# }
# }
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. |
requests list / elements=string |
always |
The set of requests pushed to the remote device.
Sample: [{'data': '...', 'method': '...', 'path': '...'}, {'data': '...', 'method': '...', 'path': '...'}, {'data': '...', 'method': '...', 'path': '...'}] |
Authors
- Ujwal Komarla (@ujwalkomarla)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/network/exos_lldp_global_module.html