Miesięcznik informatyków i menedżerów IT sektora publicznego

Kamil Folga

Monitorowanie środowiska sieciowego

Jedną z najważniejszych czynności administratora jest monitorowanie środowiska sieci i usług. Trudno wyobrazić sobie przeprowadzanie tego procesu na dużą skalę bez odpowiedniego oprogramowania. Pokazujemy, jak w tej roli sprawdza się OpenNMS.

OpenNMS to darmowa platforma stworzona na potrzeby zaawansowanego monitorowania sieci i usług. Istnieją dwie wersje OpenNMS: Meridian oraz Horizon. Meridian jest wersją stabilną z opcjonalnym wsparciem technicznym, więc jego przeznaczeniem są zastosowania produkcyjne. Z kolei wersja Horizon oferuje innowacyjność i szybkie wprowadzanie nowych pomysłów oraz technologii. Każde z rozwiązań jest całkowicie darmowe. OpenNMS został napisany w języku Java, co pozwala na instalację na dowolnym systemie operacyjnym, m.in. Windows, Linux/Unix, Mac. System potrafi przetwarzać nawet ponad 100 tys. komunikatów na minutę. To ewenement wśród całkowicie darmowych aplikacji, który sprawia, że OpenNMS wyrasta na poważnego konkurenta nawet dla komercyjnych systemów monitorowania.

Co oferuje OpenNMS

Platforma OpenNMS, biorąc pod uwagę rozległość możliwych do monitorowania środowisk oraz dużą liczbę usług, zdecydowanie przewyższa proste systemy monitorowania, takie jak Cacti czy MRTG. OpenNMS wykrywa przerwy w usługach i mierzy opóźnienia przy użyciu mechanizmu odpytywania określonych hostów (węzłów). Zebrane dane wykorzystywane są do kreślenia wykresów oraz analizy przekroczeń progów. Progi to ustalone wartości parametrów danej usługi, których przekroczenie powinno wywołać określoną akcję.

Domyślnie w OpenNMS otrzymujemy wsparcie dla wielu aplikacji z możliwością monitorowania dowolnych usług. Oprogramowanie może monitorować aplikacje i usługi, pracując z perspektywy użytkownika. OpenNMS potrafi zbierać dane z różnych standardowych agentów, jak SNMP, JMX, WMI, NRPE, NSClient++ i XMP. Możliwe jest zbieranie danych przez dedykowane wtyczki HTTP, JDBC, XML, JSON. OpenNMS potrafi odkrywać topologię sieci, bazując na informacjach SNMP, LLDP/CDP oraz Bridge-MIB. Wspiera odkrywanie topologii warstwy 3 na podstawie protokołów OSPF oraz IS-IS. Topologie są powiązane z informacjami monitorowania. Sieć może być odkrywana ręcznie i automatycznie. OpenNMS łatwo zintegrować z innymi aplikacjami, co pozwala na rozszerzenie liczby usług, z których zbieramy dane. Możliwa jest również integracja z dowolną, standardową architekturą dzięki wykorzystaniu RestAPI. OpenNMS już na starcie obsługuje dużą liczbę znanych urządzeń sieciowych, komputerów, aplikacji, ale może istnieć sprzęt specjalizowany, który nie jest wspierany. W takim przypadku istnieje możliwość rozszerzenia funkcjonalności systemu o wsparcie dowolnych urządzeń sieciowych.

Jedną z najważniejszych funkcji OpenNMS jest integracja z różnymi systemami helpdesk, w tym RT (Request Tracker), ConcourseSuite, JIRA, OTRS, Intuit's QuickBase. OpenNMS wykorzystuje API do integracji z systemami wsparcia, co pozwala otwierać, aktualizować i zamykać zgłoszenia (tickety), ale również zamieszczać linki do różnych czynności, przeprowadzanych na interfejsach użytkownika systemów zgłoszeń. OpenNMS wspiera kilka metod powiadamiania. Podstawą jest powiadamianie e-mailem, ale wspierana jest też komunikacja IM oraz XMPP. Jeżeli chcielibyśmy wspierać inne metody powiadomień, możemy użyć plików konfiguracyjnych OpenNMS XML.

Instalacja OpenNMS

Proces instalacji OpenNMS jest prosty, ponieważ dostępny jest specjalnie przygotowany skrypt (m.in. dla dystrybucji Ubuntu systemu Linux). Pierwszą częścią wdrożenia OpenNMS jest instalacja Oracle Java SE Development Kit 8. W opisywanym przypadku czynność realizujemy na systemie operacyjnym Ubuntu 14.06 LTS Server.

Rozpoczynamy od przejścia w tryb uprzywilejowany i dodania repozytorium Java do konfiguracji apt:

# su – root
# echo "deb http://ppa.launchpad.net/webupd8team/java/\
ubuntu trusty main" | tee /etc/apt/sources.list.d/\
webupd8team-java.list
opennms# echo "deb-src http://ppa.launchpad.net/\
webupd8team/java/ubuntu trusty main" | tee -a \
/etc/apt/sources.list.d/webupd8team-java.list

W kolejnym kroku dodajemy klucze, aktualizujemy repozytoria systemowe i instalujemy Java 8:

# apt-key adv --keyserver \
hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886

# apt-get update
# apt-get install oracle-java8-installer

[...]

Autor zawodowo zajmuje się informatyką ze specjalizacją w zakresie sieci bezprzewodowych oraz systemów transmisji głosu. Publikuje w magazynach komputerowych.

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma. Zapraszamy do składania zamówień na prenumeratę i numery archiwalne.
 
 

Polecamy

Biblioteka Informacja Publiczna

Specjalistyczne publikacje książkowe dla pracowników administracji publicznej

więcej