6 samoobsługowych, lekkich narzędzi do monitorowania serwerów

Monitorowanie serwerów ma kluczowe znaczenie dla firm, aby zapewnić prawidłowe działanie różnych systemów.

Wraz z rozwojem firmy zaczynają rosnąć zasoby, siła robocza, usługi, systemy i infrastruktura IT. Dlatego rozwiązanie do monitorowania wydajności staje się ważne, aby obserwować stan, działania i możliwości serwerów.

W tym artykule omówię wiele lekkich, darmowych narzędzi do monitorowania serwerów.

Każdy administrator IT musi stawić czoła takim wyzwaniom – awaria serwera, powolna aplikacja, nieoczekiwane przestoje, konfigurowanie zależności, rozwiązywanie problemów z wyciekami pamięci itp. Aby rozwiązać te problemy, wymagane jest oprogramowanie/aplikacje monitorujące IT.

Nagios i Zabbix to najpopularniejsze narzędzia do monitorowania całej infrastruktury. Korzystając z tych narzędzi, możesz monitorować prawie wszystko – wydajność serwera, wydajność sieci, a także protokoły, systemy operacyjne, aplikacje, strony internetowe itp.

Ale jeśli twoja infrastruktura nie jest wystarczająco duża lub twoim wymaganiem jest tylko monitorowanie wydajności serwera, zamiast sięgać po pełnoprawne kompleksowe narzędzie, możesz wybrać lekkie, samoobsługowe oprogramowanie do monitorowania serwerów.

Uwaga: jeśli używasz Linuksa, możesz także wypróbować wbudowane polecenia do monitorowania procesora, pamięci i procesu.

Oddział

Oddział podaje minimalne/główne informacje związane tylko z serwerami. Jest kompatybilny ze wszystkimi popularnymi systemami operacyjnymi.

Zastosowania totemu OSHI, która jest bezpłatną biblioteką Java do pobierania informacji o systemie operacyjnym i sprzęcie. Udostępnia informacje, takie jak wersja systemu operacyjnego, pamięć, procesor, dysk i partycje, użycie procesora itp.

Pulpit nawigacyjny składa się z pięciu różnych sekcji:

  • Procesor: nazwa, % wykorzystania, liczba rdzeni, bit, częstotliwość
  • Maszyna: system operacyjny i jego wersja, % pamięci RAM, ilość pamięci RAM, typ pamięci RAM, liczba bieżących procesów
  • Pamięć masowa: nazwa, % użycia, rozmiar pamięci masowej, liczba dysków, pamięć wirtualna
  • % wykorzystania: Ta sekcja przedstawia wizualizację procesora, pamięci i pamięci masowej w ciągu ostatnich 20 sekund
  • Ward: Pokazuje czas pracy od ostatniego rozruchu w systemie Linux i czas twardych resetów w systemie Windows

Aby uruchomić Warda, możesz utworzyć plik jar tego projektu i uruchomić go lub pobrać najnowszy plik jar i uruchomić go. Możesz także uruchomić Ward wewnątrz kontenera dokowanego.

Dane sieciowe

Dane sieciowe to darmowe oprogramowanie typu open source do monitorowania systemów i aplikacji w czasie rzeczywistym. Może działać na systemach Linux, FreeBSD, macOS, kontenerach dokerów, urządzeniach IoT.

Możesz zainstalować agenta Netdata w swoim systemie, aplikacji lub kontenerze, a on będzie dostarczał wszystkie informacje o wydajności i kondycji w czasie rzeczywistym.

Możesz wybrać pokazany powyżej wykres procesora w żółtym kolorze, przeciągając wykres i powiększając/pomniejszając za pomocą SHIFT + kółko myszy, a ten obszar zostanie wyświetlony szczegółowo. Można go łatwo zintegrować z innymi narzędziami, takimi jak Prometheus, AWS Kinesis, Graphite, MongoDB itp.

Funkcje danych sieciowych:

  • Szybka i prosta instalacja
  • Dostarcza dane w czasie rzeczywistym
  • Możliwość monitorowania tysięcy metryk na węzeł
  • Może samodzielnie zbierać do 10 000 metryk na serwer
  • Przechowuje dane historyczne z każdej sekundy
  • Bardzo łatwa do zrozumienia prezentacja deski rozdzielczej
  • Identyfikuje anomalie superfakt za pomocą nowoczesnego wizualizatora metryk
  • Do uruchomienia Netdata nie jest wymagany żaden dedykowany zasób

Prometeusz + Grafana

Prometeusz to narzędzie typu open source do monitorowania metryk systemowych i Grafana to platforma wizualizacji typu open source. Zintegrowana konfiguracja Prometheus i Grafana to potężne środowisko do wydajnego monitorowania serwerów.

Serwer Prometheus okresowo zbiera wszystkie dane, Prometheus staje się źródłem danych dla Grafany, a Grafana wizualizuje wszystkie metryki na pulpicie nawigacyjnym. Masz nawet opcję w Grafanie, aby zapytać o wizualizowane metryki.

Warto wypróbować to połączenie!

Spojrzenia

Spojrzenia to wieloplatformowe narzędzie do monitorowania napisane w języku Python. Obsługuje tylko python 2.7 lub python >=3.4. Wykorzystuje biblioteki Pythona (psutil) do zbierania wszystkich informacji systemowych.

W zależności od rozmiaru interfejsu (mobilny, internetowy interfejs użytkownika, terminal) informacje wyświetlane w interfejsie użytkownika będą się dynamicznie zmieniać.

Funkcje spojrzeń:

  • Zdalne monitorowanie dostępne przez terminal, Web UI lub API (serwer XML-RPC i RESTful JSON)
  • Możliwość wyeksportowania statystyk do pliku lub bazy danych
  • Łatwa instalacja za pomocą jednego polecenia – spojrzenie na instalację pip
  • Kontener Dockera dostępny dla Glances

Jeśli potrzebujesz lepszej wizualizacji, możesz wyeksportować dane z Glances do InfluxDB i zwizualizować te dane na Grafanie.

Linuksowy Dash

Linuksowy Dash to internetowy pulpit nawigacyjny dla systemów Linux. Interfejs użytkownika Linux Dash jest oparty na Angular, a kilka języków obsługuje stronę serwera.

Karta stanu systemu pokazuje informacje o wykorzystaniu pamięci RAM, średnim obciążeniu procesora, wykorzystaniu procesora, procesach procesora i pamięci RAM, partycjach dysków, wykorzystaniu wymiany, temperaturze procesora i procesach Docker.

Podaje również informacje na poziomie sieci, konta i aplikacji.

Funkcje Linux Dash:

  • Obsługuje również WebSocket, aby zapewnić wizualizację danych systemowych w czasie rzeczywistym
  • Przeciągnij i upuść interfejs użytkownika
  • Konfigurowalne ekrany (minimalizuj, rozwijaj, dopasowuj) na desce rozdzielczej
  • Implementacja po stronie serwera dostępna w kilku językach (Node.js, Python, Go, PHP)

Conky

Conky jest monitorem systemu oryginalnie napisanym dla X (system okien). Obecnie działa na wielu różnych platformach. Możesz go uruchomić na X, Linux, Mac OS (używając X quartz) i na większości BSD.

Wyświetla informacje za pomocą prostego tekstu lub widżetów paska postępu i wykresów przy użyciu różnych czcionek i kolorów.

Funkcje Conky’ego:

  • Ponad 300 wbudowanych obiektów pokazujących stan systemu
  • Bardzo proste interfejsy użytkownika
  • Obsługuje odtwarzacze muzyczne, takie jak Audacious, MPD
  • Obsługuje POP3 i IMAP
  • Potrafi wyświetlać dowolne informacje za pomocą skryptów i programów zewnętrznych

Wniosek

Monitorowanie wydajności serwera jest rzeczywiście konieczne. Jeśli nie zostanie wykonana prawidłowo, może powodować problemy z wydajnością i dyspozycyjnością, które mogą utrudniać działalność. Ale nie musisz się martwić, jeśli korzystasz z oprogramowania monitorującego, aby upewnić się, że serwer działa dobrze.

Alternatywnie możesz także wypróbować oparte na chmurze rozwiązanie do monitorowania serwerów, w którym nie musisz instalować i zarządzać oprogramowaniem do monitorowania.