Kiedy Linus Torvalds wydał pierwszą wersję swojego jądra Linuksa w 1991 roku, nikt nie przypuszczał, że kiedykolwiek rozwinie się on do tego, czym się stał. Dzisiaj Linux jest wszędzie i chociaż nie osiągnął jeszcze pozycji głównego systemu operacyjnego na komputery stacjonarne, jest obecnie powszechny na serwerach. Podobnie jak serwery z innymi systemami operacyjnymi, serwery Linux muszą być monitorowane. Dzisiejsze środowiska IT są tak duże i złożone, że narzędzia do monitorowania są niemal obowiązkowe. Ale ten post dotyczy nie tylko monitorowania serwerów Linux, ale także używania Linuksa jako platformy monitorowania.Niektóre z najlepszych narzędzi do monitorowania mogą działać w systemie Linux. W rzeczywistości niektóre nie działają na niczym innym. Przeszukaliśmy dla Ciebie rynek, szukając najlepszego oprogramowania i narzędzi do monitorowania Linuksa i cieszymy się, że możemy podzielić się rezultatami naszych wysiłków z naszymi czytelnikami.
Zaczniemy naszą dyskusję od krótkiego omówienia Linuksa, czym jest, jego historii i aktualnego stanu. Następnie omówimy monitorowanie komputerów z systemem Linux. Spróbujemy ustalić, czy są jakieś różnice między monitorowaniem hostów z systemem Linux a komputerami z innymi systemami operacyjnymi. Ponieważ Linux jest popularną platformą narzędzi do monitorowania, będzie to nasz następny temat, zanim w końcu przejdziemy do najciekawszej części, najlepszego oprogramowania i narzędzi do monitorowania Linuksa.
Słowo o Linuksie
Linux w swojej najbardziej elementarnej formie jest tylko jądrem systemu operacyjnego. Jest to podstawowy składnik systemu operacyjnego, który zapewnia różne usługi — takie jak zarządzanie pamięcią, plikami i zadaniami — innym procesom. Co za tym idzie, jest to nazwa, którą powszechnie nadajemy systemom operacyjnym opartym na jądrze, ale składającym się z kilku dodatkowych modułów, które sprawiają, że jest to kompletny system operacyjny komputera, który może być używany przez ludzi. Ważne jest, aby zrozumieć różnicę między jądrem Linux a systemem operacyjnym Linux. Jądro Linux jest używane w innych systemach operacyjnych, takich jak Android, najczęściej używany system operacyjny smartfonów.
Jako system operacyjny Linux nie różni się, mówiąc funkcjonalnie, zbytnio od innych, takich jak Windows czy OS X. Główną różnicą między Linuksem a innymi popularnymi systemami operacyjnymi jest fakt, że Linux jest produktem o otwartym kodzie źródłowym. 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.
Z biegiem lat Linux, który był raczej marginalnym systemem operacyjnym, instalowanym przez maniaków i studentów informatyki — pamiętam, że spędzałem tygodnie na pobieraniu jednego obrazu dyskietki na raz, przy łączu 1200 bodów; Myślę, że byłem jednym z tych dziwaków, stał się popularną opcją jako serwerowy system operacyjny.
Monitorowanie Linuksa
Monitorowanie Linuksa w najprostszym ujęciu jest bardzo podobne do monitorowania każdego innego systemu operacyjnego. W końcu Linux to system operacyjny jak każdy inny (choć też jest inny). A jeśli weźmiesz pod uwagę, że typowe monitorowanie serwerów ma więcej wspólnego ze sprzętem niż z systemem operacyjnym, łatwo zrozumieć, dlaczego nie różni się zbytnio.
Jednak system operacyjny jest używany przez narzędzia monitorujące do odczytywania stanu sprzętu. Niektóre narzędzia do monitorowania, na przykład, używają protokołu SNMP do pobierania metryk operacyjnych z systemów operacyjnych. Monitorowanie systemu Linux przez SNMP wymaga zainstalowania i uruchomienia na nim pakietu snmpd. snmpd to agent SNMP, który siedzi i czeka na żądania z narzędzi monitorujących SNMP. Po otrzymaniu żądania przetwarza je, zbiera żądane informacje i zwraca je żądającemu.
Inne systemy monitorowania używają lokalnego agenta do zbierania danych. Wybierając taki system do monitorowania serwerów Linux, ważne jest, aby upewnić się, że agent jest dostępny dla konkretnej dystrybucji systemu Linux. Niektóre narzędzia do monitorowania oparte na agentach mogą również wykorzystywać inne metody gromadzenia danych i często są najlepszymi opcjami w sieciach hybrydowych zawierających kombinację komputerów z systemem Windows, które można monitorować za pomocą niestandardowego agenta, oraz komputerów z systemem Linux monitorowanych za pomocą standardowych środków, takich jak SNMP.
Linux jako platforma monitorowania
Chociaż Linux jest popularnym systemem operacyjnym dla wszelkiego rodzaju serwerów, jest jeszcze bardziej, jeśli chodzi o uruchamianie określonych narzędzi. W szczególności istnieje kilka bezpłatnych narzędzi do monitorowania sieci o otwartym kodzie źródłowym, które będą działać w systemie Linux. I nawet jeśli wybrane przez Ciebie narzędzie mogłoby działać w systemie Windows, czy nie byłoby bardziej opłacalne uruchomienie na wolnym systemie operacyjnym niż marnowanie pieniędzy na kosztowny system operacyjny?
Niektórzy ludzie nadal nie ufają darmowemu oprogramowaniu o otwartym kodzie źródłowym, jeśli chodzi o aplikacje o znaczeniu krytycznym. Na przykład nie umieściliby swoich cennych danych korporacyjnych na serwerze SQL działającym pod Linuksem. Ale ci ludzie zwykle nie mają żadnych zastrzeżeń do korzystania z platformy do uruchamiania narzędzi do administrowania siecią.
Jedną z wielkich zalet używania Linuksa jako podstawowej platformy dla narzędzi do monitorowania sieci jest łatwość skonfigurowania serwera Linux tylko z wymaganymi pakietami. Chociaż można to zrobić w systemie Windows, jest to znacznie bardziej skomplikowane.
Nasze najlepsze oprogramowanie i narzędzia do monitorowania systemu Linux
Dość powiedziane o Linuksie, spójrzmy na najlepsze narzędzie, jakie znaleźliśmy. Jak wspomniano, nasza lista zawiera kombinację narzędzi, których można użyć do monitorowania serwerów i sieci Linux, a także oprogramowania do monitorowania sieci działającego w systemie Linux. Niektóre narzędzia łączą oba i mogą monitorować hosty Linuksa podczas pracy w Linuksie. Są idealne dla sklepów tylko z Linuksem.
1. Serwer SolarWinds i monitor aplikacji (bezpłatna wersja próbna)
SolarWinds od około dwudziestu lat tworzy jedne z najlepszych narzędzi do administrowania siecią. Jest wysoko ceniony, a jego flagowy produkt, SolarWinds Network Performance Monitor, konsekwentnie otrzymuje najlepsze recenzje jako jedno z najlepszych narzędzi do monitorowania przepustowości sieci. SolarWinds słynie również z bezpłatnych narzędzi, mniejszych produktów, z których każdy odpowiada na określone potrzeby administratorów sieci. Zaawansowany kalkulator podsieci SolarWinds i serwer Kiwi Syslog to dwa dobre przykłady tych bezpłatnych narzędzi.
Jak opisuje to SolarWinds, Server And Application Monitor jest opartym na systemie Windows „oprogramowaniem do monitorowania serwerów stworzonym w celu znajdowania i rozwiązywania problemów z aplikacjami”. Za pomocą tego narzędzia będziesz mógł monitorować dowolny serwer z dowolną aplikacją, w dowolnym miejscu. Może być używany do aktywnego monitorowania wydajności, pojemności i kondycji serwerów i aplikacji z systemami Linux i Windows w centrach danych, biurach zdalnych i w chmurze.
Składniki monitorowania serwera Linux w Monitorze serwera i aplikacji umożliwiają monitorowanie, alertowanie i raportowanie problemów z wydajnością na serwerach z systemem Linux. Możesz monitorować wykorzystanie zasobów na swoich serwerach z systemem Linux. Otrzymuj alerty o przeciążeniu procesora, niewystarczającej ilości pamięci RAM i problemach z pamięcią masową, takich jak brak pojemności dysków. Będziesz także mógł monitorować stan komponentów sprzętowych na serwerze z systemem Linux, w tym temperaturę, prędkość wentylatora, zasilanie i inne. Możesz otrzymywać alerty, gdy składniki sprzętowe serwera są w stanie ostrzeżenia lub krytycznego, co potencjalnie skraca czas przestoju serwera z powodu awarii sprzętu.
Ta wszechstronna platforma monitorowania serwerów zawiera łatwy w użyciu i konfigurowalny internetowy pulpit nawigacyjny, z którego można monitorować ponad 1200 aplikacji, serwerów, baz danych i pamięci masowej dostawców. W SolarWinds Application Server i monitor zapewnia automatyczne wykrywanie i mapowanie aplikacji i infrastruktury. Posiada również konfigurowalne szablony monitorowania oraz gotowe alerty i raporty.
Cena serwera SolarWinds i monitora aplikacji zależy od liczby monitorowanych komponentów, węzłów i woluminów. Zaczyna się od 2 995 USD za 150 monitorów. Darmo 30-dniowa wersja testowa jest dostępna do pobrania , powinien chcesz nadać produktowi jazdę próbną przed zakupem.
2. PRTG
Paessler Router Traffic Grapher (PRTG) jest oparte na systemie Windows narzędzie inny, który jest idealny do monitorowania zasobów systemu Linux. Jest to jedno z najłatwiejszych i najszybszych narzędzi do skonfigurowania, a Paessler twierdzi, że możesz zacząć działać w ciągu kilku minut. Prawdą jest, że konfiguracja produktu jest imponująco szybka, częściowo dzięki funkcji automatycznego wykrywania, która skanuje sieć i automatycznie dodaje znalezione komponenty.
Interfejs użytkownika (a raczej interfejsy) to kolejna mocna strona oprogramowania. Możesz wybierać między natywną konsolą Windows, interfejsem internetowym opartym na Ajax lub aplikacjami mobilnymi na Androida, iOS i Windows Phone. Jedna z unikalnych funkcji aplikacji mobilnych pozwoli Ci zeskanować etykietę z kodem QR umieszczoną na Twoim sprzęcie, aby szybko sprawdzić jego status.
PRTG może monitorować prawie wszystko dzięki innowacyjnej architekturze czujników. Możesz myśleć o czujnikach jako dodatkach do produktu. Jednak czujniki są już wbudowane w produkt. Dostosowane czujniki Linux i Unix służą do monitorowania hostów Linux bez konieczności instalowania lub modyfikowania czegokolwiek. Serwery Linux są monitorowane przy użyciu kombinacji protokołów WBEM i SSH. Dane są przesyłane za pośrednictwem bezpiecznego połączenia, aby zapobiec naruszeniu poufnych informacji podczas wysyłania danych monitorowania.
Cena PRTG opiera się na liczbie używanych czujników, przy czym czujnik jest dowolnym parametrem lub metryką, którą należy monitorować. Na przykład, każdy interfejs monitorowany przez SNMP zużywa jeden czujnik. Podobnie każdy host Linux używa czujnika. Produkt jest dostępny w w pełni funkcjonalnej bezpłatnej wersji, która ogranicza się do monitorowania 100 czujników. W przypadku większej liczby czujników wymagane są płatne licencje. Ich cena różni się w zależności od pojemności czujnika, zaczynając od 1 600 USD za 500 czujników. Bezpłatna, 30-dniowa wersja próbna bez ograniczeń jest dostępna do pobrania.
3. Zabbix
Zabbix to darmowy produkt o otwartym kodzie źródłowym, którego można używać do monitorowania wszystkiego. Narzędzia mogą działać na kilku dystrybucjach Linuksa — w tym Rapsbian, wersji Raspberry Pi na Linuksie — i będą monitorować sieci, serwery, aplikacje i usługi oraz środowiska chmurowe. Charakteryzuje się wysoce profesjonalnym wyglądem i obsługą, podobnie jak można oczekiwać od produktu komercyjnego. Jednak dobry wygląd nie wystarczy, aby znaleźć się na naszej liście. Na szczęście produkt ten oferuje również szeroki zestaw funkcji, nieograniczoną skalowalność, rozproszone monitorowanie, silne zabezpieczenia i wysoką dostępność. 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.
Produkt posiada również wysoce konfigurowalny system alertów, który nie tylko wysyła powiadomienia, które zawierają informacje o czasie wykonywania i stanach magazynowych, ale można go również dostosować do roli odbiorcy. Może również eskalować problemy zgodnie z elastycznymi poziomami usług zdefiniowanymi przez użytkownika. Możesz nawet pozwolić Zabbix na automatyczne naprawienie niektórych problemów.
4. Nagios
Dostępne są dwie konkurencyjne wersje Nagios . Jest darmowy i open-source Nagios Core i jest płatny Nagios XI . Oba mają ten sam podstawowy silnik, ale na tym podobieństwo się kończy. 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. Silnik uzupełniają dziesiątki dostępnych wtyczek, które można pobrać w celu zwiększenia funkcjonalności systemu. Każda wtyczka dodaje 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. Rdzeń Nagios , wtyczki i przód połączyć i uczynić za dość kompletny system monitoringu. Biorąc to pod uwagę, prawdopodobnie nie zaskoczy cię zbytnio, gdy powiem ci, że konfiguracja Nagios Core może być trudnym zadaniem.
Nagios XI to produkt komercyjny oparty na silniku Nagios Core . Jest to jednak 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 nie jest darmowe. 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ą.
5. Rdzeń Zenosa
Zenoss Core prawdopodobnie nie jest tak popularny, jak niektóre inne narzędzia monitorujące z tej listy, ale naprawdę zasługuje na swoje miejsce głównie ze względu na zestaw funkcji i profesjonalny wygląd. Narzędzie może monitorować wiele rzeczy, takich jak wykorzystanie przepustowości, 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. Jedna rzecz, która szczególnie nam się podobała, to dość wyjątkowy system wielokrotnego ostrzegania. Pozwala to na powiadomienie drugiej osoby, jeśli pierwsza nie zareaguje we wcześniej określonym opóźnieniu.
Jednak nie wszystko jest idealne. Zenoss Core to jeden z najbardziej skomplikowanych systemów monitorowania w instalacji i konfiguracji. Instalacja jest procesem całkowicie opartym na wierszu poleceń. Dzisiejsi administratorzy sieci są przyzwyczajeni do instalatorów GUI, kreatorów konfiguracji i silników automatycznego wykrywania. Może to sprawić, że instalacja produktu będzie wydawać się nieco archaiczna. Dostępna jest jednak obszerna dokumentacja, a wynik końcowy sprawia, że jest to warte wysiłku instalacyjnego.
6. Kaktusy
Na tej liście musieliśmy uwzględnić kaktusy. W końcu jest to jedna z najstarszych darmowych platform monitorujących o otwartym kodzie źródłowym. I do dziś jest dość popularny. Chociaż może nie być tak bogaty w funkcje, jak niektóre produkty komercyjne, a nawet niektóre produkty typu open source, nadal jest doskonałym narzędziem. jego internetowy interfejs użytkownika ma nieco klasyczny styl — nie oczekuj żadnych animacji HTML 5 — ale jest dobrze rozplanowany i łatwy do zrozumienia i użycia. Cacti składa się z szybkiego odpytywania, zaawansowanych szablonów graficznych i wielu metod pozyskiwania. Chociaż narzędzie opiera się głównie na sondowaniu SNMP, można opracować niestandardowe skrypty w celu uzyskania danych z praktycznie dowolnego źródła.
Główną siłą tego narzędzia są urządzenia odpytujące w celu pobrania ich metryk i wykresów zebranych danych na stronach internetowych. Naprawdę robi to znakomicie, ale to wszystko, co zrobi. Jeśli jednak nie potrzebujesz alertów, wymyślnych raportów ani innych dodatków, prostota produktu może być właśnie tym, czego potrzebujesz. A jeśli potrzebujesz więcej, Cacti jest w całości napisany w PHP, dzięki czemu jest wysoce konfigurowalny. Możesz łatwo dostosować go do naszych konkretnych potrzeb i dodać brakujące funkcje, których potrzebujesz.
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.