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 6.59 KiB
Newer Older
thl-cmk's avatar
thl-cmk committed
[PACKAGE]: ../../raw/master/mkp/cisco_meraki-1.2.9-20240202.mkp "cisco_meraki-1.2.9-20240202.mkp"
thl-cmk's avatar
thl-cmk committed
[SDK]: ../../raw/master/mkp/MerkaiSDK-1.39.0-202311-10.mkp "MerkaiSDK-1.39.0-202311-10.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 appliance (i.e. MX series) uplinks.

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
</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
</details>
<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
</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
</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

</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

</details>

<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

</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

</details>

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

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

- Status (enabled/disabled)
- Organisation ID
- Organisation Name

</details>

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

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

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

</details>

---
### Download
* [Download latest mkp file][PACKAGE]
thl-cmk's avatar
thl-cmk committed
* [Download the latest 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")

---
### Check Info

The plugin creates the service **_SERVICENAME_** for each discovered FOR WHAT with the **_HOW_TO_BUILD_THE_ITEM_** as item

<details><summary>Montoring states</summary>

| State | condition | WATO | 
| ------ | ------ | ------ |
| WARN | condition 1 | yes |
| CRIT | condition 2 | no |
| WARN/CRIT | condition 3 | no |

</details>

<details><summary>Perfdata</summary>

| Metric | Unit | Perfometer |
| ------ | ------ | ------ |
| METRIC 1 | bit/s | yes |
| METRIC 2 | C | yes |
| METRIC 3 | V | no |

</details>

---
### WATO
<details><summary>Service monitoring rule</summary>

| Section | Rule name |
| ------ | ------ |
| Networking | NAME_OF_THE_RULE  |

| Option | Defailt value |
| ------ | ------ |
| OPTION 1 | 10/50|
| OPTION 2 | 70/90 |
| OPTION 3 | CHOICE 1 |
| OPTION 4 | disabled |

</details> 

<details><summary>Discovery rule</summary>

| Section | Rule name |
| ------ | ------ |
| Discovery of individual services | NAME_OF_THE_RULE  |

| Option | Defailt value |
| ------ | ------ |
| OPTION 1 | disabled |

</details> 

<details><summary>HW/SW inventory rules</summary>
The inventory plugin is not configurable.
</details> 

---
### Sample Output

Sample output

![sample output](/img/sample.png?raw=true "sample output")

Sample output details

![sample output details](/img/sample-details.png?raw=true "sample output details")