Slajd 1/22
Systemy NMS – LibreNMS i The Dude
Cel slajdu: Przedstawienie architektury, możliwości i wdrożenia wiodących platform monitorowania infrastruktury sieciowej: otwartoźródłowego LibreNMS oraz dedykowanego MikroTik The Dude.

Zintegrowane platformy zarządzania siecią klasy NMS

System klasy NMS integruje protokoły SNMP, ICMP i Syslog w spójne środowisko operatorskie, oferując automatyczne wykrywanie topologii, zaawansowane alarmowanie oraz wizualizację trendów.

  • Zakres modułu: Szczegółowa analiza dwóch odmiennych filozofii: uniwersalnego LibreNMS (Open Source) oraz The Dude (optymalizowanego pod ekosystem MikroTik RouterOS)
  • Architektura LibreNMS: Poller w języku Python/PHP, bazy MariaDB/Redis, silnik RRDtool, automatyczne wykrywanie LLDP/CDP i potężny silnik alertów
  • Charakterystyka The Dude: Wbudowany serwer RouterOS, natywny klient desktopowy, dynamiczne mapy sieci i sondy usługowe (probes)
  • Porównanie i integracja: Zestawienie z systemami Zabbix, Prometheus/Grafana oraz integracja ze źródłem prawdy NetBox i systemami zgłoszeniowymi ITSM
Platforma NMS (Network Management System): Centralny system oprogramowania odpowiedzialny za nieprzerwany nadzór, inwentaryzację, analizę wydajności i alarmowanie o zdarzeniach w sieci teleinformatycznej.
Wprowadzenie do systemów NMS Systemy NMS – LibreNMS i The Dude LibreNMS • Open Source (GPLv3) • Autoodkrywanie CDP/LLDP • Wsparcie > 3000 modeli PHP, MariaDB, RRDtool The Dude • Ekosystem MikroTik • Dynamiczna mapa 2D • Klient desktop Win32 Serwer w RouterOS Ecosystem NMS • Zabbix & Prometheus • Oxidized & NetBox • Weathermap i Grafana Integracja i AIOps Cel modułu: Od pytań wiersza poleceń do orkiestracji wielotysięcznej infrastruktury • Poznamy architekturę systemów NMS i wzorzec zarządzania FCAPS (ISO/IEC 7498-4). • Wdrożymy i skonfigurujemy system LibreNMS z autoodkrywaniem topologii i regułami alertów. • Przeanalizujemy specyfikę The Dude oraz porównamy wiodące platformy na rynku teleinformatycznym.
Slajd 2/22
Spis treści prezentacji 4
Cel slajdu: Przedstawienie struktury zagadnień modułu czwartego dedykowanego systemom zarządzania siecią i narzędziom telemetrycznym.

Układ materiału i plan wykładu

Materiał obejmuje pełny cykl życia systemu NMS: od wielowarstwowej architektury, przez konfigurację LibreNMS i The Dude, po skalowanie klastrowe i integrację ekosystemu.

  • Blok 1: Architektura i LibreNMS: Budowa modułowa NMS, geneza i komponenty LibreNMS, dashboardy, auto-discovery i wykresy wydajności
  • Blok 2: Zaawansowane funkcje LibreNMS: Silnik reguł alarmowych, Weathermap, centralizacja Syslog/Traps, API REST, RBAC i backup Oxidized
  • Blok 3: MikroTik The Dude: Architektura pakietu RouterOS, mapy topologii, sondy pomiarowe, powiadomienia oraz ograniczenia platformy
  • Blok 4: Porównanie, telemetria i wdrożenie: LibreNMS vs The Dude vs Zabbix, drzewo decyzyjne, stos Prometheus/Grafana, NetBox oraz sizing sprzętowy
Plan dydaktyczny modułu 4: Nabycie umiejętności doboru, instalacji, konfiguracji oraz integracji zaawansowanych systemów monitoringu sieci w przedsiębiorstwie.
Plan prezentacji Plan prezentacji 4: Systemy NMS (55 slajdów) 1. Architektura NMS i LibreNMS • Model FCAPS, komponenty stosu • Wymagania, instalacja, GUI, autoodkrywanie 2. Telemetria i Alerty w LibreNMS • Wykresy RRD, silnik alarmów, reguły • Mapy Weathermap, REST API, trapy i Syslog 3. MikroTik The Dude • Geneza, serwer w RouterOS, klient Win32 • Sondy (probes), mapy, wykresy i integracja 4. Porównanie i Alternatywy • LibreNMS vs The Dude vs Zabbix vs Nagios • Drzewo decyzyjne wyboru, Prometheus + Grafana 5. Warsztat laboratoryjny, diagnostyka i podsumowanie • Integracja z Oxidized (kopie Git) i NetBox (IPAM) • Ćwiczenia praktyczne: dodawanie hostów, alerty, validate.php, planowanie pojemności • Słownik pojęć i pytania kontrolne przygotowujące do egzaminu
Slajd 3/22
Architektura wielowarstwowa współczesnego systemu NMS
Cel slajdu: Poznanie warstwowej budowy platformy NMS oraz separacji procesów gromadzenia danych, ich przetwarzania i prezentacji.

Cztery warstwy funkcjonalne nowoczesnej platformy nadzoru

Nowoczesne systemy NMS odchodzą od monolitycznej konstrukcji na rzecz rozproszonych architektur modułowych zapewniających wysoką skalowalność i odporność na awarie.

  • Warstwa akwizycji danych (Collection Layer): Moduły pollerów odpytujące urządzenia przez SNMP/ICMP oraz usługi nasłuchujące komunikatów pasywnych (Syslog, SNMP Traps, IPFIX)
  • Warstwa przetwarzania i buforowania (Processing Layer): Kolejki zadań w pamięci RAM (Redis), dyspozytory procesów (Dispatcher) oraz silniki ewaluacji reguł alarmowych
  • Warstwa składowania (Storage Layer): Baza relacyjna (MariaDB/PostgreSQL) dla konfiguracji i inwentaryzacji; baza szeregów czasowych (RRDtool/TSDB) dla metryk liczbowych
  • Warstwa prezentacji i API (Presentation Layer): Interfejs webowy GUI, responsywne dashboardy, dynamiczne mapy topologii oraz interfejs programistyczny REST API
Warstwowa architektura NMS: Wzorzec projektowy dzielący system monitorowania na niezależne moduły akwizycji, analityki, składowania i prezentacji połączone magistralą danych.
Model FCAPS i architektura NMS Model FCAPS (ISO/IEC 7498-4) i warstwy systemu NMS F - Fault Zarządzanie awariami Detekcja, Trapy, Alerty, Syslog C - Config Zarządzanie konfiguracją Kopie backup, Git (Oxidized) A - Accounting Rozliczenia i zasoby Billing portów, 95th percentile P - Perform Zarządzanie wydajnością Wykresy RRD, Trendy, SLA S - Security Bezpieczeństwo dostępu RBAC, 2FA, LDAP, Audit log Warstwy funkcjonalne nowoczesnej platformy NMS • Warstwa akwizycji danych (Collector/Poller): Odpytywanie SNMP, odbiór Trapów, Syslog, gNMI, API REST. • Warstwa przetwarzania i składowania: Baza relacyjna (MariaDB/PostgreSQL) oraz szeregi czasowe (RRDtool/TSDB). • Warstwa logiki i reguł (Alerting Engine): Ciągła ewaluacja progów, korelacja zdarzeń i eskalacja incydentów. • Warstwa prezentacji (GUI & API): Pulpity nawigacyjne (Dashboards), dynamiczne mapy topologiczne, raporty i REST API.
Slajd 4/22
LibreNMS – filozofia projektu, kluczowe możliwości i architektura komponentów
Cel slajdu: Przedstawienie genezy, założeń projektowych oraz modułowej struktury oprogramowania LibreNMS.

Otwarty system monitoringu i podział na komponenty

LibreNMS to wiodący otwartoźródłowy (licencja GPLv3) system monitorowania sieci, powstały jako fork Observium, rozwijany przez społeczność inżynierów z całego świata.

  • Filozofia automatyzacji: Maksymalne uproszczenie pracy administratora – po dodaniu adresu IP i poświadczeń SNMP system automatycznie rozpoznaje model, moduły, porty i sensory
  • Stos technologiczny: Backend napisany w PHP (framework Laravel) oraz Pythonie; relacyjna baza danych MariaDB; pamięć podręczna i kolejki w Redis; wykresy w RRDtool
  • Wsparcie dla producentów: Wbudowana obsługa setek vendorów (Cisco, MikroTik, Juniper, HP/Aruba, Linux, Windows) bez konieczności ręcznego definiowania OID
  • Wymagania systemowe: System Linux (rekomendowany Ubuntu LTS / Debian), minimum 4 GB RAM i 2 rdzenie CPU dla małych instalacji; skalowanie do tysięcy węzłów
LibreNMS: Otwartoźródłowy, bezagentowy system klasy NMS zorientowany na automatyczne wykrywanie urządzeń sieciowych i kompleksową telemetrię opartą na SNMP i Syslog.
Komponenty architektury LibreNMS Stos technologiczny i przepływ danych w LibreNMS Web & API • Nginx / Apache • PHP-FPM 8.x • Laravel Framework Port TCP 80/443 Silnik Poller • poller-wrapper.py • Dispatcher service • Kolejka Redis Cyklicznie co 5m/1m Magazyn Danych • MariaDB (Tabele) • RRDtool (.rrd pliki) • Bufor rrdcached Zapis na NVMe/SSD Zdarzenia Zewn. • snmptrapd (UDP 162) • syslog-ng (UDP 514) • Silnik alertów Reakcja w czasie rzecz. Separacja ról w nowoczesnej architekturze LibreNMS • Poller & Discovery: Skrypty w PHP i Pythonie odpytują agentów i aktualizują strukturę bazy. • RRDcached: Niezbędny demon buforujący operacje I/O w pamięci RAM przed zapisem plików RRD na dysk. • Dispatcher Service (Python): Zastępuje tradycyjny cron, dynamicznie przydzielając zadania przez Redis. Umożliwia horyzontalne skalowanie monitoringu do setek tysięcy portów sieciowych.
Slajd 5/22
Uruchomienie i pierwsze kroki w panelu LibreNMS
Cel slajdu: Zapoznanie się z procedurą pierwszego uruchomienia, interfejsem graficznym oraz narzędziem diagnostycznym validate.php.

Nawigacja w GUI, konfiguracja wstępna i weryfikacja poprawności

Panel webowy LibreNMS zapewnia przejrzysty wgląd w stan całej infrastruktury; wbudowany instalator ułatwia inicjalizację bazy danych i konfigurację konta administratora.

  • Kreator webowy: Weryfikacja rozszerzeń PHP, konfiguracja połączenia z MariaDB, utworzenie użytkownika administracyjnego i wygenerowanie klucza aplikacji
  • Struktura interfejsu: Górny pasek nawigacyjny: Devices (urządzenia), Ports (porty), Services (usługi), Alerts (alarmy), Overview (dashboardy) oraz Settings
  • Pulpit główny (Dashboard): Możliwość definiowania widoków operatorskich z widgetami: stan ogólny (Device Status), alerty aktywne, mini-wykresy łączy, mapy
  • Skrypt diagnostyczny validate.php: Kluczowe narzędzie wiersza poleceń (su - librenms && ./validate.php) weryfikujące uprawnienia plików, stan bazy i zgodność wersji
Skrypt validate.php: Wbudowane w LibreNMS zautomatyzowane narzędzie audytu konfiguracji systemowej, wykrywające błędy bazy danych, uprawnień crona i zależności PHP.
Interfejs graficzny LibreNMS Układ pulpitu nawigacyjnego i menu LibreNMS LibreNMS Dashboard Devices Ports Alerts Routing Settings Alerts (3) Widżet: Device Status • Dostępne (UP): 142 • Awaria (DOWN): 2 • Wyciszone (Mute): 1 Widżet: Top Interfaces 1. core-r01 Gi0/0 (92%) 2. wan-isp1 eth1 (78%) 3. srv-nfs bond0 (64%) Widżet: Eventlog 14:22 sw02 linkDown Gi1/4 14:15 bgp peer established 14:00 backup oxidized OK Kluczowe sekcje menu administracyjnego • Devices: Pełna lista urządzeń z podziałem na role (Network, Wireless, Server, Storage, Power). • Ports: Wyszukiwarka portów według prędkości, błędów, utylizacji, opisów i stanów operacyjnych. • Routing: Wizualizacja sesji BGP, sąsiedztwa OSPF, tras statycznych i wirtualnych instancji VRF. Układ pulpitów nawigacyjnych jest w pełni konfigurowalny w technologii Drag-and-Drop.
Slajd 6/22
Dodawanie urządzeń i automatyczne wykrywanie topologii (Auto-discovery)
Cel slajdu: Opanowanie procedury rejestracji węzłów oraz mechanizmów automatycznego mapowania relacji pomiędzy przełącznikami i routerami.

Rejestracja hostów i protokoły sąsiedztwa LLDP/CDP

Dodanie pojedynczego węzła może uruchomić łańcuchowe wykrywanie całej topologii sieci dzięki analizie protokołów warstwy łącza danych.

  • Dodawanie urządzenia (Add Device): Wprowadzenie adresu IP/FQDN, wybór wersji SNMP (v2c/v3), podanie community lub poświadczeń authPriv; natychmiastowy test połączenia
  • Mechanizm Discovery: Cykliczny proces uruchamiany co 4 godziny lub ręcznie (./discovery.php -h <id>); skanuje urządzenie i rejestruje nowe porty, procesory i sensory
  • Automatyczne wykrywanie sąsiedztwa: LibreNMS odczytuje tablice LLDP (IEEE 802.1AB) oraz Cisco CDP; identyfikuje połączone porty i automatycznie proponuje dodanie wykrytych sąsiadów
  • Inwentaryzacja sprzętowa: Odczyt numerów seryjnych, wersji oprogramowania układowego (firmware) oraz modeli modułów zasilaczy i wkładek SFP
Auto-discovery w LibreNMS: Zestaw modułów analitycznych cyklicznie badających urządzenia w celu automatycznego zaktualizowania listy interfejsów, dysków, sensorów i powiązań topologicznych.
Mechanizmy Auto-discovery Protokoły i mechanizmy automatycznego odkrywania topologii 1. Warstwa L2 (Sąsiedzi) • LLDP (IEEE 802.1AB) • CDP (Cisco Discovery) • FDP (Foundry/Extreme) Wykrywanie połączeń port-port 2. Warstwa L3 (Routing) • Sąsiedzi BGP (RFC 1657) • Adjacency OSPF (RFC 1850) • Tablice ARP (ipNetToMedia) Rekursywne dodawanie węzłów 3. Skanowanie Podsieci • snmp-scan.py • Skanowanie pul IP (CIDR) • Lista haseł Community Automatyzacja wdrożeń Konfiguracja automatycznego odkrywania w config.php $config['autodiscovery']['xdp'] = true; # Włączenie odkrywania przez LLDP/CDP $config['autodiscovery']['ospf'] = true; # Odkrywanie routerów z bazy OSPF $config['autodiscovery']['bgp'] = true; # Odkrywanie routerów tranzytowych BGP $config['nets'][] = '192.168.100.0/24'; # Dozwolona podsieć dla autoodkrywania Zabezpieczenie przed niekontrolowanym rozrostem: dyrektywa $config['nets'] ogranicza skanowanie.
Slajd 7/22
Panel analityczny urządzenia: metryki, statusy i interpretacja wykresów
Cel slajdu: Biegłe poruszanie się po szczegółowym widoku urządzenia i interpretacja danych telemetrycznych w interfejsie LibreNMS.

Szczegółowy wgląd w stan podzespołów i interfejsów

Kliknięcie w węzeł sieciowy w LibreNMS otwiera kompleksową kartę urządzenia prezentującą w czasie rzeczywistym wszystkie zebrane wskaźniki telemetryczne.

  • Karta Device Overview: Czas pracy (uptime), wykres ogólnego obciążenia CPU i pamięci, ping RTT, stan zasilania i temperatura podzespołów
  • Zakładka Ports: Tabela wszystkich portów fizycznych i logicznych; status linku (kolor zielony = UP, czerwony = DOWN), prędkość negocjacji, utylizacja procentowa i błędy
  • Wykresy RRDtool: Dynamiczne skalowanie w czasie (od 3 godzin do 2 lat); rozdzielenie ruchu In/Out, nakładanie wartości maksymalnych i percentyli (95th percentile)
  • Dziennik zdarzeń (Eventlog): Chronologiczna lista zdarzeń dotyczących urządzenia (podniesienie/opuszczenie portu, restart, wykrycie nowego modułu)
Rozliczenie 95th Percentile: Standard rozliczania przepustowości w telekomunikacji odrzucający 5% największych pików transferu w miesiącu, odzwierciedlający realne zapotrzebowanie na pasmo.
Szczegółowy widok węzła Karty diagnostyczne węzła w panelu LibreNMS Overview Model, OS, Uptime Lokalizacja, IP Graphs Zbiorcze wykresy CPU, RAM, Pasmo Health Temperatury, Fan Napięcia, SFP DDM Ports Statusy UP/DOWN Pakiety, Błędy Routing Sesje BGP, OSPF Prefiksy trasy Szczegółowa analityka komponentów sprzętowych • Karta Spanning Tree (STP): Wykrywa rolę portu (Root, Designated, Alternate) i zmiany topologii (Topology Changes). • Karta Optyki DDM: Wizualizacja mocy nadawczej Tx i odbiorczej Rx w dBm z progami ostrzegawczymi producenta wkładek. • Karta Logs & Events: Zintegrowany rejestr zdarzeń systemowych, komunikatów Syslog i odebranych pułapek SNMP Traps. • Karta Config (Oxidized): Podgląd aktualnej konfiguracji urządzenia z kolorowym diffem zmian w czasie. Zapewnia inżynierowi NOC 100% informacji w jednym oknie przeglądarki bez konieczności logowania SSH.
Slajd 8/22
Zaawansowany silnik reguł alarmowych i powiadomień w LibreNMS
Cel slajdu: Nauczenie się tworzenia złożonych reguł alarmowych oraz konfiguracji wielokanałowych powiadomień o incydentach.

Kreator reguł, makra systemowe i szablony transportowe

Silnik alarmów LibreNMS pozwala na definiowanie precyzyjnych kryteriów wyzwalania powiadomień w oparciu o dowolne atrybuty bazy danych i metryki telemetryczne.

  • Konstrukcja reguły (Alert Rules): Porównywanie encji w oparciu o operatory logiczne: np. macros.port_down = 1 AND ports.ifOperStatus = 'down' AND ports.ifAdminStatus = 'up'
  • Makra systemowe: Gotowe zbiory warunków (np. macros.device_down, macros.port_usage_perc > 85) upraszczające tworzenie reguł
  • Wstrzymywanie i tłumienie (Mute & Delay): Wymóg utrzymywania się błędu przez zdefiniowaną liczbę cykli pollerów przed wysłaniem powiadomienia (eliminacja fałszywych alarmów)
  • Kanały powiadomień (Alert Transports): Natywna integracja z e-mail, Slack, Microsoft Teams, Telegram, Discord, bramkami SMS oraz webhookami do systemów ticketingowych
Alert Rule (Reguła alarmowa): Logiczne wyrażenie warunkowe ewaluowane po każdym cyklu odpytywania, decydujące o przejściu stanu zasobu w tryb alarmowy (Warning/Critical).
Silnik alarmów LibreNMS Architektura silnika alarmów i przepływ powiadomień 1. Reguła Alertu • Logika SQL / ORM • Progi metryk • Filtry urządzeń Zdefiniowana reguła 2. Ewaluacja • alerts.php • Badanie próbek • Stan: ALERTING Weryfikacja opóźnień 3. Szablon • Alert Template • Tytuł incydentu • Link do panelu Formatowanie treści 4. Transport • Alert Transports • Slack / Teams • E-mail / Webhook Dostarczenie do NOC Zaawansowane mechanizmy kontroli szumu alarmowego • Makra alertowe (%macros.port_down): Gotowe zestawy warunków uwzględniające stan administracyjny. • Opóźnienie alertu (Delay): Wysyłka powiadomienia dopiero po trwaniu awarii przez określony czas (np. > 3 minuty). • Eskalacja (Interval): Ponawianie notyfikacji co zadany interwał czasu, jeśli awaria nie została potwierdzona (Ack). Zapewnia eliminację fałszywych alarmów wynikających z krótkotrwałych fluktuacji transmisyjnych.
Slajd 9/22
Wizualizacja topologii i integracja map Weathermap
Cel slajdu: Opanowanie technik tworzenia graficznych map przepływu ruchu sieciowego zintegrowanych z LibreNMS za pomocą wtyczki Weathermap.

Dynamiczne schematy obciążenia łączy transmisyjnych

Wizualizacja topologii za pomocą kolorowych map Weathermap pozwala dyżurnym inżynierom NOC natychmiast zlokalizować przeciążone relacje międzywęzłowe.

  • Wtyczka PHP-Weathermap: Oficjalne rozszerzenie dla LibreNMS generujące interaktywne schematy sieciowe na podstawie plików konfiguracyjnych i bazy RRD
  • Skala kolorystyczna nasycenia pasma: Standardowa paleta: szary (0%), zielony (1-50%), żółty (50-70%), pomarańczowy (70-85%), czerwony (>85% utylizacji)
  • Projektowanie węzłów i relacji: Definiowanie węzłów (NODES) ze współrzędnymi X/Y oraz łączących je linii (LINKS) powiązanych bezpośrednio z plikami RRD interfejsów
  • Wyświetlanie w NOC: Mapy w trybie pełnoekranowym (Kiosk Mode) automatycznie odświeżane co 5 minut na wielkoformatowych ekranach operatorskich
Network Weathermap: Graficzny schemat sieci teleinformatycznej wizualizujący bieżące obciążenie łączy transmisyjnych za pomocą dynamicznie zmienianych kolorów i etykiet.
Mapy sieci i Weathermap Wizualizacja topologii i nasycenia pasma na mapach sieci Automatyczna mapa L2 / L3 • Rysowana automatycznie z LLDP/CDP • Biblioteka wizualizacji Vis.js • Dynamiczny układ siatkowy Zawsze aktualna bez pracy ręcznej Wtyczka Network Weathermap • Ręcznie projektowany schemat WAN • Kolorowanie łączy obciążeniem % • Skala: zielony -> żółty -> czerwony Idealna na telebimy w NOC Skala kolorystyczna obciążenia łączy w Weathermap 0 - 25% 25 - 50% 50 - 70% 70 - 85% > 85% AWARIA • Grubość i kolor linii transmisyjnych aktualizują się w każdym cyklu pollerowym (co 5 minut). Pozwala operatorom NOC na identyfikację zatorów transmisyjnych w ułamku sekundy.
Slajd 10/22
Integracja zdarzeń w LibreNMS: pułapki SNMP Traps oraz centralizacja Syslog
Cel slajdu: Poznanie zasad łączenia odpytywania cyklicznego z nasłuchem strumienia zdarzeń asynchronicznych wewnątrz LibreNMS.

Jednolity strumień zdarzeń: korelacja metryk i logów

Zintegrowanie odbioru pułapek SNMP i logów Syslog w panelu LibreNMS eliminuje konieczność przełączania się między wieloma narzędziami podczas analizy awarii.

  • Odbiór pułapek SNMP (snmptrapd): Integracja demona snmptrapd ze skryptem snmptrap.php; automatyczne mapowanie odebranej pułapki do właściwego węzła w panelu
  • Centralizacja logów Syslog (syslog-ng / rsyslog): Przesyłanie komunikatów z przełączników i routerów do centralnego serwera z bazą MariaDB LibreNMS
  • Filtrowanie i przeszukiwanie logów: Przeszukiwanie dziennika zdarzeń według programu, poziomu ważności (Severity) oraz wyrażeń regularnych bezpośrednio z panelu WWW
  • Reguły alarmowe oparte na logach: Możliwość wyzwolenia natychmiastowego alarmu po pojawieniu się konkretnego komunikatu w logu (np. błąd zasilacza, naruszenie bezpieczeństwa portu)
Korelacja wieloźródłowa w NMS: Połączenie w jednym oknie analitycznym wykresów liczbowych SNMP, asynchronicznych powiadomień Trap oraz tekstowych komunikatów Syslog dla danego węzła.
Centralizacja logów Syslog Integracja strumienia Syslog z bazą zdarzeń LibreNMS Źródła Zdarzeń • Przełączniki, routery • Zapory ogniowe, serwery • Protokół RFC 5424 Port UDP/TCP 514 Kolektor Syslog • rsyslog / syslog-ng • Buforowanie w RAM • Skrypt syslog.php Filtracja strumieniowa Baza i Alerty NMS • Tabela syslog w SQL • Dopasowanie regex • Wyzwalanie powiadomień Widok w karcie węzła # Fragment konfiguracji rsyslog dla LibreNMS (/etc/rsyslog.d/30-librenms.conf) $template librenms,"INSERT INTO syslog (device_id, facility, priority, level, tag, timestamp, program, msg) \ VALUES ((SELECT device_id FROM devices WHERE hostname='%fromhost-ip%' LIMIT 1), \ '%syslogfacility%', '%syslogpriority%', '%syslogseverity%', '%syslogtag%', \ '%timereported:::date-mysql%', '%programname%', '%msg%') \ ON DUPLICATE KEY UPDATE msg='%msg%';" *.* :ommysql:127.0.0.1,librenms,librenms_user,haslo;librenms
Slajd 11/22
Automatyzacja, kontrola dostępu (RBAC) i integracja przez REST API
Cel slajdu: Przedstawienie interfejsu programistycznego REST API oraz modelu zarządzania uprawnieniami użytkowników w LibreNMS.

Ekspozycja danych przez API oraz granularne uprawnienia RBAC

LibreNMS udostępnia bogaty interfejs API REST, co pozwala na pełną automatyzację zarządzania infrastrukturą oraz integrację z zewnętrznymi systemami korporacyjnymi.

  • Architektura API REST: Komunikacja przez protokół HTTPS; format wymiany danych JSON; uwierzytelnianie za pomocą tokenów kryptograficznych (API Tokens)
  • Operacje CRUD przez API: Zdalne dodawanie urządzeń (POST /api/v0/devices), pobieranie metryk interfejsów (GET /api/v0/ports), pobieranie listy aktywnych alertów
  • Model kontroli dostępu RBAC (Role-Based Access Control): Podział na role: Administrator (pełny dostęp), Global Read (odczyt wszystkiego), Normal User (dostęp do wybranych urządzeń)
  • Integracja uwierzytelniania: Możliwość integracji z firmowymi serwerami katalogowymi Active Directory / LDAP oraz mechanizmami Single Sign-On (SAML2 / OpenID Connect)
REST API w systemie NMS: Standaryzowany interfejs programistyczny pozwalający skryptom automatyzacji (np. Python, Ansible) na pobieranie danych i zarządzanie konfiguracją monitoringu.
API REST w LibreNMS Architektura programowalnego API REST w LibreNMS Metody HTTP • GET: Odczyt danych • POST: Dodawanie węzłów • PATCH: Zmiana parametrów • DELETE: Usuwanie Autoryzacja Tokenem • Nagłówek HTTP: X-Auth-Token: <key> • Generowanie w GUI Kontrola uprawnień Format JSON • {"status": "ok"} • Parsowanie w Python • Integracja z Ansible Standard Network DevOps # Pobranie listy urządzeń ze statusem błędu (DOWN) przez cURL $ curl -s -H 'X-Auth-Token: 3a9f1b2c4d5e...' \ https://nms.firma.pl/api/v0/devices?order=status%20desc # Odpowiedź w formacie JSON: {"status":"ok","devices":[{"device_id":12,"hostname":"sw-acc03.lan","status":false}]} # Dokumentacja oficjalna: https://docs.librenms.org/API/
Slajd 12/22
Skalowanie horyzontalne (Distributed Polling) oraz automatyczny backup z Oxidized
Cel slajdu: Poznanie technik rozpraszania obciążenia monitoringu oraz integracji z narzędziem automatycznej archiwizacji konfiguracji urządzeń.

Klastrowanie pollerów i śledzenie zmian w konfiguracji sieci

Gdy liczba urządzeń przekracza możliwości pojedynczego serwera, LibreNMS pozwala na skalowanie horyzontalne z wykorzystaniem kolejki Redis i wielu pollerów.

  • Distributed Polling: Węzeł centralny z bazą MariaDB i panelem webowym; dedykowane węzły pollerów odpytujące urządzenia w odległych lokalizacjach lub Data Center
  • Koordynacja przez Redis: Kolejkowanie zadań odpytywania w pamięci podręcznej Redis; demony Dispatcher w Pythonie równomiernie konsumują zadania
  • Narzędzie Oxidized: Lekki, wyspecjalizowany demon automatycznie logujący się na przełączniki i routery przez SSH i pobierający pliki konfiguracyjne
  • Wersjonowanie w Git: Oxidized zapisuje każdą kopię w repozytorium Git; LibreNMS wyświetla różnice (diff) w konfiguracji bezpośrednio w karcie urządzenia
Distributed Polling (Odpytywanie rozproszone): Architektura, w której zadania odpytywania urządzeń są dzielone pomiędzy wiele niezależnych węzłów fizycznych lub kontenerów.
Rozproszony poller LibreNMS Skalowanie horyzontalne: Architektura Distributed Poller Centralna Baza & Web • Serwer MariaDB Cluster • Kolejka Redis Sentinel • Zasób NFS / Gluster (RRD) Węzeł Poller 01 Lokalizacja: DC Warszawa Grupa: Poller Group 1 Odpytuje 500 switchy Dispatcher Python Węzeł Poller 02 Lokalizacja: DC Kraków Grupa: Poller Group 2 Odpytuje 500 switchy Dispatcher Python Węzeł Poller 03 Oddział Chmura AWS Grupa: Poller Group 3 Serwery w chmurze Dispatcher Python Skalowanie niemal liniowe: dołożenie nowego węzła pollerowego podwaja przepustowość zapytań SNMP.
Slajd 13/22
MikroTik The Dude – geneza, architektura i instalacja na RouterOS
Cel slajdu: Przedstawienie specyfiki systemu The Dude firmy MikroTik, jego architektury klient-serwer oraz wdrożenia na platformie RouterOS.

Dedykowany system zarządzania ekosystemem MikroTik

The Dude to rozwijany od lat przez firmę MikroTik system monitoringu, doskonale zoptymalizowany pod kątem routerów i przełączników z systemem RouterOS.

  • Architektura klient-serwer: Serwer The Dude pracuje jako wbudowany pakiet systemowy w RouterOS; zarządzanie odbywa się poprzez dedykowaną aplikację desktopową Windows (lub przez Wine)
  • Obsługa platform sprzętowych: Pakiet Dude Server jest dostępny dla architektur ARM, ARM64, TILE oraz maszyn wirtualnych x86 (Cloud Hosted Router - CHR)
  • Instalacja krok po kroku: Pobranie pakietu dude-X.XX.npk, wgranie do pamięci routera, restart i aktywacja poleceniem /dude set enabled=yes
  • Baza danych The Dude: Wbudowana baza SQLite; możliwość zapisu na zewnętrznym nośniku USB/SSD w celu ochrony pamięci flash routera
MikroTik The Dude: System monitorowania sieci integrujący serwer wbudowany w system RouterOS z natywnym graficznym interfejsem zarządzania mapami sieci.
Wprowadzenie do The Dude Geneza i ewolucja platformy MikroTik The Dude 2006: Początki (v3/v4) • Samodzielna aplikacja Win32 • Serwer i klient na PC • Darmowe narzędzie MikroTik Rewolucja dla małych ISP 2016: Pakiet RouterOS (v6) • Przeniesienie serwera do ROS • Pakiet dude.npk • Dedykowany sprzęt CCR/x86 Stabilność architektury Współczesność: RouterOS v7 • Wbudowany pakiet Dude • Wsparcie architektury ARM64 • Baza SQLite na dysku NVMe Specjalistyczne zastosowania Filozofia systemu The Dude: Wizualny monitoring topologii • Zorientowanie na mapę (Map-Centric): Interfejs stanowi jedną wielką, interaktywną tablicę połączeń. • Darmowa licencja: Brak jakichkolwiek opłat licencyjnych, wbudowane narzędzie w system RouterOS. • Ekosystem WISP: Niezastąpione narzędzie dla bezprzewodowych dostawców Internetu (Wireless ISP). Oficjalna dokumentacja: wiki.mikrotik.com/wiki/Manual:The_Dude_v7.
Slajd 14/22
Projektowanie dynamicznej mapy sieci i interfejs klienta The Dude
Cel slajdu: Nauczenie się projektowania interaktywnych map topologii sieciowych w środowisku klienta The Dude.

Wizualne odwzorowanie struktury sieci i relacji logicznych

Największą zaletą systemu The Dude jest niezwykle intuicyjny, graficzny edytor map sieci, pozwalający na odwzorowanie fizycznej i logicznej struktury organizacji.

  • Elementy mapy: Węzły sieciowe (Devices), sieci logiczne (Networks), połączenia międzywęzłowe (Links) oraz statyczne elementy graficzne (podkłady map, plany budynków)
  • Kodowanie kolorami stanu węzłów: Kolor zielony (wszystkie usługi działają), pomarańczowy (częściowa degradacja), czerwony (awaria krytyczna), niebieski (brak odpowiedzi)
  • Wizualizacja obciążenia łącz: Dynamiczne linie łączące routery; etykiety wyświetlają bieżący ruch w czasie rzeczywistym z odpytywania SNMP portów
  • Zarządzanie hierarchiczne: Możliwość tworzenia podmap (Submaps) dla oddziałów firmy, szaf serwerowych lub pięter budynku
Dynamiczna mapa The Dude: Interaktywny pulpit graficzny odzwierciedlający stan urządzeń i łączy transmisyjnych w czasie rzeczywistym z możliwością zagnieżdżania podmap.
Projektowanie mapy w The Dude Tworzenie i personalizacja mapy topologicznej w The Dude 1. Podkład Graficzny • Rzuty budynków (PNG/JPG) • Mapy OpenStreetMap • Wymiary w skali Warstwy tła (Layers) 2. Węzły (Devices) • Ikony routerów, switchy • Etykieta: [Device.Name] • Etykieta: [Device.ServicesDown] Dynamiczny tekst 3. Łącza (Links) • Typ: Ethernet / Radio • Kolorowanie nasyceniem • Etykieta: [Interface.InBitRate] Bieżący ruch na żywo Zaawansowane formatowanie etykiet węzła w The Dude [Device.Name] ([Device.FirstAddress]) Uptime: [Device.Uptime] CPU: [oid("1.3.6.1.4.1.9.9.109.1.1.1.1.5.1")]% | Temp: [oid("1.3.6.1.4.1.14988.1.1.3.11.0")]C Awaria: [Device.ServicesDown] z [Device.ServicesCount] usług Funkcja oid() pozwala na wstrzyknięcie dowolnej wartości SNMP bezpośrednio do etykiety na mapie.
Slajd 15/22
Definiowanie sond pomiarowych (Probes) i powiadomień w The Dude
Cel slajdu: Opanowanie konfiguracji sond sprawdzających usługi oraz reguł powiadamiania administratorów w systemie The Dude.

Mechanizmy badania usług i reakcji na awarie

Stan każdego urządzenia na mapie The Dude jest determinowany przez przypisane do niego sondy pomiarowe (Probes) badające określone protokoły i porty.

  • Typy wbudowanych sond: ICMP ping, TCP service (porty 80, 443, 22, 8291), UDP, DNS, sondy SNMP oraz sondy MikroTik RouterOS (RouterOS CPU, disk, memory)
  • Tworzenie własnych sond SNMP: Zdefiniowanie identyfikatora OID, typu danych oraz warunku błędu (np. błąd jeśli oid("1.3.6.1.2.1.25.3.3.1.2.1") > 90)
  • Profile powiadomień (Notifications): Akcje wyzwalane po wykryciu awarii: dźwięk w konsoli, okno popup, e-mail, log systemowy lub wykonanie skryptu w RouterOS
  • Harmonogramy powiadomień: Określenie okien czasowych (np. powiadomienia SMS tylko w godzinach dyżuru domowego, e-mail przez całą dobę)
Sonda (Probe w The Dude): Zdefiniowany test diagnostyczny weryfikujący dostępność lub wartość parametru urządzenia w określonym interwale czasowym.
Sondy pomiarowe w The Dude Typy sond diagnostycznych i tworzenie własnych sond SNMP Sondy Sieciowe • ping: RTT i packet loss • arp-ping: Obejście ACL • dns: Rozwiązywanie nazw Warstwy L2 i L3 Sondy Usługowe L7 • http / https: Kod 200 OK • tcp-service: Port connect • pop3, smtp, ssh, telnet Dostępność demonów Sondy SNMP (Custom) • Typ: SNMP • Odczyt OID węzła • Warunek logiczny błędu Własne parametry MIB # Przykład definicji własnej sondy SNMP: Temperatura procesora > 70 C Name: Sonda_CPU_Temp_Alert Type: SNMP | SNMP OID: 1.3.6.1.4.1.14988.1.1.3.11.0 OID Type: Integer | Function: compare Error condition: oid("1.3.6.1.4.1.14988.1.1.3.11.0") > 70 Error text: "Przegrzanie procesora routera! Temperatura: " . oid(...) . " C" # W momencie przekroczenia 70 C sonda zmienia stan na DOWN i wyzwala alert.
Slajd 16/22
Natywne mechanizmy RouterOS w The Dude, zbieranie metryk i ograniczenia platformy
Cel slajdu: Przedstawienie zalet integracji z ekosystemem MikroTik oraz świadomość technologicznych barier i ograniczeń projektu The Dude.

Zalety ekosystemu MikroTik i ograniczenia architektoniczne

O ile The Dude jest bezkonkurencyjny w środowiskach opartych wyłącznie na RouterOS, o tyle w zróżnicowanych sieciach korporacyjnych ujawniają się jego architektoniczne ograniczenia.

  • Bezpośrednia integracja RouterOS: Możliwość bezpośredniego otwarcia sesji Winbox, wykonania skryptów w RouterOS, masowej aktualizacji oprogramowania RouterBOOT
  • Wykresy i statystyki: Wbudowany silnik generowania wykresów czasu odpowiedzi ping oraz przepustowości portów; prostota bez konieczności konfiguracji baz RRD
  • Ograniczenia platformy: Brak nowoczesnego responsywnego interfejsu webowego (wymagana aplikacja Windows), ubogie REST API, ograniczona obsługa innych producentów
  • Status rozwojowy projektu: Powolny cykl wydawniczy MikroTik w zakresie The Dude; traktowany jako narzędzie pomocnicze, a nie główny system Enterprise NMS
Vendor Lock-in w The Dude: Silne uzależnienie funkcjonalności systemu od środowiska RouterOS, utrudniające standaryzację monitoringu w sieciach heterogenicznych.
Integracja z ekosystemem MikroTik Synergia z ekosystemem RouterOS: Winbox, Upgrade i Backupy 1-Click Winbox • Klik prawym na węzeł • Opcja: Winbox • Automatyczne logowanie Natychmiastowy dostęp Masowy Upgrade • Menu: RouterOS Upgrade • Pobranie wersji z WWW • Wgranie do 50 hostów Jednoczesny restart Centralny Backup • Pliki binarne .backup • Skrypty tekstowe .rsc • Harmonogram cykliczny Bezpieczeństwo danych Zarządzanie siecią MikroTik bez wpisywania haseł • Tunelowanie Dude (Dude Relay): Dostęp do urządzeń z prywatną adresacją za pośrednictwem serwera Dude. • Weryfikacja licencji i firmware: Automatyczna kontrola wersji RouterBOOT (BIOS) na płytach RouterBOARD. • Szybki Terminal: Bezpośrednie otwarcie bezpiecznej konsoli SSH/Mac-Telnet z poziomu mapy. Sprawia, że The Dude jest nie tylko monitorem, lecz głównym centrum zarządzania siecią MikroTik.
Slajd 17/22
Analiza porównawcza platform NMS: LibreNMS, The Dude, Zabbix oraz Nagios
Cel slajdu: Zestawienie parametrów technicznych, zalet i wad czołowych platform zarządzania siecią na rynku.

Bezpośrednie porównanie architektur i możliwości

Dobór oprogramowania NMS wymaga rzetelnego zbilansowania stopnia automatyzacji, kosztów wdrożenia, wsparcia dla agentów oraz elastyczności konfiguracji.

  • LibreNMS: Mistrz automatyzacji i monitoringu sieci; doskonałe auto-discovery, brak konieczności tworzenia szablonów, idealny do urządzeń sieciowych L2/L3
  • Zabbix: Lider monitoringu serwerowego i aplikacyjnego; potężny agent instalowany w OS, ogromna elastyczność reguł, ale wymaga ręcznego przypisywania szablonów do sieci
  • The Dude: Lekki, natywny monitoring dla sieci opartych na sprzęcie MikroTik; doskonałe mapy wizualne, zerowy koszt licencji na RouterOS, ale brak uniwersalności
  • Nagios / Icinga: Klasyczne, sprawdzone systemy oparte na skryptowych wtyczkach sprawdzających (check_plugins); archaiczna architektura odpytywania, wysoki koszt utrzymania
Matryca doboru NMS: Zestaw kryteriów technicznych (automatyzacja, obsługa agentów, skalowalność, interfejs) determinujący wybór optymalnego oprogramowania dla danego profilu IT.
LibreNMS vs Zabbix Dwa paradygmaty: LibreNMS (Zero-Config) vs Zabbix (Szablony i Agenty) LibreNMS: Paradygmat Sieciowy • Cel główny: Przełączniki, routery, SNMP • Wdrożenie: Natychmiastowe (Auto-discovery) • Szablony: Zbędne (wbudowane bazy YAML) • Baza danych: MariaDB + RRDtool Zaleta: Działa od razu bez nakładu pracy Zabbix: Paradygmat Uniwersalny • Cel główny: Serwery, aplikacje, bazy danych • Wdrożenie: Instalacja agentów Zabbix Agent • Szablony: Konieczne (szablony i reguły LLD) • Baza danych: PostgreSQL / TimescaleDB Wada: Ogromna pracochłonność wstępna Porównanie kosztu wdrożenia (TCO) dla 200 przełączników • LibreNMS: Wprowadzenie puli IP -> 30 minut pracy -> Pełne wykresy portów, STP, BGP i mapy. • Zabbix: Dobór szablonów, strojenie reguł LLD, walka z makrami -> Kilka dni lub tygodni pracy inżyniera. • Wniosek: Do sieci LAN/WAN bezkonkurencyjny jest LibreNMS; do serwerów i baz danych – Zabbix. Wiele korporacji integruje oba systemy w spójny ekosystem telemetryczny.
Slajd 18/22
Drzewo decyzyjne doboru systemu monitoringu do profilu organizacji
Cel slajdu: Przedstawienie formalnego algorytmu wyboru platformy NMS w zależności od struktury sprzętowej i kompetencji zespołu IT.

Algorytm decyzyjny dopasowania systemu do infrastruktury

Wybór systemu NMS nie powinien być kwestią przypadku, lecz wynikiem analizy struktury urządzeń, dominującego środowiska oraz wymagań biznesowych.

  • Środowisko wyłącznie MikroTik (ISP / WISP): Rekomendowany The Dude (zainstalowany na dedykowanym routerze CHR) ze względu na zerowy narzut i natywną integrację
  • Środowisko sieciowe wieloproducentowe (Enterprise Network): Bezwzględnie rekomendowany LibreNMS ze względu na bezagentowe auto-discovery tysięcy modeli urządzeń
  • Środowisko serwerowo-aplikacyjne (System Ops / DevOps): Rekomendowany Zabbix ze względu na granularne zbieranie logów z agentów wewnątrz systemów operacyjnych
  • Infrastruktura chmurowa i mikrousługowa (Cloud Native): Rekomendowany stos Prometheus + Grafana z eksporterami telemetrycznymi
Drzewo decyzyjne NMS: Ustrukturyzowany diagram logiczny prowadzący architekta systemowego do wyboru optymalnej technologii monitorowania na podstawie zdefiniowanych pytań kwalifikacyjnych.
Drzewo decyzyjne wyboru NMS Inżynierskie drzewo decyzyjne wyboru systemu NMS Start: Profil infrastruktury 100% MikroTik RouterOS ISP radiowy / mały LAN Heterogeniczny LAN/WAN Cisco, HP, Linux, serwery Cloud-Native / Aplikacje Kubernetes, mikroserwisy The Dude Zero kosztów licencji, natywna integracja Winbox LibreNMS Automatyczne OID, LLDP/BGP, zero-config Zabbix Agenty OS, skrypty, złożona telemetria IT Prometheus + Grafana, PromQL Kryterium budżetowe i operacyjne (TCO): Brak dedykowanego inżyniera NOC i potrzeba gwarancji SLA? Rozważ komercyjny PRTG Network Monitor.
Slajd 19/22
Nowoczesny stos telemetryczny: Prometheus, SNMP Exporter oraz Grafana
Cel slajdu: Poznanie paradygmatu telemetrii chmurowej opartej na metrykach szeregów czasowych, eksporterze SNMP oraz wizualizacji w panelach Grafana.

Model Pull, format metryk i wizualizacja nowej generacji

Tradycyjne systemy NMS są coraz częściej uzupełniane lub zastępowane przez nowoczesny ekosystem telemetryczny łączący bazę Prometheus z panelami Grafana.

  • Baza Prometheus: Wysokowydajna baza danych szeregów czasowych (TSDB); model Pull; pobieranie metryk w formacie tekstowym przez protokół HTTP w stałych interwałach
  • Narzędzie snmp_exporter: Usługa pośrednicząca; odpytuje urządzenia przez SNMP i udostępnia zebrane wskaźniki jako metryki Prometheus pod adresem /metrics
  • Język zapytań PromQL: Zaawansowany język matematyczny umożliwiający wyliczanie pochodnych (np. rate(ifHCInOctets[5m]) * 8), percentyli i odchyleń
  • Platforma Grafana: Standard rynkowy w wizualizacji; tworzenie oszałamiających wizualnie, responsywnych paneli operatorskich z bezpośrednim dostępem do baz Prometheus i SQL
SNMP Exporter: Most telemetryczny konwertujący hierarchiczne zapytania SNMP do postaci płaskich metryk szeregów czasowych z etykietami (labels) zrozumiałych dla bazy Prometheus.
Architektura Prometheus i Grafana Nowoczesna telemetria: Prometheus TSDB + Grafana Eksportery Metryk snmp_exporter:9116 node_exporter:9100 blackbox_exp:9115 HTTP Scrape Prometheus Server Baza TSDB (Szeregi czasowe) • Metryka + etykiety (labels) • Silnik zapytań PromQL • Serwis Discovery (DNS, K8s) • Alertmanager (routing alertów) Port API: :9090 PromQL Grafana Dashboard • Panele Time Series • Wskaźniki Stat i Gauges • Dynamiczne zmienne • Mapy sieciowe i stany • Wizualizacje NOC Port Web: :3000 # Przykładowe zapytanie PromQL obliczające ruch wejściowy w Mb/s na porcie ether1: rate(ifHCInOctets{ifName="ether1", job="snmp"}[5m]) * 8 / 1000000 # rate() automatycznie obsługuje przepełnienia liczników 64-bitowych (Counter Wrap). Model TSDB przechowuje dane w formacie: metryka{etykieta1="wartość", ...} znacznik_czasu wartość
Slajd 20/22
Integracja ekosystemu NMS: źródło prawdy NetBox i systemy ITSM
Cel slajdu: Zrozumienie integracji platformy NMS z systemami zarządzania zasobami sieciowymi (DCIM/IPAM) oraz obsługa zgłoszeń awaryjnych (ITSM).

Podejście Network Source of Truth i automatyzacja zgłoszeń

Nowoczesny NMS nie działa w próżni; pobiera planowaną konfigurację ze źródła prawdy NetBox i automatycznie otwiera bilety awaryjne w systemach Helpdesk.

  • NetBox jako Source of Truth: Centralna baza wiedzy określająca stan docelowy sieci (intencję administratora): adresacja IPAM, szafy rackowe, okablowanie, VLAN-y i urządzenia
  • Weryfikacja intencji (Reconciliation): NMS porównuje stan rzeczywisty odkryty w sieci ze stanem zadeklarowanym w NetBox, natychmiast wykrywając nieautoryzowane zmiany
  • Integracja z ITSM (Jira Service Management / ServiceNow): Automatyczne otwieranie zgłoszenia awaryjnego (Ticket) w chwili aktywacji alertu krytycznego w LibreNMS
  • Dwukierunkowa synchronizacja: Zamknięcie incydentu w NMS po przywróceniu łącza automatycznie zamyka powiązane zgłoszenie serwisowe w systemie Helpdesk
Source of Truth (Źródło prawdy): Autorytatywne repozytorium danych reprezentujące zamierzony, poprawny stan infrastruktury IT, z którym porównywany jest stan bieżący.
Integracja NetBox z NMS Źródło prawdy o sieci (Source of Truth): NetBox + NMS NetBox (DCIM / IPAM) Stan Zamierzony (Intent) • Inwentarz szaf rackowych • Pula adresów IP i prefiksy • Tagi: [monitored: snmp_v3] Webhook on-device-create Sync API Sync Engine • Python / netbox2librenms • Sprawdzenie tagów • Wykrywanie niezgodności • Dodawanie / usuwanie lnms device:add LibreNMS Stan Faktyczny (Observed) • Aktywne odpytywanie • Status portów i OID • Alerty o awariach Zbieżność stanu: 100% # Koncepcja Intent-Based Networking: Stan zamierzony vs stan obserwowany • Jeśli urządzenie jest w LibreNMS, a NIE MA go w NetBox -> "Shadow IT" (nieautoryzowany sprzęt w sieci). • Jeśli urządzenie jest w NetBox z tagiem 'Active', a LibreNMS zgłasza DOWN -> Rzeczywista awaria sprzętu. • Skrypt cykliczny synchronizuje adresację IP, grupy urządzeń i profile SNMP automatycznie z NetBoksa. Dokumentacja API NetBox: https://netboxlabs.com/docs/netbox/
Slajd 21/22
Wymiarowanie serwera (Sizing), wysoka dostępność (HA) i trendy AIOps
Cel slajdu: Nauczenie się poprawnego szacowania zasobów sprzętowych pod serwer NMS, projektowania klastrów odpornych na awarie oraz poznanie perspektyw AIOps.

Kalkulacja zasobów serwera, klastrowanie i algorytmy sztucznej inteligencji

Niewłaściwie zwymiarowany serwer NMS staje się wąskim gardłem w chwili masowej awarii; projekt musi gwarantować zapas mocy i odporność na utratę węzła.

  • Wymiarowanie zasobów (Hardware Sizing): Reguła kciuka dla LibreNMS: 1 GB RAM na każde 100 urządzeń; dedykowane dyski SSD/NVMe z wysokim parametrem IOPS pod bazy RRD/MariaDB
  • Optymalizacja operacji dyskowych: Wdrożenie demona rrdcached buforującego zapisy metryk w pamięci RAM, redukującego obciążenie dysku I/O o ponad 80%
  • Wysoka dostępność (High Availability): Klastrowanie bazy MariaDB (Galera Cluster), replikacja plików RRD lub współdzielona pamięć sieciowa NFS/Ceph
  • Trendy AIOps: Zastosowanie modeli uczenia maszynowego do predykcji awarii łączy światłowodowych na podstawie degradacji mocy optycznej w modułach SFP
Demon rrdcached: Usługa buforująca operacje zapisu do plików bazy RRDtool w pamięci operacyjnej, drastycznie redukująca wąskie gardło operacji wejścia/wyjścia (I/O) na dyskach serwera.
Planowanie zasobów serwera NMS Planowanie pojemności serwera NMS (Hardware Sizing) Skala wdrożenia vCPU / RAM Dysk / Wymagany IOPS Architektura NMS < 100 urządzeń (ok. 2 000 portów) 4 vCPU / 8 GB RAM 100 GB SSD (SATA) ~200 IOPS Pojedyncza maszyna VM 100 - 500 urządzeń (ok. 12 000 portów) 8 vCPU / 16 GB RAM 250 GB NVMe ~1 500 IOPS Standalone + Redis cache > 1 000 urządzeń (> 30 000 portów) 16+ vCPU / 32+ GB NVMe RAID10 > 5 000 IOPS Distributed Polling (Klaster) # Główne wąskie gardło NMS: Losowy zapis do bazy RRDtool (Random Write IOPS) • Każdy port przełącznika to osobny plik .rrd na dysku aktualizowany co 300 sekund. • 500 urządzeń x 48 portów = 24 000 plików RRD modyfikowanych w oknie 5 minut. • Rozwiązanie: Użycie demona rrdcached (buforowanie zapisu w RAM) i dysków NVMe. Tradycyjne dyski HDD (talerzowe 7.2k RPM) nie nadają się do systemów NMS > 50 urządzeń.
Slajd 22/22
Słownik pojęć, pytania kontrolne i źródła wiedzy
Cel slajdu: Podsumowanie wiedzy o systemach NMS, usystematyzowanie pojęć oraz weryfikacja kompetencji za pomocą pytań kontrolnych.

Leksykon pojęciowy modułu 4 i pytania sprawdzające

Zakończenie modułu poświęconego platformom NMS; student powinien posiadać wiedzę umożliwiającą samodzielne wdrożenie i konfigurację systemu LibreNMS oraz The Dude.

  • Pytania teoretyczne: 1. Wymień cztery warstwy architektury systemu NMS. 2. W jaki sposób protokół LLDP wspomaga auto-discovery w LibreNMS? 3. Czym różni się podejście Pull w Prometheusie od Pollingu w LibreNMS?
  • Zadania laboratoryjne: 1. Uruchom skrypt validate.php na serwerze LibreNMS; 2. Zbuduj regułę alarmową wykrywającą spadek wolnego miejsca na dysku poniżej 10%; 3. Skonfiguruj mapę w The Dude
  • Słownik pojęć: NMS, LibreNMS, The Dude, Auto-discovery, Weathermap, Distributed Polling, Oxidized, rrdcached, NetBox, AIOps
  • Dokumentacja źródłowa: Oficjalna dokumentacja LibreNMS (docs.librenms.org); MikroTik Wiki/Help (help.mikrotik.com/docs); Prometheus Documentation (prometheus.io)
Kompetencje modułu 4: Umiejętność projektowania, instalowania, zabezpieczania i eksploatacji nowoczesnych systemów nadzoru sieci teleinformatycznej klasy korporacyjnej.
Pytania kontrolne z systemów NMS Pytania kontrolne i powtórzenie materiału 1 Dlaczego LibreNMS wymaga bufora rrdcached w instalacjach powyżej 200 urządzeń? Wskazówka: Zjawisko losowego zapisu dyskowego (Random Write IOPS) w plikach RRD. 2 W jaki sposób architektura Distributed Poller zapobiega opóźnieniom pollowania (poller lag)? Wskazówka: Kolejkowanie zadań w Redis i horyzontalny podział odpytywania na grupy węzłów. 3 Czym różni się podejście Intent-Based (NetBox) od stanu obserwowanego w LibreNMS? Wskazówka: Stan zamierzony (projektowy) a stan rzeczywisty wykryty w danym momencie na portach. 4 Dlaczego sieć Out-Of-Band jest krytyczna dla pewności powiadamiania o awariach? Wskazówka: Fizyczna separacja płaszczyzny sterowania od awarii łączy produkcyjnych (pętle, odcięcie WAN).