Monitorování Dockeru pomocí Zabbixe

Z Wiki PCiNET 08 spol. s r.o.
Skočit na navigaci Skočit na vyhledávání

Cílem je monitorovat stav dockeru a kontejnerů pomocí zabbixe.

Prvním krokem je nahrát šablonu, která je klasicky pro agenta2 do frontendu Zabbixe.

Výchozím umístěním docker.sock je /var/run/docker.sock, ale někdy může být potřeba to změnit, což lze v souboru /etc/zabbix/zabbix_agent2.d/plugins.d/docker.conf tím, že odkomentujeme řádek Plugins.Docker.Endpoint=unix:///var/run/docker.sock a uvedeme správnou cestu, který lze vyhledat příkazem cd / a následně find-name docker.sock:

### Option: Plugins.Docker.Endpoint
# Docker API endpoint.
#
# Mandatory: no
# Default: unix:///var/run/docker.sock
# Plugins.Docker.Endpoint=unix:///var/run/docker.sock

Dále je potřeba přidat uživatele zabbix do skupiny docker, jinak hlási chyby a monitoring nefunguje:

[Docker] cannot fetch data: Get http://1.28/info: dial unix /var/run/docker.sock: connect: permission denied
ZBX_NOTSUPPORTED: Cannot fetch data.

Tímto příkazem přidáme uživatele zabbix do skupiny docker:

usermod -aG docker zabbix

Někdy je potřeba ho spustit ve složce /usr/sbin/ (CD /usr/sbin/ ) příkazem ./usermod -aG docker zabbix

Teď už jen stačí přidat šablonu dockeru k monitorovanému zařízení a vše by mělo fungovat. Samozřejmě je potřeba mít na serveru zabbix agenta v2, s v1 to nefunguje.