Fungujú vaše zálohy konfigurácií sieťových zariadení? Oxidized + Zabbix
- Monitoring , Networking
- 21. februára 2025
Obsah
Oxidized je de facto štandardný open-source nástroj na zálohovanie konfigurácií sieťových zariadení. Prihlasuje sa na switche, routery a firewally — Cisco, Juniper, MikroTik, Fortinet, HPE/Aruba a desiatky ďalších —, stiahne bežiacu konfiguráciu a každú verziu uloží do Gitu. Keď zariadenie odíde alebo niekto pokazí konfiguráciu, máte poslednú funkčnú verziu aj diff toho, čo sa zmenilo.
Aspoň teoreticky. V praxi zálohy zlyhávajú potichu: zmení sa heslo, zariadenie sa vymení za nové s inou IP, SSH obmedzí ACL, aktualizácia firmvéru zmení prompt. Oxidized označí uzol ako neúspešný a pokračuje ďalej. Dozviete sa to, keď zálohu potrebujete — v najhoršom možnom momente.
Template: custom-zabbix-templates/oxidized — Zabbix 7.0 a novší, bez externých skriptov.
Čo robí
Template číta REST API Oxidized (/nodes.json, poskytuje ho oxidized-web) a pre každý uzol vytvorí:
| Položka | Význam |
|---|---|
| Configuration backup status | Výsledok poslednej zálohy: success, no_connection, never, … |
| Last backup configuration | Kedy Oxidized naposledy uložil novú verziu konfigurácie zariadenia |
A dva triggery pre každý uzol:
| Trigger | Spustí sa, keď | Závažnosť |
|---|---|---|
| No successful backups found | Stav poslednej zálohy je čokoľvek iné ako success |
Warning |
| Configuration was changed | Uložila sa nová verzia konfigurácie | Warning |
Druhý trigger je prekvapivo užitočný. Oxidized ukladá novú verziu iba vtedy, keď sa konfigurácia naozaj líši, takže trigger znamená niekto zmenil toto zariadenie. Plánované zmeny sa objavia ako očakávané udalosti; neplánované — o tretej ráno na core switchi — si zaslúžia pohľad na diff v Oxidized.
Ako to funguje
Discovery pravidlo typu HTTP agent raz za hodinu načíta {$OXIDIZED.BASE_URL}/nodes.json. Každý uzol sa stane objaveným objektom a jeho stav a čas zmeny sa premenia na položky. Nové zariadenia pridané do Oxidized sa v Zabbixe objavia automaticky, bez ručnej práce pre každé zariadenie.
Keďže údaje pochádzajú z discovery, hodnoty sa obnovujú v intervale discovery (predvolene 1 hodina). Pre zálohy je to primerané, tie aj tak zvyčajne bežia každých pár hodín. Ak chcete rýchlejšie zachytávať zmeny konfigurácie, znížte interval discovery v template.
Nastavenie
-
Uistite sa, že oxidized-web je zapnutý a dostupný zo Zabbix servera alebo proxy:
curl -s -u zabbix:secret https://oxidized.example.local/nodes.json | headWebové rozhranie Oxidized nemá vlastnú autentifikáciu, preto sa zvyčajne publikuje za Nginx alebo Traefik s basic auth — template to podporuje.
-
Importujte template (Data collection → Templates → Import,
oxidized.yaml). -
Vytvorte hosta pre samotný Oxidized (rozhranie nie je potrebné — ide o HTTP agenta) a pripojte template.
-
Nastavte makrá:
Makro Príklad Význam {$OXIDIZED.BASE_URL}https://oxidized.example.localURL webu Oxidized {$OXIDIZED.USERNAME}zabbixPoužívateľ pre basic auth (ak sa používa) {$OXIDIZED.PASSWORD}(tajné makro) Heslo pre basic auth {$OXIDIZED.NAME.MATCHES}`^(core fw)-` {$OXIDIZED.NAME.NOT_MATCHES}^lab-Preskočiť zodpovedajúce uzly Filtre podľa názvu sú regulárne výrazy — praktické na vynechanie laboratórneho vybavenia alebo zariadení, ktoré sú zámerne vypnuté.
Typické príčiny neúspešných záloh
Keď sa spustí „No successful backups found“, obvyklé príčiny sú:
- Zmenené prihlasovacie údaje na zariadení alebo v trezore hesiel, ale nie v Oxidized.
- Vymenené alebo preadresované zariadenie — inventár (
router.dbalebo zdroj, z ktorého Oxidized číta) stále ukazuje na starú IP. - Obmedzený prístup — nové ACL, management VRF alebo pravidlo firewallu blokuje SSH z hosta s Oxidized.
- Aktualizácia firmvéru zmenila CLI prompt alebo výstup a model v Oxidized treba aktualizovať.
Všetko sa dá ľahko opraviť — keď o tom viete.
Zhrnutie
- Oxidized zálohuje konfigurácie; Zabbix dohliada, aby v tom pokračoval.
- Každý uzol sa nájde automaticky, so stavom zálohy a časom poslednej zmeny.
- Upozornenia na neúspešné zálohy aj na zmeny konfigurácie — váš jednoduchý audit zmien.
- Filtrujte uzly podľa názvu a chráňte API cez basic auth.
Potrebujete pomôcť so zálohovaním sieťových zariadení, Fortinetom alebo správou switchov? Kontaktujte nás.