Skip to main content

Cisco WLC

Pack Assets​

Templates​

The Centreon Plugin Pack Cisco WLC brings a host template:

  • Net-Cisco-Wlc-SNMP-custom

It brings the following service templates:

Service AliasService TemplateService DescriptionDefaultDiscovery
Ap-Channel-Interference-GlobalNet-Cisco-Wlc-Ap-Channel-Interference-Global-SNMPCheck channel interferences on all access points
Ap-Channel-Noise-GlobalNet-Cisco-Wlc-Ap-Channel-Noise-Global-SNMPCheck channel noises on all access points
Ap-Status-GlobalNet-Cisco-Wlc-Ap-Status-Global-SNMPCheck status of all access pointsXX
Ap-UsersNet-Cisco-Wlc-Ap-Users-SNMPCheck total users on all access points
CpuNet-Cisco-Wlc-Cpu-SNMPCheck CPU usageX
Hardware-GlobalNet-Cisco-Wlc-Hardware-Global-SNMPCheck all hardwareX
MemoryNet-Cisco-Wlc-Memory-SNMPCheck the rate of the utilization of memoryX
Traffic-Generic-IdNet-Cisco-Wlc-Traffic-Generic-Id-SNMPCheck traffic on a network interface
Traffic-Generic-NameNet-Cisco-Wlc-Traffic-Generic-Name-SNMPCheck traffic on a network interface
Traffic-GlobalNet-Cisco-Wlc-Traffic-Global-SNMPCheck traffic on multiple network interfacesX

Default services are automatically created when the host template is applied.

If Discovery is checked, it means a service discovery rule exists for this service template.

Discovery rules​

Rule NameDescription
Net-Cisco-Wlc-SNMP-Traffic-NameDiscover network interfaces and monitor bandwidth utilization
Net-Cisco-Wlc-SNMP-AP-Name

More information about discovering services automatically is available on the dedicated page and in the following chapter.

Collected metrics & status​

Metric NameUnit
ap~channels#accesspoint.interference.power.countcount
ap~channels#accesspoint.interference.utilization.percentage%

Prerequisites​

SNMP Configuration​

To use this pack, the SNMP service must be properly configured on your ressource. Please refer to the official documentation:

Network flow​

The target server must be reachable from the Centreon poller on the UDP/161 SNMP port.

Setup​

Monitoring Pack​

If the platform uses an online license, you can skip the package installation instruction below as it is not required to have the pack displayed within the Configuration > Plugin Packs > Manager menu. If the platform uses an offline license, install the package on the central server with the command corresponding to the operating system's package manager:

dnf install centreon-pack-network-cisco-wlc-snmp

Whatever the license type (online or offline), install the Cisco WLC Pack through the Configuration > Plugin Packs > Manager menu.

Plugin​

Since Centreon 22.04, you can benefit from the 'Automatic plugin installation' feature. When this feature is enabled, you can skip the installation part below.

You still have to manually install the plugin on the poller(s) when:

  • Automatic plugin installation is turned off
  • You want to run a discovery job from a poller that doesn't monitor any resource of this kind yet

More information in the Installing the plugin section.

Use the commands below according to your operating system's package manager:

dnf install centreon-plugin-Network-Cisco-Wlc-Snmp

Configuration​

Host​

  1. Log into Centreon and add a new host through Configuration > Hosts.
  2. Fill the Name, Alias & IP Address/DNS fields according to your ressource settings.
  3. Apply the Net-Cisco-Wlc-SNMP-custom template to the host.

When using SNMP v3, use the SNMPEXTRAOPTIONS Macro to add specific authentication parameters. More information in the Troubleshooting SNMP section.

MandatoryMacroDescription
SNMPEXTRAOPTIONSConfigure your own SNMPv3 credentials combo

How to check in the CLI that the configuration is OK and what are the main options for?​

Once the plugin is installed, log into your Centreon poller's CLI using the centreon-engine user account (su - centreon-engine) and test the plugin by running the following command:

/usr/lib/centreon/plugins/centreon_cisco_wlc.pl \
--plugin=network::cisco::wlc::snmp::plugin \
--mode=ap-status \
--hostname=10.0.0.1 \
--snmp-community='my-snmp-community' \
--snmp-version=2c \
--filter-name='' \
--filter-group='' \
--warning-radio-status='' \
--critical-radio-status='' \
--warning-radio-interface-channels-utilization='' \
--critical-radio-interface-channels-utilization='' \
--warning-total='' \
--critical-total='' \
--warning-total-associated='' \
--critical-total-associated='' \
--warning-total-disassociating='' \
--critical-total-disassociating='' \
--warning-total-enabled='' \
--critical-total-enabled='' \
--warning-total-disabled='' \
--critical-total-disabled='' \
--warning-status='' \
--critical-status='' \

The expected command output is shown below:

OK: total: %s associated: %s disassociating: %s downloading: %s enabled: %s disabled: %s   channels utilization: %s %% | 'accesspoints.total.count'=14;;;0 ;  'accesspoints.associated.count'=62;;;0 ;  'accesspoints.disassociating.count'=92;;;0 ;  'accesspoints.downloading.count'=57;;;0 ;  'accesspoints.enabled.count'=9;;;0 ;  'accesspoints.disabled.count'=54;;;0 ;  'accesspoint.radio.interface.channels.utilization.percentage'=80%;;;0;100 

Available modes​

All available modes can be displayed by adding the --list-mode parameter to the command:

/usr/lib/centreon/plugins/centreon_cisco_wlc.pl \
--plugin=network::cisco::wlc::snmp::plugin \
--list-mode

The plugin brings the following modes:

  • ap-channel-interference
  • ap-channel-noise
  • ap-status
  • ap-users
  • cpu
  • discovery
  • hardware
  • interfaces
  • list-aps
  • list-groups
  • list-interfaces
  • list-radius-acc-servers
  • list-radius-auth-servers
  • memory
  • radius-acc-servers
  • radius-auth-servers

Available options​

Global options​

All global options are listed here:

OptionDescriptionOption type
--modeChoose a mode.Global
--dyn-modeSpecify a mode with the path (separated by '::').Global
--list-modeList available modes.Global
--mode-versionCheck minimal version of mode. If not, unknown error.Global
--versionDisplay plugin version.Global
--pass-managerUse a password manager.Global
--verboseDisplay long output.Output
--debugDisplay also debug messages.Output
--filter-perfdataFilter perfdata that match the regexp.Output
--filter-perfdata-advAdvanced perfdata filter. Eg: --filter-perfdata-adv='not (%(value) == 0 and %(max) eq "")'Output
--explode-perfdata-maxPut max perfdata (if it exists) in a specific perfdata (without values: same with '_max' suffix) (Multiple options)Output
--change-perfdata --extend-perfdataChange or extend perfdata. Syntax: --extend-perfdata=searchlabel,newlabel,target[,[newuom],[min],[m ax]] Common examples: Change storage free perfdata in used: --change-perfdata=free,used,invert() Change storage free perfdata in used: --change-perfdata=used,free,invert() Scale traffic values automaticaly: --change-perfdata=traffic,,scale(auto) Scale traffic values in Mbps: --change-perfdata=traffic_in,,scale(Mbps),mbps Change traffic values in percent: --change-perfdata=traffic_in,,percent()Output
--extend-perfdata-groupExtend perfdata from multiple perfdatas (methods in target are: min, max, average, sum) Syntax: --extend-perfdata-group=searchlabel,newlabel,target[,[newuom],[m in],[max]] Common examples: Sum wrong packets from all interfaces (with interface need --units-errors=absolute): --extend-perfdata-group=',packets_wrong,sum(packets_(discard |error)_(in|out))' Sum traffic by interface: --extend-perfdata-group='traffic_in_(.*),traffic_$1,sum(traf fic_(in|out)_$1)'Output
--change-short-output --change-long-outputChange short/long output display: --change-short-output=pattern~replace~modifierOutput
--change-exitChange exit code: --change-exit=unknown=criticalOutput
--range-perfdataChange perfdata range thresholds display: 1 = start value equals to '0' is removed, 2 = threshold range is not displayed.Output
--filter-uomFilter UOM that match the regexp.Output
--opt-exitOptional exit code for an execution error (i.e. wrong option provided, SSH connection refused, timeout, etc) (Default: unknown).Output
--output-ignore-perfdataRemove perfdata from output.Output
--output-ignore-labelRemove label status from output.Output
--output-xmlDisplay output in XML format.Output
--output-jsonDisplay output in JSON format.Output
--output-openmetricsDisplay metrics in OpenMetrics format.Output
--output-fileWrite output in file (can be used with json and xml options)Output
--disco-formatDisplay discovery arguments (if the mode manages it).Output
--disco-showDisplay discovery values (if the mode manages it).Output
--float-precisionSet the float precision for thresholds (Default: 8).Output
--source-encodingSet encoding of monitoring sources (In some cases. Default: 'UTF-8').Output
--hostnameHostname to query (required).SNMP
--snmp-communityRead community (defaults to public).SNMP
--snmp-versionVersion: 1 for SNMP v1 (default), 2 for SNMP v2c, 3 for SNMP v3.SNMP
--snmp-portPort (default: 161).SNMP
--snmp-timeoutTimeout in seconds (default: 1) before retries.SNMP
--snmp-retriesSet the number of retries (default: 5) before failure.SNMP
--maxrepetitionsMax repetitions value (default: 50) (only for SNMP v2 and v3).SNMP
--subsetleefHow many oid values per SNMP request (default: 50) (for get_leef method. Be cautious when you set it. It is recommended to leave the default value).SNMP
--snmp-autoreduceAuto reduce SNMP request size in case of SNMP errors (By default, the divisor is 2).SNMP
--snmp-force-getnextUse SNMP getnext function (even in SNMP v2c and v3).SNMP
--snmp-usernameSecurity name (only for SNMP v3).SNMP
--authpassphraseAuthentication protocol pass phrase.SNMP
--authprotocolAuthentication protocol: MD5|SHA. Since net-snmp 5.9.1: SHA224|SHA256|SHA384|SHA512.SNMP
--privpassphrasePrivacy protocol pass phraseSNMP
--privprotocolPrivacy protocol: DES|AES. Since net-snmp 5.9.1: AES192|AES192C|AES256|AES256C.SNMP
--contextnameContext nameSNMP
--contextengineidContext engine IDSNMP
--securityengineidSecurity engine IDSNMP
--snmp-errors-exitExit code for SNMP Errors (default: unknown)SNMP
--snmp-tls-transportTLS Transport communication used (can be: 'dtlsudp', 'tlstcp').SNMP
--snmp-tls-our-identityOur X.509 identity to use, which should either be a fingerprint or the filename that holds the certificate.SNMP
--snmp-tls-their-identityThe remote server's identity to connect to, specified as either a fingerprint or a file name. Either this must be specified, or the hostname below along with a trust anchor.SNMP
--snmp-tls-their-hostnameThe remote server's hostname that is expected. If their certificate was signed by a CA then their hostname presented in the certificate must match this value or the connection fails to be established (to avoid man-in-the-middle attacks).SNMP
--snmp-tls-trust-certA trusted certificate to use as trust anchor (like a CA certificate) for verifying a remote server's certificate. If a CA certificate is used to validate a certificate then the TheirHostname parameter must also be specified to ensure their presented hostname in the certificate matches.SNMP

Modes options​

All modes specific options are listed here:

OptionDescriptionOption type
--filter-countersOnly display some counters (regexp can be used). Example: --filter-counters='interference-util'Mode
--filter-nameFilter access point name (can be a regexp).Mode
--filter-groupFilter access point group (can be a regexp).Mode
--filter-channelFilter channel (can be a regexp). Example: --filter-channel='slot0:channel3'Mode
--warning- --critical-Thresholds. Can be: 'interference-power', 'interference-util' (%).Mode

All available options for a given mode can be displayed by adding the --help parameter to the command:

/usr/lib/centreon/plugins/centreon_cisco_wlc.pl \
--plugin=network::cisco::wlc::snmp::plugin \
--mode=ap-status \
--help

Troubleshooting​

Please find the troubleshooting documentation for Centreon Plugins typical issues.