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 3.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 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 |
Comments |
---|---|
A dictionary of LLDP options |
|
Frequency at which LLDP advertisements are sent (in seconds). By default - 30 seconds. Default: 30 |
|
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 |
|
Used to specify the management address in TLV messages Choices:
|
|
Used to specify the port description TLV Choices:
|
|
Used to specify the system capabilities TLV Choices:
|
|
Used to specify the system description TLV Choices:
|
|
Used to specify the system name TLV Choices:
|
|
The state of the configuration after module completion. Choices:
|
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 |
Description |
---|---|
The configuration as structured data after module completion. Returned: when changed Sample: “The configuration returned will always be in the same format\n of the parameters above.\n” |
|
The configuration as structured data prior to module invocation. Returned: always Sample: “The configuration returned will always be in the same format\n of the parameters above.\n” |
|
The set of requests pushed to the remote device. Returned: always Sample: [{“data”: “…”, “method”: “…”, “path”: “…”}, {“data”: “…”, “method”: “…”, “path”: “…”}, {“data”: “…”, “method”: “…”, “path”: “…”}] |
Authors
Ujwal Komarla (@ujwalkomarla)