Czy nie wszyscy chcielibyśmy, aby nasze sieci miały nieskończoną przepustowość? W rzeczywistości jest to jednak często bardzo ograniczony zasób. Dodaj do tego fakt, że nadmierne wykorzystanie przepustowości może mieć ogromny wpływ na wydajność sieci i mamy przepis na katastrofę.
Rozwiązanie: skonfiguruj system monitorowania przepustowości. Wiele z nich jest dostępnych. Większość z nich działa jednak w systemie Windows, a jeśli wybranym systemem operacyjnym jest Linux, opcje są nieco bardziej ograniczone. Jednak nadal masz wiele opcji, a my zamierzamy wprowadzić najlepsze narzędzia do monitorowania przepustowości w systemie Linux.
Zaczniemy od wprowadzenia monitorowania przepustowości i wyjaśnienia, co to jest. Następnie omówimy tajniki Simple Network Management Protocol, czyli SNMP, jedną z najczęściej używanych technologii monitorowania. Naszym kolejnym zadaniem będzie przyjrzenie się Linuksowi jako systemowi operacyjnemu, a dokładniej jako platforma narzędzi do monitorowania. I na koniec krótko omówimy niektóre z najlepszych narzędzi do monitorowania przepustowości w systemie Linux i opiszemy ich najlepsze funkcje.
Informacje o monitorowaniu przepustowości
Monitorowanie przepustowości sieci jest bardzo specyficznym rodzajem monitorowania. To, co robi, to pomiar natężenia ruchu przechodzącego przez jedną lub wiele określonych lokalizacji w sieci. Zazwyczaj punktami pomiarowymi są interfejsy routera lub przełącznika, ale nie jest niczym niezwykłym monitorowanie wykorzystania przepustowości interfejsu LAN serwera. Ważne jest, aby zdać sobie sprawę, że wszystko, co mierzymy, to natężenie ruchu. Monitorowanie przepustowości nie daje żadnych informacji o tym, jaki jest ruch, a jedynie o jego ilości.
Istnieje kilka powodów, dla których warto monitorować wykorzystanie przepustowości sieci. Przede wszystkim może pomóc w określeniu obszarów spornych. Wraz ze wzrostem wykorzystania obwodu sieciowego jego wydajność zaczyna spadać. Niestety nic nie możemy na to poradzić. Im bardziej zbliżasz się do maksymalnej pojemności, tym większy wpływ na wydajność. Umożliwiając monitorowanie wykorzystania sieci, narzędzia do monitorowania przepustowości dają szansę wykrycia wysokiego wykorzystania — i rozwiązania go — zanim stanie się zauważalne przez użytkowników.
Planowanie wydajności to kolejna ważna zaleta narzędzi do monitorowania sieci. Obwody sieciowe — zwłaszcza połączenia WAN na duże odległości — są drogie i często mają tylko taką przepustowość, jaka była pierwotnie wymagana, gdy były instalowane po raz pierwszy. Chociaż ta przepustowość mogła być wtedy akurat wtedy, ostatecznie będzie musiała zostać zwiększona. Monitorując ewolucję wykorzystania przepustowości obwodów sieciowych, będziesz mógł zobaczyć, które z nich wymagają aktualizacji i kiedy.
Narzędzia do monitorowania przepustowości mogą być również przydatne do rozwiązywania problemów ze słabą wydajnością aplikacji. Kiedy użytkownik skarży się, że jakaś zdalna aplikacja zwolniła, przyjrzenie się wykorzystaniu przepustowości sieci może dać całkiem dobre wyobrażenie, czy problem jest spowodowany przeciążeniem sieci. Jeśli zauważysz niskie wykorzystanie sieci, prawdopodobnie możesz skoncentrować swoje wysiłki na rozwiązywaniu problemów gdzie indziej.
Przedstawiamy prosty protokół zarządzania siecią (SNMP)
Wiele (jeśli nie wszystkie) narzędzi do monitorowania przepustowości sieci opiera się na protokole Simple Network Management Protocol (SNMP), aby wykonywać swoją magię. Dzieje się tak, ponieważ większość urządzeń sieciowych ma wbudowaną funkcję SNMP i może być odpytywana przez narzędzia monitorujące w regularnych odstępach czasu. Jednak pomimo swojej nazwy, która może prowadzić do innego myślenia, SNMP jest w rzeczywistości dość złożony. Ale nie martw się, nie musisz być ekspertem i wiedzieć o nim wszystko, aby z niego korzystać. To tak, jakbyś nie musiał być mechanikiem samochodowym, żeby prowadzić samochód. Lepiej jednak mieć przynajmniej jakieś pojęcie o tym, jak to działa, więc spójrzmy na to.
U jego podstaw SNMP jest protokołem komunikacyjnym, który określa, w jaki sposób system zarządzania SNMP może odczytywać i zapisywać parametry operacyjne w zdalnych urządzeniach. Parametry określane są jako identyfikatory obiektów lub OID. Niektóre z interesujących identyfikatorów OID z punktu widzenia monitorowania to te, które zawierają główne metryki urządzeń, takie jak na przykład obciążenie procesora i pamięci lub użycie dysku. Jednak podczas monitorowania wykorzystania przepustowości sieci szczególnie interesujące są dwa identyfikatory OID. Są to bajty wychodzące i bajty w licznikach powiązanych z każdym interfejsem. Są one automatycznie zwiększane przez urządzenia sieciowe w miarę wyprowadzania lub wprowadzania danych.
Sięgając do czasów, gdy bezpieczeństwo IT nie było problemem, SNMP ma tylko minimalne zabezpieczenia. Menedżer SNMP łączący się z urządzeniem obsługującym SNMP prześle wraz ze swoim żądaniem „ciąg społeczności”. Jeśli ciąg pasuje do skonfigurowanego w urządzeniu, żądanie zostanie wykonane. Urządzenia zazwyczaj mają skonfigurowane dwa ciągi społeczności, jeden dla identyfikatorów OID tylko do odczytu i jeden dla tych, które można modyfikować. Komunikacja nie jest zaszyfrowana i każdy, kto ją przechwytuje, zobaczy ciągi społeczności w postaci zwykłego tekstu. Dlatego protokół SNMP jest używany tylko w prywatnych, bezpiecznych sieciach.
Jak to działa w prawdziwym życiu
Oto jak większość systemów monitorowania używa SNMP do monitorowania wykorzystania przepustowości. Okresowo odczytują liczniki wejścia i wyjścia bajtów interfejsów urządzenia sieciowego w znanych odstępach czasu. Pięć minut to typowa wartość interwału, ale krótsze czasy mogą być użyte w celu uzyskania dokładniejszej rozdzielczości. Następnie przechowują odpytywane wartości w jakiejś bazie danych lub pliku.
Reszta procesu to tylko obliczenia matematyczne. System monitorowania odejmuje poprzednią wartość licznika od bieżącej, aby uzyskać liczbę bajtów przesłanych lub odebranych w okresie odpytywania. Następnie może pomnożyć tę liczbę przez osiem, aby uzyskać liczbę bitów, i podzielić ją przez liczbę sekund w przedziale, aby uzyskać liczbę bitów na sekundę. Informacje te są zwykle przedstawiane na wykresie pokazującym ich ewolucję w czasie i przechowywane w bazie danych.
Należy zauważyć, że otrzymujesz obliczenie średniego wykorzystania w okresie odpytywania, a nie rzeczywiste wykorzystanie przepustowości. Załóżmy na przykład, że obwód jest używany z maksymalną przepustowością w połowie okresu odpytywania i nie obsługuje żadnego ruchu w drugiej połowie. Pokazywałby się, że jest używany w 50% swojej pojemności, pomimo maksymalnego obciążenia przez dłuższy czas. Krótsze interwały odpytywania zmniejszą to zniekształcenie, ale należy pamiętać, że te systemy podają tylko wartości średnie.
Używanie Linuksa jako platformy monitorowania
Jako system operacyjny Linux nie różni się funkcjonalnie od innych, takich jak Windows czy Mac OS. Główną różnicą między Linuksem a innymi popularnymi systemami operacyjnymi jest fakt, że Linux jest przedsięwzięciem typu open source, a większość dystrybucji jest dostępna za darmo. Wiele osób myli open source i free. Prawdą jest, że oprogramowanie open source jest często darmowe, ale niekoniecznie tak jest. Na przykład system operacyjny Red Hat Enterprise Linux nie jest darmowy. Aby zwiększyć zamieszanie, aktorzy ruchu open source często odnoszą się do oprogramowania open source jako wolnego oprogramowania, które oznacza wolność, a nie brak kosztów.
Przez lata Linux, który kiedyś był marginalnym systemem operacyjnym, instalowanym przez nerdów i studentów informatyki — pamiętam, że spędzałem tygodnie na pobieraniu jednego obrazu dyskietki SLS Linux naraz przy połączeniu dialup 1200 bodów; Zdecydowanie byłem jednym z tych nerdów – stał się popularną opcją jako system operacyjny serwera. Niektóre ostatnie dystrybucje również czynią znaczne postępy jako realna alternatywa dla systemu Windows jako systemu operacyjnego komputera osobistego, chociaż jest to zupełnie inna debata.
Chociaż Linux jest popularnym systemem operacyjnym dla wszelkiego rodzaju serwerów, jest jeszcze bardziej, jeśli chodzi o uruchamianie określonych narzędzi. Istnieje kilka bezpłatnych narzędzi do monitorowania przepustowości sieci o otwartym kodzie źródłowym, które będą działać tylko w systemie Linux. A jeśli wybrane przez Ciebie narzędzie może działać zarówno w systemie Windows, jak i Linux, czy nie byłoby bardziej opłacalne uruchomienie na wolnym systemie operacyjnym niż marnowanie pieniędzy na kosztowny?
Chociaż niektórzy ludzie nadal nie ufają darmowym systemom operacyjnym i oprogramowaniu o otwartym kodzie źródłowym dla aplikacji o znaczeniu krytycznym i na przykład nie umieściliby swoich cennych danych korporacyjnych na serwerze MySQL działającym pod kontrolą systemu Linux, wielu z nich zwykle tego nie robi. mieć jak najwięcej zastrzeżeń do korzystania z platformy do uruchamiania narzędzi do administrowania siecią. Jedną z głównych zalet używania Linuksa jako podstawowej platformy narzędzi do monitorowania sieci jest łatwość konfiguracji serwera Linux tylko z wymaganymi pakietami. Chociaż można to zrobić w systemie Windows, jest to znacznie bardziej skomplikowane.
Najlepsze narzędzia do monitorowania przepustowości w systemie Linux
Przeszukaliśmy Internet w poszukiwaniu jednych z najlepszych narzędzi do monitorowania przepustowości, które można uruchomić w systemie Linux. To, co wymyśliliśmy, to niektóre produkty komercyjne, a niektóre bezpłatne i o otwartym kodzie źródłowym. Niektóre produkty z naszej listy można zainstalować w systemie Linux lub Windows, podczas gdy niektóre są tylko dla systemu Linux. Wszystkie oferują monitorowanie przepustowości SNMP i wszystkie mają scentralizowaną konsolę, w której można skonfigurować narzędzie i zobaczyć wyniki monitorowania. Chociaż istnieje kilka narzędzi tylko z wiersza poleceń, wykluczyliśmy je z naszej listy.
1. ManageEngine OpManager
ManageEngine OpManager to potężne narzędzie, które oferuje wszechstronne możliwości monitorowania sieci monitorowania sieci all-in-one. Może pomóc kontrolować wykorzystanie przepustowości sieci, wykrywać awarie sieci w czasie rzeczywistym, rozwiązywać problemy i zapobiegać przestojom. Narzędzie obsługuje różne środowiska od wielu dostawców i może być skalowane w celu dopasowania do Twojej sieci, niezależnie od jej wielkości. Może działać w systemie Linux lub Windows i umożliwia monitorowanie urządzeń i sieci oraz zapewnia widoczność całej infrastruktury sieciowej. Instalacja i konfiguracja tego produktu są szybkie i łatwe. Możesz go uruchomić w mniej niż dwie minuty. Nie wymaga skomplikowanych procedur instalacyjnych i jest dostarczany z wbudowanymi bazami danych i serwerami WWW.
ManageEngine OpManager stale monitoruje działanie urządzeń sieciowych w czasie rzeczywistym i wyświetla go na żywo kokpitów i wykresów. Oprócz przepustowości analizuje kilka krytycznych wskaźników operacyjnych, takich jak utrata pakietów, błędy i odrzucenia itp.
Narzędzie może pomóc w wykrywaniu, identyfikowaniu i rozwiązywaniu problemów z siecią za pomocą alertów opartych na progach. Możesz łatwo ustawić wiele progów dla każdej metryki wydajności i otrzymywać powiadomienia, gdy zostaną one przekroczone. Raportowanie to kolejny obszar, w którym wyróżnia się to narzędzie. Inteligentne raporty pozwolą Ci uzyskać szczegółowe informacje na temat wydajności sieci. Istnieje ponad 100 wbudowanych raportów, które w razie potrzeby można dostosowywać, planować i eksportować.
2. Nagios
Dostępne są dwie wersje Nagios . Jest darmowy i open-source Nagios Core i jest płatny Nagios XI . Oba mają ten sam podstawowy silnik, ale na tym kończy się podobieństwo. Nagios Core to system monitorowania typu open source, który działa w systemie Linux. System jest całkowicie modułowy, a jego podstawą jest rzeczywisty silnik monitorowania, stąd nazwa. Silnik uzupełniają dziesiątki dostępnych wtyczek, które można pobrać w celu zwiększenia funkcjonalności systemu. Każda wtyczka dodaje jedną lub kilka funkcji do rdzenia.
Zachowując podejście modułowe, interfejsy narzędzia są również modułowe, a kilka różnych opcji opracowanych przez społeczność jest również dostępnych do pobrania. Nagios Rdzeń , wtyczki i przód połączyć i uczynić za dość kompletny system monitoringu. Ta modułowość ma jednak wadę, ponieważ konfiguracja produktu może okazać się trudnym zadaniem.
Nagios XI to komercyjny produkt oparty na silniku Nagios Core , ale jest to kompletne, samodzielne rozwiązanie do monitorowania. Produkt jest skierowany do szerokiego grona odbiorców, od małych firm po duże korporacje. Jest znacznie łatwiejszy w instalacji i konfiguracji niż Nagios Core , dzięki kreatorowi konfiguracji i silnikowi automatycznego wykrywania. Oczywiście ta łatwość instalacji i konfiguracji ma swoją cenę. Możesz spodziewać się zapłaty około 2000 USD za licencję na 100 węzłów i około dziesięciu razy więcej za licencję nieograniczoną.
3. Rdzeń Zenosa
Chociaż Zenoss Core może nie być najpopularniejszym ze wszystkich narzędzi monitorujących na tej liście, naprawdę zasługuje na to, by tu być, głównie ze względu na imponujący zestaw funkcji i bardzo profesjonalny wygląd. Narzędzie może monitorować wiele rzeczy, takich jak wykorzystanie przepustowości i przepływ ruchu lub usługi, takie jak HTTP i FTP. Ma przejrzysty i prosty interfejs użytkownika, a jego system ostrzegania jest doskonały. Warto wspomnieć, że jest to dość unikalny system wielokrotnego ostrzegania. Pozwala to na powiadomienie drugiej osoby, jeśli pierwsza nie zareaguje we wcześniej określonym opóźnieniu. Ta funkcja jest powszechna w samodzielnych narzędziach do alertów, ale raczej rzadka w platformach monitorujących.
Z drugiej strony Zenoss Core jest jednym z najbardziej skomplikowanych systemów monitorowania w instalacji i konfiguracji. Instalacja jest procesem całkowicie opartym na wierszu poleceń. Biorąc pod uwagę, że dzisiejsi administratorzy sieci są przyzwyczajeni do instalatorów GUI, kreatorów konfiguracji i silników automatycznego wykrywania, instalacja produktu może wydawać się nieco archaiczna. Z drugiej strony jest to zgodne z filozofią Linuksa. Z drugiej strony dostępna jest obszerna dokumentacja dotycząca instalacji i konfiguracji, a efekt końcowy sprawia, że jest to warte twoich wysiłków.
4. Zabbix
Zabbix to kolejny darmowy produkt o otwartym kodzie źródłowym, który może być używany do monitorowania prawie wszystkiego. Narzędzia mogą działać na kilku dystrybucjach Linuksa — nawet w tym Rapsbian, dystrybucji Linuksa specyficznej dla Raspberry Pi — i będą monitorować wykorzystanie przepustowości sieci, serwery, aplikacje i usługi, a także środowiska oparte na chmurze. Ma bardzo profesjonalny wygląd i styl. Ten produkt ma również szeroki zestaw funkcji, nieograniczoną skalowalność, rozproszone monitorowanie, silne zabezpieczenia i wysoką dostępność. Pomimo tego, że jest darmowy, jest to prawdziwy produkt klasy korporacyjnej.
Zabbix wykorzystuje kombinację technologii monitorowania. Obsługuje monitorowanie SNMP oraz inteligentny interfejs monitorowania platformy (IMPI). Może również wykonywać monitorowanie oparte na agentach za pomocą agentów dostępnych dla większości platform. Aby ułatwić konfigurację, dostępne są automatyczne wykrywanie oraz gotowe szablony dla wielu urządzeń. Internetowy interfejs użytkownika narzędzia ma kilka zaawansowanych funkcji, takich jak pulpity nawigacyjne oparte na widżetach, wykresy, mapy sieci, pokazy slajdów i raporty z drążeniami. Zabbix posiada również wysoce konfigurowalny system alarmowania, który nie tylko wyśle szczegółowe powiadomienia, ale również może być dostosowany do roli odbiorcy. Może również eskalować problemy zgodnie z elastycznymi poziomami usług zdefiniowanymi przez użytkownika.
5. Kaktusy
Na tej liście musieliśmy uwzględnić kaktusy . W końcu, mając prawie 18 lat, jest to jedna z najstarszych darmowych i open-source'owych platform monitorujących. Co więcej, do dziś jest dość popularny i nadal jest aktywnie rozwijany z najnowszą wersją wydaną właśnie w czerwcu ubiegłego roku. Kaktusy mogą nie być tak bogate w funkcje, jak niektóre inne produkty, ale nadal są bardzo dobrym narzędziem. Jego internetowy interfejs użytkownika ma nieco styl retro, ale jest dobrze rozplanowany i łatwy do zrozumienia i użytkowania. Cacti składa się z szybkiego odpytywania, zestawu zaawansowanych szablonów graficznych i wielu metod pozyskiwania. Chociaż narzędzie wykorzystuje głównie SNMP do odpytywania urządzeń, można opracować niestandardowe skrypty do pobierania danych z praktycznie dowolnego źródła.
Główną zaletą tego narzędzia jest to, że urządzenia odpytujące w celu pobrania ich wskaźników — takich jak wykorzystanie przepustowości — i tworzenia wykresów zebranych danych na stronach internetowych. Robi to znakomicie, ale to właściwie wszystko, co zrobi. Jeśli nie potrzebujesz alertów, wymyślnych raportów lub innych dodatków, prostota produktu może być właśnie tym, czego potrzebujesz. A jeśli potrzebujesz więcej funkcji, dostępny jest kod źródłowy Cacti, który jest w całości napisany w PHP, dzięki czemu jest wysoce konfigurowalny i pozwala każdemu dodać brakujące funkcje, których potrzebuje.
Cacti intensywnie korzysta z szablonów, które ułatwiają konfigurację. Istnieją szablony urządzeń dla wielu popularnych typów urządzeń, a także szablony wykresów. Istnieje również ogromna społeczność internetowa użytkowników, którzy piszą niestandardowe szablony wszelkiego rodzaju i udostępniają je społeczności, a wielu producentów sprzętu oferuje również szablony Cacti do pobrania.
Zawijanie
Nawet jeśli Linux jest Twoją ulubioną platformą, widzieliśmy, że nadal masz wiele możliwości wyboru, jeśli chodzi o narzędzia do monitorowania przepustowości. A biorąc pod uwagę filozofię Linuksa, wiele z nich jest darmowych i open-source. W rzeczywistości używanie Linuksa może pozwolić Ci zbudować kompletny i bardzo wydajny system monitorowania bez innych inwestycji niż czas, który poświęcisz na jego skonfigurowanie.