Mailcow-CheckMK/README.md

95 lines
3.2 KiB
Markdown

# Mailcow-CheckMK
## CheckMK Special Agent for Mailcow
Monitors various aspects of a Mailcow instance:
Email domains with quota usage, number of mailboxes, number of aliases
Mailboxes with quota usage, number of messages, last logins via IMAP/POP3/SMTP
## Caveats:
Tested only with dockerized versions of Mailcow
Tested with Mailcow version 2022-07a and higher
Please feel free to add other working environments via review/email.
## Upgrade from older MKPs (before 1.2.0):
If you upgrade from a already installed version before 1.2.0, you have to re-create your rules for the "Mailcow Server Information" (reason: massive parameter changes).
## Steps to accomplish this without problems:
1. Take a screenshot of your settings in the above mentioned ruleset
2. Assure that you have access to the API keys you used within the current rules
3. Delete all rules for "Mailcow Server Information"
4. Install and enable the new MKP
5. Re-create your rules with the previously saved information from steps 1 and 2
6. Apply your changes
## General installation instructions:
1. Upload and enable the MKP
2. Apply changes
3. Click Setup, search for "Mailcow"
4. Click on "Mailcow Server Information" below "Other integrations"
5. Create a new rule and fill in all mandatory information (Hostname, API Key)
6. Adjust all other options to your needs
7. Bind this rule to your Mailcow host object (e.g. via "Explicit hosts")
8. If you have no host object at all, create a dummy host for this (with no IP or something like 127.0.0.2)
9. Assure that your agents settings for this host object are correct (must contain "Configured API integrations")
10. Apply your changes
11. Execute a service discovery on your Mailcow host(s) and accept the newly detected services
12. Feel free to adjust the various parameters for thresholds within the available parameter sections (Setup, "Service monitoring rules" after searching for "Mailcow")
## How to create the API Key:
1. Login to your Mailcow instance with an administrative user
2. Got to "System|Configuration"
3. Take a note of the Section "API" and expand it
4. Within the section "Read-Only Access":
4.1 Activate the checkbox "Activate API"
4.2 Take care that the IP your CheckMK server ist listed in the input field "Allow API access from these IPs/CIDR network notations"
5. Save your changes and transfer the show API key to your CheckMK instance
## Version history:
2024/01/26 1.2.0 Added password store option for the API key, added version check
2023/09/22: 1.1.4 Bugfix for the last bugfix :-)
2023/09/22: 1.1.3 Bugfix for usage calculation if quota is not set (mailboxes)
2023/09/10: 1.1.2 Checks for Solr status added
2023/08/27: 1.0.0 Section "mailcow_mailboxes" completed
2023/08/26: 0.2.2 Section "mailcow_domains" completed
2023/08/21: 0.1.0 Section "mailcow_info" completed
2023/08/20: 0.0.1 Special agent completed
## Examples how the services look like:
Services Overview:
![Services Overview](images/Mailcow-Services-Overview.png)
Service Details:
Mailcow Info:
![Service Detail Info](images/Mailcow-Info-Details.png)
Mailcow Domain:
![Service Detail Domain](images/Mailcow-Domains-Details.png)
Mailcow Mailbox:
![Service Detail User](images/Mailcow-Users-Details.png)