Collection of CheckMK checks (see https://checkmk.com/). All checks and plugins are provided as is. Absolutely no warranty. Send any comments to thl-cmk[at]outlook[dot]com

Skip to content
README.md 7.39 KiB
Newer Older
thl-cmk's avatar
thl-cmk committed
[PACKAGE]: ../../raw/master/mkp/cisco_meraki-1.2.12-20240512.mkp "cisco_meraki-1.2.12-20240512.mkp"
thl-cmk's avatar
thl-cmk committed
[SDK]: ../../raw/master/mkp/MerkaiSDK-1.46.0-20240512.mkp "MerkaiSDK-1.46.0-20240512.mkpp"
thl-cmk's avatar
thl-cmk committed
# Cisco Meraki special agent
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
This is an enhanched version of the build in Cisco Meraki special agent.
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
<details><summary>Cisco Meraki special agent</summary>

thl-cmk's avatar
thl-cmk committed
- adds sections 
  - Appliances uplinks
  - Appliances VPNs
  - Cellular devices uplinks
  - Devices uplink info
  - Switch ports status
  - Wireless devices ethernet status
  - Wireless devices SSIDs status
- adds an API cache (can be disabled)
- adds option to use the organisation id as host prefix (usfull to sort the host automatically in organisation specific folders)
- changed include sections option to excludeed sections

thl-cmk's avatar
thl-cmk committed
</details>
thl-cmk's avatar
thl-cmk committed
<details><summary>Appliance Uplinks</summary>
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
Monitors the status of Meraki appliances (i.e. MX series) uplinks.
thl-cmk's avatar
thl-cmk committed

Includes:
 - uplink state (active, ready, not connected, failed)
 - Network name
 - internal/external IP address
 - IP address assignment method
 - H/A state / role
 - DNS server primary/secondary

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-appliance-uplink.png?raw=true "Appliance uplink")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
</details>
thl-cmk's avatar
thl-cmk committed
<details><summary>Appliance VPNs</summary>

thl-cmk's avatar
thl-cmk committed
Monitor the status VPN of meraki MX appliances.

Includes:
 - state (reachable, unreachable)
 - type (Meraki VPN Peer, third party VPN Peer)
 - mode (hub, )
 - used uplinks
 - local public IP
 - peer IP address (if available)
thl-cmk's avatar
thl-cmk committed

Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-appliance-vpn.png?raw=true "Appliance VPN")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
</details>
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
<details><summary>Device Info</summary>

thl-cmk's avatar
thl-cmk committed
Extends the existing device info inventory plugin by:

 - adding host labels
   - cmk/meraki: This label is set to "yes" for all Meraki devices
   - cmk/meraki/device_type: This label is set to the Meraki product type to which the device belongs, such as "switch" or "wireless".
   - cmk/meraki/net_id: This label is set to the network id the Meraki device belongs to.
   - cmk/meraki/net_name: This label is set to the network name the Meraki device belongs to.
   - cmk/meraki/org_id: This label is set to the organisation id the Meraki device belongs to.
   - cmk/meraki/org_name: This label is set to the organisation name the Meraki device belongs to.
- extending the inventory by adding
   - the manufacturer
   - the network name 
- moving the software part of the inventory to Software -> Applications -> Cisco Meraki Cloud -> Device Info

thl-cmk's avatar
thl-cmk committed
</details>
<details><summary>Device Status</summary>

thl-cmk's avatar
thl-cmk committed
Extends the existing plugin by:

- adding upper levels for device last reported
- adding WATO to map device state to monitoring state
- adding a service to monitor power supplys
- adding found power supplys to the inventory
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-power-supply.png?raw=true "Power supply")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-power-supply-inv.png?raw=true "Power supply inventory")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
</details>
<details><summary>Device Uplinks</summary>

thl-cmk's avatar
thl-cmk committed
Adds uplink information under Networking -> Device uplinks to the inventory. This Includes
- Interface name
- Protocol (IPv4/IPv6)
- IP address
- Gateway
- Public address
- Assignment mode

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-device-uplinks-inv.png?raw=true "Device uplinks inventory")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
</details>
<details><summary>Licenses Overview</summary>

thl-cmk's avatar
thl-cmk committed
Extends/changes the existing license overview plugin by
- changes Expiration date format from US (%b %d, %Y)  to ISO (%Y-%m-%d)
- changes remaining time (WATO) from Age (Days, Hours, Minutes, Seconds) to Days only
- adds discovery rule for ITEM variant (Org Name/Org ID - this  is the default, Org Name, Org ID) information missing in the item can be shown in the info line (default)
- adds ORG_ID, ORG_NAME to the Details
- adds Metrics for remaining time and # of licensed devices
- adds perfometer with remaining time and # of licensed devices
- adds WATO option for License state is not ok -> default to WARN
- adds licensed devices overview to the inventory

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-license-overview.png?raw=true "License overview")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-license-overview-inv.png?raw=true "License overview inventory")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
</details>

<details><summary>Networks</summary>

Adds Meraki Networks (Locations) to the inventory:
- Organisation ID	
- Organisation Name	
- Network ID	
- Network Name	
- Time Zone	
- Product types	
- Tags	
- Notes	
- Enrollment string	
- Is bound to template	
- URL

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-networks-inv.png?raw=true "Networks inventory")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
</details>

<details><summary>Organisation API</summary>

Monitors the state of the Meraki REST-API per organisation. Includes:

- Status (enabled/disabled)
- Organisation ID
- Organisation Name
thl-cmk's avatar
thl-cmk committed
- Number of API requests
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-org-api.png?raw=true "Organisation API")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-org-api-detail.png?raw=true "Organisation API")

thl-cmk's avatar
thl-cmk committed
</details>

<details><summary>Switch Port Status</summary>

thl-cmk's avatar
thl-cmk committed
Monitors the state of Meraki switch ports. Includes:

- Admin status (enabled/disabled)
- Operational status (connected/not connected)
- Speed in Gbps/Mbps
- Duplex (full/half)
- Number of Clients
- UP-Link (yes/no)
thl-cmk's avatar
thl-cmk committed
- Traffic counters (in/out)

thl-cmk's avatar
thl-cmk committed
**Note**: To use the traffic counters, the API cache needs be disabled, and the generation of the perfdata must be enabled in WATO.
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-port-status.png?raw=true "Switch port status")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
Adds the CDP and LLDP cache to the inventory.

thl-cmk's avatar
thl-cmk committed
Networking -> CDP cache -> CDP neighbours
thl-cmk's avatar
thl-cmk committed
- Neighbour name	
- Neighbour port	
- Local port	
- Neighbour address	
- Capabilites	
-	Neighbour platform

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-cdp-cache-inv.png?raw=true "CDP cache inventory")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
Networking -> LLDP cache -> LLDP neighbours
- Neighbour Name
-	Neighbour Port
-	Local Port	
- Neighbour Address	
- Neighbour Id
- Capabilities
-	Port Description
- System Description

thl-cmk's avatar
thl-cmk committed
Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-lldp-cache-inv.png?raw=true "LLDP cache inventory")
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
</details>
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
<details><summary>Wireless Devices Status</summary>

Monitors the state of Meraki SSIDs. Includes:
- Name
- State (enabled/disabled)
- Visible (yes/no)
- Broadcasting (yes/no)
- BSSID
- Band (2.4 GHz/5 GHz)
- Channel
- Channel width in MHz
- Power in dBm

Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-wireless-ssid.png?raw=true "Wireless device SSID status")
thl-cmk's avatar
thl-cmk committed

</details>

<details><summary>Wirelss Ethernet Status</summary>

Monitors the ethernet port(s) of wireless devices. Includes:

-	Speed in GBit/s
- Duplex (full/half)
- Power mode (full/ )
- AC state (connected/not connected)
- PoE state (connected/not connected)
- PoE standard

Sample output

thl-cmk's avatar
thl-cmk committed
![sample output](img/meraki-wireless-port.png?raw=true "Wireless device port status")
thl-cmk's avatar
thl-cmk committed

</details>

thl-cmk's avatar
thl-cmk committed
<details><summary>Sensor Readings</summary>
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
Removed, already part of CMK.

thl-cmk's avatar
thl-cmk committed
</details>

---
### Download
* [Download latest mkp file][PACKAGE]
thl-cmk's avatar
thl-cmk committed
* [Download the Cisco Merkai SDK mkp file][SDK]
thl-cmk's avatar
thl-cmk committed

**Note**: before you update to a newer version, always check the [CHANGELOG](CHANGELOG). There migth be incompatible changes.
                        
---
### Installation

You can install the package by uploading it to your CheckMK site and as site user run 
```
mkp add PAKAGE_NAME.mkp
mkp enable PAKAGE_NAME VERSION
```

In the Enterprise/Free/Cloud edition of CheckMK you can use the GUI to install the package (_Setup_ -> _Extension Packages_ -> _Upload package_)

---
### Want to Contribute?

Nice ;-) Have a look at the [contribution guidelines](CONTRIBUTING.md "Contributing")