Ján Fečík


osobná stránka · blog

Dátum: sobota, 20. apríla 2024
Čas: 01:20:46, 1713568846, @014
Meniny má: Marcel, Hvezdoň
IP adresa: 13.58.39.23

Zabbix náš každodenný a buntu Ubuntu

Nedávno som konfiguroval v práci nový server, migroval dáta zo starého VPS a rozbiehal som na novej dedikovanej mašine všetky služby čo nám bežali na starom VPS. V Nemecku máme ďalší server na ktorom beží jedna služba a keď som bol už takto rozbehnutý, tak ten som taktiež migroval na novší s lepšími parametrami. Zároveň v tom čase vyšlo konečne aj Ubuntu 22.04 LTS a tak som ho zvolil za operačný systém, kvôli dlhšej podpore.

Harman/Kardon Sabre SB35  ·  Harman/Kardon NOVA po roku

Keďže je dobré monitorovať všetky služby, tak ma napadlo, že najlepším a hlavne lacným riešením na túto vec bude bez debaty Zabbix. V minulosti som na starom VPS rozbehal Netdata, čo síce nie je na zahodenie, ale v prípade výpadku či iných problémov je tento monitoring asi na dve veci, aspoň v tom čase bol. Neviem ako je na tom teraz, ale vtedy sa mi páčil hlavne po grafickej stránke a rozbehať ho bolo celkom jednoduché, ale nespomínam si, že by vedel ohlasovať výpadky. Preto som sa nedávno začal viac zaujímať o Zabbix a ako funguje. Našiel som aj možnosť si takýto monitoring zaplatiť, ale platiť pár desiatok € mesačne za takú službu je čistý nezmysel, keď má človek k dispozícií zdroje na to mať vlastný. Keďže nám ide hlavne o sledovanie dedikovaného servera, tak Zabbix server som umiestnil práve na server v Nemecku a tým zabezpečil, že v prípade problémov ak vypadne dedikovaný server to Zabbix okamžite ohlási. Ak by Zabbix server bežal na rovnakej mašine, ktorú treba zároveň aj sledovať, tak v prípade väčšiny problémov by sme asi neboli informovaný. Samozrejme ak server v Nemecku bude mať nejaký výpadok tak máme asi smolu, ale aj to sa dá vraj riešiť klastrom, no až tak ďaleko som sa nedostal. Raz sa k tomu ale isto dostanem a rád by som mu spravil druhú zálohu ak si to naštudujem.Zabbix náš každodenný a buntu UbuntuPrvý problém na ktorý som narazil bol ten, že Ubuntu 22.04 LTS má predvolenú verziu PHP 8.1 ak sa nemýlim a Zabbix na to nebol ešte v tom čase pripravený. Čiže jediná možnosť bola si to spojazdniť mimo balíčkov, spojazdniť si staršiu verziu PHP a fungovať takto. Pred dvoma týždňami ale konečne vydali balíček aj pre Ubuntu 22.04 LTS vo verzii Zabbix 6.2.0rc2 a mohol som ho nainštalovať, keďže sa mi nechcelo ísť mimo balíčkov a riešiť možno nejaké krkolomné aktualizovanie. Už som túto verziu medzi tým aktualizoval na verziu 6.2.0rc3, takže na ňom asi tvrdo pracujú. Na danej mašine mám aj tak všetky verzie PHP od verzie 5.6 až po 8.1, takže v tom by problém asi nebol, ale nemám skúsenosť s aktualizovaním mimo balíčkov, tak sa mi s tým nechcelo babrať a bola by to asi aj tak strata času.

Po nainštalovaní a nastavení Zabbix serveru som sa vrhol na inštalovanie Zabbix agentov na všetky mašiny. Samozrejme hlavnou časťou je nový dedikovaný server, ale keďže je Zabbix server v mojej správe, tak prečo tam nepridať všetko čo máme, čiže spolu 15 serverov vrátane Zabbix servera. Týmto sme získali základný monitoring všetkých serverov, čo je síce fasa, ale chcelo by to niečo viac. Na každom nám beží Apache alebo Nginx, MySQL a PHP, tak prečo nesledovať aj tieto služby. Rozbehať sledovanie Apache a Nginx bola malina cez ten ich server status, rovnako na tom je aj status page v PHP-FPM. V Zabbixe stačilo len zapnúť jednotlivé monitorovania a nastaviť ich, to by mal zvládnuť každý aj menej zbehlý človek si myslím, ja sa nepovažujem za nejakého Linux guru a zvládol som to bez problémov. Narazil som ale na problém so sledovaním sieťovej prevádzky na dedikovanej mašine. To sa mi podarilo vyriešiť pomocou UserParameter pre bond a sieťovú prevádzku po reštartovaní Zabbix agenta začal Zabbix server okamžite sledovať. Na rade bolo sledovanie MySQL a tam som sa poriadne vytrápil, nešlo to a nešlo. Nakoniec som prišiel na to, že Zabbix agent nemal oprávnenie k MySQL, kde som jednoducho do UserParameter pre mysql pridal parameter defaults-file kde bola cesta k my.cnf s nastavením mena a hesla do databázy. Po reštartovaní Zabbix agenta začalo okamžite sledovať aj detailné štatistiky MySQL na dedikovanej mašine a problém bol vyriešený.

Ďalej ma napadlo, že by bolo celkom fajn sledovať aj teplotu procesorov a diskov na dedikovanej mašine. Pokúšal som sa nájsť ako na to, keďže ako sledovať vyššie spomenuté služby sú bežné veci čo sa dajú dohľadať na internete a tak som si vytvoril vlastný Template v Zabbixe a nastavil ďalšie tri UserParameter pre sledovanie teploty pomocou príkazu sensors, kde len dolujem celkovú teplotu pre CPU1, CPU2 a SSD disk. Čakal som nejaké veľké čarovanie okolo toho, ale bola to celkom jednoduchá záležitosť. Vytvoril som si k tomu len trigger aby v prípade zvýšenia teploty poslalo varovnú správu a tak budem vedieť, že sa asi niečo deje.Zabbix náš každodenný a buntu UbuntuKeď som pri posielaní týchto varovný správ pomocou triggrov, tak používame Slack a prečo ho k tomu nevyužiť. Čiže som v Zabbixe všetko zakázal a nechal povolený len Slack, ku ktorému som vytvoril Webhook, nastavil som v Zabbixe token a bolo vybavené. Okamžite pri nejakom probléme ide varovanie do Slacku a keďže ten mám aj v mobile, tak som / sme aj so šéfom okamžite informovaný o nejakom probléme.

Každopádne je to určite užitočný nástroj a človek vie v podstate okamžite, že nastal nejaký prúser. Na takýto Zabbix server si ale treba pripraviť nejakú kapacitu, lebo za skoro 20 dní má databáza Zabbix servera vyše 800 MB a predpokladám, že ak sa s tým začnem časom viac hrať a pridávať ďalší zber kadejakých zaujímavých dát, tak sa táto veľkosť začne asi slušne zvyšovať. Pre dedikovaný a Zabbix server sa takto generuje 37 grafov a pre ostatné menšie VPSka 14 grafov, keďže tam toho beží trošku menej. Časom určite začnem sledovať aj kadejaké ďalšie zaujímavé údaje ak bude viac času, ale toto na začiatok stačí.

Článok bol zobrazený 1522 krát a obsahuje 972 slov
Pridané 11. júla 2022