From 96056db0720a802b364ff921370fe2b099be52e7 Mon Sep 17 00:00:00 2001 From: Eli Winderickx Date: Mon, 8 Jul 2024 20:09:35 +0200 Subject: [PATCH] Zabbix in Docker: - Cover - Proxy + Agent aangevuld --- posts/24-07-08-ZabbixInDocker.md | 29 ++++++++++++++++++++++++++++- public/AddZabbixProxy.png | Bin 0 -> 20334 bytes 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 public/AddZabbixProxy.png diff --git a/posts/24-07-08-ZabbixInDocker.md b/posts/24-07-08-ZabbixInDocker.md index 3da5c44..4fcc38c 100644 --- a/posts/24-07-08-ZabbixInDocker.md +++ b/posts/24-07-08-ZabbixInDocker.md @@ -104,8 +104,35 @@ Met containers is dat niet altijd duidelijk naar welk IP-adres we willen verbind ```bash docker network create --subnet 172.19.0.0/16 --ip-range 172.19.240.0/20 zabbix-proxy docker run --name some-zabbix-proxy-sqlite3 --init -d \ +-e -e ZBX_HOSTNAME=remote-proxy -e ZBX_SERVER_HOST=host.containers.internal:11051 \ --network=zabbix-proxy \ -p 11055:10051 \ zabbix/zabbix-proxy-sqlite3:latest -``` \ No newline at end of file +``` + +### De agent +Om ons verhaal goed af te maken, gaan we natuurlijk ook een agent installeren in het netwerk van de proxy. Daar horen nog een paar opties bij. Op moment van schrijven is 6.4 nog de laatste versie van de Zabbix Agent beschikbaar. + +```bash +docker run --name some-zabbix-agent -e ZBX_HOSTNAME="my-agent" \ +-e ZBX_SERVER_HOST=host.containers.internal -e ZBX_SERVER_PORT=11055 \ +--network=zabbix-proxy \ +--init -d zabbix/zabbix-agent2:latest +``` + +## Nu naar de webinterface +Als je goed gevolgd hebt, zijn alle containers actief. Dat betekent ook dat de Zabbix web interface beschikbaar moet zijn op [localhost](http://localhost:8080). Je kan daar nu aanmelden met de standaard logingegevens: Admin / zabbix + +Onder Administration -> Proxies kan je nu een nieuwe Proxy aanmaken. Het belangrijkste is hier is de juiste naam (`ZBX_HOSTNAME`) in te geven en ook de mode op `active` laten staan. Als je de proxy goed toegevoegd hebt, staat de status op Online, version op 7.0.0. + +![](./AddZabbixProxy.png) + +Nu de Proxy in orde is, kunnen we de agent ook toevoegen. Dit doen we onder `Data collection` -> `Hosts`. Hier moeten we een paar gegevens ingeven om dit werkende te krijgen: +- Host name (`ZBX_HOSTNAME`) +- Host groups (`Linux servers`) +- Proxy (`remote-proxy`) +- Templates (`Linux by Zabbix agent active`) + +## Proficiat! +Je hebt nu een werkende Zabbix installatie! Nu kan je beginnen met alles te monitoren. Dus voeg nieuwe hosts toe, link templates en exploreer. Dit is een uitstekend moment om eens na te gaan welke de nieuwe features zijn in Zabbix 7.0. Weet je hier niet goed? Dan is hier een [cheat sheet](https://www.zabbix.com/whats_new_7_0). \ No newline at end of file diff --git a/public/AddZabbixProxy.png b/public/AddZabbixProxy.png new file mode 100644 index 0000000000000000000000000000000000000000..cb45ca911e6bc84260509799dbf841b0585b4d48 GIT binary patch literal 20334 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 literal 0 HcmV?d00001