From 91f3ae82429bad1d2e77905d74ad613b9e881e4d Mon Sep 17 00:00:00 2001 From: Eli Winderickx Date: Sun, 6 Oct 2024 08:44:38 +0300 Subject: [PATCH 1/3] Python Zabbix_utils --- posts/24-10-05-Zabbix_Utils_in_Python.md | 100 +++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 posts/24-10-05-Zabbix_Utils_in_Python.md diff --git a/posts/24-10-05-Zabbix_Utils_in_Python.md b/posts/24-10-05-Zabbix_Utils_in_Python.md new file mode 100644 index 0000000..04cae12 --- /dev/null +++ b/posts/24-10-05-Zabbix_Utils_in_Python.md @@ -0,0 +1,100 @@ +--- +title: "Zabbix utils met Python3" +excerpt: "Eenvoudig gebruik maken van de Zabbix API" +date: "2024-10-05T21:00:00.000Z" +author: Eli Winderickx +hero_image: /cover_RHELIntro1.png +category: Zabbix,Python,Scripting +--- +# Zabbix Utils +In sommige gevallen hebben we niet meteen de mogelijkheid om data of configuratie door te sturen naar Zabbix of willen we iets geautomatiseerder gebruiken. Zabbix heeft hiervoor een heel goed gedocumenteerde API maar dat is niet altijd even gebruiksvriendelijk. + +Gelukkig heeft Zabbix hiervoor de perfecte oplossing; Een Python library. Python is een eenvoudig te leren scripttaal die wereldwijd breed gebruikt wordt door tal van gebruikers. Als jij er nog geen gebruik van maakt, zal je dat na deze post zeker wel doen! + +## Eerst een paar zaken op orde stellen +Je moet natuurlijk een paar dingen eerst installeren. Ik ga er opnieuw van uit dat je een RHEL gebasseerd OS gebruikt. Anders gaat iedere zoekmachine je wel kunnen helpen. Hier lopen we er even door: +- Python3: `dnf install python3` +- Pip: `dnf install python3-pip` +- Zabbix Utils: `pip3 install zabbix_utils` +- Wonderwords: (optioneel voor de Utils maar nodig voor het script hieronder): pip3 install wonderwords + +> Python is een heel populaire programmeer / scripttaal. Het is ook heel eenvoudig te lezen en snel te leren. Hierbij moet je vooral rekening houden dat je voldoende spaties of tabs gebruikt om aan te geven dat je nog in een functie of loop aan het werken bent. + +## Een simpel script +Nu we alles hebben, kunnen we ermee aan de slag. We beginnen met de basis van een script. Maak dus een leeg document aan en volg gerust mee. + +```python +#!/usr/bin/python3 + +# Importeer utils en wonderwords +from zabbix_utils import ZabbixAPI +from wonderwords import RandomWord + +# Variabelen +zabbix_url="https://link.to.zabbix/api_jsonrpc.php" +api_token="" +rw = RandomWord() + +# Login +api = ZabbixAPI(url=api_token) +api.login(token=api_token) +``` + +We starten hier dus met een Python script. Vervolgens importeren we de nodige bibliotheken. Onder variabelen hebben we daar dan met `zabbix_url` een pad naar onze Zabbix instantie met daarachter `api_jsonrpc.php` wat de endpoint voor de API is. + +De Token kan aangemaakt worden in Zabbix onder `User settings` door links onderaan de pagina vervolgens op `API tokens` te klikken. In het nieuwe venster kan je nu een token aanmaken. Zorg voor een duidelijke omschrijving en eventueel een vervaldatum. Zorg dat je daarna de token goed kopieert en opslaat. Je kan wel een nieuwe token genereren maar dezelfde string ga je niet meer te zien krijgen. + +> Op gebied van rechten zorgt de token voor dezelfde rechten als de user voor wie de token is aangemaakt. Als die user iets niet kan, kan de API daar geen verandering brengen. + +Voor het laatste stukje van het eerste deel gaan we de effectieve login doen. We zetten een verbinding op naar `zabbix_url` en melden dan aan met de token. + +```python +# Maak een host aan +def create_host(host_name): + result = api.host.create({ + "host": host_name, + "interfaces": [{ + "type": 1, + "main": 1, + "useip": 0, + "ip": "", + "dns": f"", + "port": "10050" + }], + "tags": [{ + "tag": "purpose", + "value": "dummy" + }], + "tls_accept": 2, + "tls_connect": 2, + "tls_psk": "", + "tls_psk_identity": "PSKIdentity", + "monitored_by": 2, + "proxy_groupid": "1", + "groups": [{ + "groupid": "26" + }], + "templates": [{ + "templateid": "10561" + }] + }) + return result +``` + +In dit script maken we een host aan met naam `host_name`. We definieƫren een Zabbix interface aan die op DNS zal verbinden op poort 10050. We kunnen daaronder tags terugvinden. Hier is er slechts eentje maar dat kunnen er veel meer zijn. Daarna stellen we ook een preshared key in. Dit zorgt ervoor dat we meteen kunnen genieten van een beveiligde verbinding. + +Het volgende stuk geven we aan dat de host door een Proxy group wordt beheerd en we geven ook mee welke group dat is. Tot slot geven we ook aan tot welke groep het toestel behoort en welke templates dat gelinkt mogen worden. Hier gebruik ik een zelf aangemaakte group maar de `templateid` kan je gerust gebruiken. + +> Als je wilt weten welke `groupid` of `templateid` je moet gebruiken, kan je naar die entiteit gaan en kan je in de URL meestal die code terugvinden. + +```python +# Genereer 20 nieuwe hosts met een unieke naam +for _ in range(20): + word1=rw.word() + word2=rw.word() + host_name = f"{word1.capitalize()} {word2.capitalize()}" + result = create_host(host_name) + print(f"Created host: {host_name} - Result: {result}") +``` + +Om het script nu bruikbaar te maken, gaan we hier een kleine loop maken die 20 keer twee willekeurige woorden gaat genereren om daar dan een host van te maken. Het resultaat krijgen we daarna ook gewoon terug. \ No newline at end of file From 519ae7f77c679f41eaa0d790df8f92c19a79cb79 Mon Sep 17 00:00:00 2001 From: Eli Winderickx Date: Sun, 13 Oct 2024 08:29:31 +0000 Subject: [PATCH 2/3] Upload New File --- public/ZabbixUtils_Cover.png | Bin 0 -> 81405 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 public/ZabbixUtils_Cover.png diff --git a/public/ZabbixUtils_Cover.png b/public/ZabbixUtils_Cover.png new file mode 100644 index 0000000000000000000000000000000000000000..f2e605ea454ef5266a70dc9a9dd7fae6a640e70d GIT binary patch literal 81405 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 literal 0 HcmV?d00001 From b82f1f0cf3f5e0e95b1feede3f9687297a7926e9 Mon Sep 17 00:00:00 2001 From: Eli Winderickx Date: Sun, 13 Oct 2024 08:29:53 +0000 Subject: [PATCH 3/3] Update file 24-10-05-Zabbix_Utils_in_Python.md --- posts/24-10-05-Zabbix_Utils_in_Python.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/posts/24-10-05-Zabbix_Utils_in_Python.md b/posts/24-10-05-Zabbix_Utils_in_Python.md index 04cae12..ac0269a 100644 --- a/posts/24-10-05-Zabbix_Utils_in_Python.md +++ b/posts/24-10-05-Zabbix_Utils_in_Python.md @@ -3,7 +3,7 @@ title: "Zabbix utils met Python3" excerpt: "Eenvoudig gebruik maken van de Zabbix API" date: "2024-10-05T21:00:00.000Z" author: Eli Winderickx -hero_image: /cover_RHELIntro1.png +hero_image: /ZabbixUtils_Cover.png category: Zabbix,Python,Scripting --- # Zabbix Utils @@ -11,6 +11,8 @@ In sommige gevallen hebben we niet meteen de mogelijkheid om data of configurati Gelukkig heeft Zabbix hiervoor de perfecte oplossing; Een Python library. Python is een eenvoudig te leren scripttaal die wereldwijd breed gebruikt wordt door tal van gebruikers. Als jij er nog geen gebruik van maakt, zal je dat na deze post zeker wel doen! +Wat je verder moet weten over de Zabbix utils is dat deze library gebruikt maakt van alles wat Zabbix te bieden heeft. Iedere beschikbare API call kan met deze tools gemaakt worden. Dat varieert dus van configuratie wijzigingen doorvoeren, tot wijzigingen aan jouw Zabbix installatie zelf tot zelfs verzamelde gegevens uitlezen. Van zodra je een beetje vertrouwd bent met deze library, kan je er van zelf mee aan de slag. Voor die verdere stappen verwijs ik je graag door naar de [documentatie](https://www.zabbix.com/documentation/current/en/manual/api). Voor nu zullen we al even naar een eenvoudig voorbeeld kijken. + ## Eerst een paar zaken op orde stellen Je moet natuurlijk een paar dingen eerst installeren. Ik ga er opnieuw van uit dat je een RHEL gebasseerd OS gebruikt. Anders gaat iedere zoekmachine je wel kunnen helpen. Hier lopen we er even door: - Python3: `dnf install python3` @@ -97,4 +99,6 @@ for _ in range(20): print(f"Created host: {host_name} - Result: {result}") ``` -Om het script nu bruikbaar te maken, gaan we hier een kleine loop maken die 20 keer twee willekeurige woorden gaat genereren om daar dan een host van te maken. Het resultaat krijgen we daarna ook gewoon terug. \ No newline at end of file +Om het script nu bruikbaar te maken, gaan we hier een kleine loop maken die 20 keer twee willekeurige woorden gaat genereren om daar dan een host van te maken. Het resultaat krijgen we daarna ook gewoon terug. + +Dat was het al! Nu hebben we een volledig werkend script. Dit kan je uitvoeren met `python3 ` en verder is het nu gewoon doen! Veel succes en happy monitoring!