This is python script which provides synchronisation between Zabbix IT Services and Cachet
The idea of Zabbix-Cachet is providing the easiest way to export Zabbix terms to Cachet. With this script you can maintain Cachet though Zabbix.
Zabbix-Cachet reads pre-configured Zabbix IT Services and automatically creates Cachet components. After that Zabbix-Cachet periodically checks Zabbix triggers (that linked to you IT Services) and manipulate with Cachet incidents and Component statuses based on triggers.
Zabbix-Cachet communicate with Zabbix and Cachet via API interface. To make it works you need a zabbix user with sufficient permissions to read triggers, items of services that is exported to Cachet and Cachet`s API key.
- Automatically creates Cachet Components and Components group
- Automatically creates Cachet Incidents and update them with acknowledgement messages
- Allow to specify root IT service where Zabbix-Cachet will work
- Cachet -
root_service
for zabbix-cachet script. - Bitbucket, Network Connectivity - parent services. They will be Components Groups in Cachet.
- GIT https, GIT ssh - Components in Cachet. Do not forget to set Zabbix trigger to this group.
- Cachet 2.2, 2.3
- Zabbix 2.X, 3.X, 4.0, 5.0, 6.0, 6.4, 7.0
- python 3.6+
- Create
/etc/zabbix-cachet.yml
file basedconfig-example.yml
. - Run Docker container
docker run --name zabbix-cachet -v /etc/zabbix-cachet.yml:/config.yml qk4l/zabbix-cachet
- Drink a cup of tea (optional)
- Install python package via pip
pip install zabbix-cachet
- Rename
config-example.yml
toconfig.yml
and fill a file with your settings. - Define
CONFIG_FILE
environment variable which point to yourconfig.yml
or change current work directory to folder with config - Launch
zabbix-cachet
- Add official Zabbix-Cachet PPA:
add-apt-repository ppa:reg-tem4uk/zabbix-cachet apt-get update
- Install the package:
apt-get install zabbix-cachet
- Configure it:
nano /etc/zabbix-cachet.yml
- Restart it:
systemctl enable zabbix-cachet && systemctl restart zabbix-cachet
Settings are storing in config.yml
file which should be placed in script's working directory.
If you want to use another path for config.yml
use CONFIG_FILE
environment variable.