Wyszukiwanie w witrynie

Jak monitorować wydajność serwera CentOS 8/7 za pomocą Netdata


Istnieje mnóstwo narzędzi monitorujących, które służą do monitorowania wydajności systemów i wysyłania powiadomień, jeśli coś pójdzie nie tak. Jednakże etapy instalacji i konfiguracji są często żmudne.

Netdata to narzędzie typu open source do monitorowania i rozwiązywania problemów w czasie rzeczywistym, którego instalacja wymaga tylko kilku kroków. Repozytorium Git zawiera zautomatyzowany skrypt, który obsługuje większość procesu instalacji i konfiguracji oraz eliminuje uciążliwą konfigurację związaną z innymi narzędziami monitorującymi.

Netdata stała się niezwykle popularna od czasu jej pierwszego wydania w październiku 2013 r. Zbiera dane w czasie rzeczywistym, takie jak wykorzystanie procesora i pamięci RAM, statystyki przepustowości oraz wykorzystanie dysku, i wyświetla je na łatwych do interpretacji wykresach/ wykresy.

Dokonał ogromnego postępu, dzięki czemu znalazł się na liście wschodzących gwiazd Forbes 2020 Cloud 100. Na tej liście znajduje się 100 najlepszych firm zajmujących się chmurą prywatną.

W tym artykule zobaczymy, jak zainstalować Netdata na CentOS 8/7, aby monitorować w czasie rzeczywistym wydajność i stan serwerów i aplikacji.

Obsługiwane platformy

Netdata obsługuje następujące dystrybucje:

  • CentOS 8 i CentOS 7
  • RHEL 8 i RHEL 7
  • Fedora Linux

Jak zainstalować Netdata w CentOS Linux

1. Zanim zajmiemy się instalacją Netdata, obowiązkowych jest kilka wymaganych pakietów. Ale najpierw zaktualizuj system i zainstaluj repozytorium EPEL, jak pokazano.

sudo yum update
sudo yum install epel-release

2. Następnie zainstaluj wymagane pakiety oprogramowania, jak pokazano.

sudo yum install gcc make git curl zlib-devel git automake libuuid-devel libmnl autoconf pkgconfig findutils

3. Po zakończeniu instalacji wymaganych pakietów sklonuj repozytorium git Netdata, jak pokazano.

git clone https://github.com/netdata/netdata.git --depth=100

4. Następnie przejdź do katalogu Netdata i wykonaj skrypt install-required-packages.sh. Skrypt wykrywa Twoją dystrybucję Linuksa i instaluje dodatkowe pakiety wymagane podczas instalacji Netdata.

cd netdata/
./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata 

5. Na koniec, aby zainstalować Netdata, uruchom automatyczny skrypt Netdata, jak pokazano poniżej.

sudo ./netdata-installer.sh

Po wykonaniu skryptu zostaniesz poinformowany, gdzie będą przechowywane najważniejsze pliki Netdata. Należą do nich między innymi pliki konfiguracyjne, pliki internetowe, wtyczki, pliki baz danych i pliki dziennika.

6. Naciśnij „ENTER”, aby rozpocząć proces instalacji. Podczas procesu instalacji otrzymasz wskazówki dotyczące uzyskiwania dostępu do Netdata w przeglądarce i zarządzania Netdata, na przykład uruchamiania i zatrzymywania.

Skrypt działa przez dłuższą chwilę, dokonując wszystkich niezbędnych konfiguracji i poprawek podczas procesu instalacji. W moim przypadku zajęło to około 3-5 minut, a po zakończeniu wyświetlony komunikat powinien potwierdzać pomyślną instalację.

7. Po zainstalowaniu musimy uruchomić demona Netdata. Aby rozpocząć, włącz demona Netdata podczas uruchamiania i sprawdź stan, wywołując następujące polecenia:

sudo systemctl start netdata
sudo systemctl enable netdata
sudo systemctl status netdata

8. Domyślnie Netdata nasłuchuje na porcie 19999 i możesz to potwierdzić za pomocą polecenia netstat, jak pokazano:

sudo netstat -pnltu | grep netdata

9. Musimy otworzyć ten port w zaporze, aby mieć dostęp do Netdata przez przeglądarkę. Dlatego uruchom poniższe polecenia:

sudo firewall-cmd --add-port=19999/tcp --permanent
sudo firewall-cmd --reload

10. Aby uzyskać dostęp do Netdata, uruchom przeglądarkę i przeglądaj adres URL, jak pokazano:

http://centos8-ip:19999/

Otrzymasz panel kontrolny przedstawiający ogólną wydajność systemu na intuicyjnych i fajnych wykresach.

Możesz rzucić okiem na różne wykresy, klikając dane wymienione na prawym pasku bocznym. Na przykład, aby rzucić okiem na działające usługi systemowe, kliknij opcję „usługi systemowe”, jak pokazano.

Zabezpieczanie danych sieciowych za pomocą uwierzytelniania podstawowego w CentOS

Jak mogłeś niepokojąco zauważyć, Netdata nie zapewnia żadnej formy uwierzytelnienia. Oznacza to, że praktycznie każdy może uzyskać dostęp do pulpitu nawigacyjnego, pod warunkiem, że zdobędzie adres IP Netdata.

Na szczęście podstawowe uwierzytelnianie możemy skonfigurować przy pomocy programu htpasswd i serwera WWW Nginx jako odwrotnego proxy. Dlatego zamierzamy zainstalować serwer WWW Nginx.

sudo dnf install nginx

Po zainstalowaniu Nginx utworzymy plik konfiguracyjny w katalogu /etc/nginx/conf.d. Jeśli jednak używasz Nginx do innych celów niż Netdata, możesz skorzystać z katalogu sites-available.

sudo vim /etc/nginx/conf.d/default.conf

Dodaj całą następującą konfigurację i pamiętaj, aby zmienić dyrektywy server_ip i example.com na własny adres IP i nazwę serwera.

upstream netdata-backend {
    server 127.0.0.1:19999;
    keepalive 64;
}

server {
    listen server_ip:80;
    server_name example.com;

    auth_basic "Authentication Required";
    auth_basic_user_file netdata-access;

    location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://netdata-backend;
        proxy_http_version 1.1;
        proxy_pass_request_headers on;
        proxy_set_header Connection "keep-alive";
        proxy_store off;
    }
}

W celu uwierzytelnienia użytkownika utworzymy nazwę użytkownika i hasło dla użytkownika o nazwie tecmint za pomocą narzędzia htpasswd i przechowujemy dane uwierzytelniające w obszarze netdata-access plik.

sudo htpasswd -c /etc/nginx/netdata-access tecmint

Podaj hasło i potwierdź je.

Następnie zrestartuj serwer WWW Nginx, aby zmiany zaczęły obowiązywać.

sudo systemctl restart nginx

Aby sprawdzić, czy konfiguracja przebiegła prawidłowo, przejdź dalej i przeglądaj adres IP swojego serwera.

http://server-ip

Następnie uzyskasz dostęp do panelu Netdata.

I to wszystko, ludzie. Przeprowadziliśmy Cię przez proces instalacji narzędzia monitorującego Netdata w CentOS 8 i skonfigurowaliśmy podstawowe uwierzytelnianie w celu zabezpieczenia narzędzia monitorującego. Wyślij nam wiadomość i daj znać, jak poszło.