Kako pratiti performanse CentOS 8/7 servera koristeći Netdata


Postoji mnoštvo alata za praćenje koji se koriste za praćenje performansi sistema i slanje obaveštenja u slučaju da nešto krene po zlu. Međutim, uključeni koraci instalacije i konfiguracije često su zamorni.

Netdata je alat za praćenje i rješavanje problema otvorenog koda u realnom vremenu koji zahtijeva samo nekoliko koraka da se instalira. Git spremište dolazi sa automatiziranom skriptom koja upravlja najvećim dijelom procesa instalacije i konfiguracije i uklanja glomaznu konfiguraciju povezanu s drugim alatima za praćenje.

Netdata je postao veoma popularan od svog prvobitnog izdanja u oktobru 2013. Sakuplja metriku u realnom vremenu kao što su upotreba CPU-a i RAM-a, statistika propusnog opsega i iskorištenost diska i prikazuje ih na grafikonima koji se lako tumače/ grafovi.

Napravio je velike skokove i to mu je zaslužilo mjesto u Forbes 2020 Cloud 100 zvijezdama u usponu. Ova lista čini 100 najboljih privatnih kompanija u oblaku.

U ovom članku ćemo vidjeti kako možete instalirati Netdata na CentOS 8/7 za praćenje u realnom vremenu, performanse i praćenje stanja servera i aplikacija.

Podržane platforme

Netdata podržava sljedeće distribucije:

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

Kako instalirati Netdata u CentOS Linux

1. Prije nego zaronimo u instalaciju Netdata, nekoliko preduvjetnih paketa je obavezno. Ali prvo, ažurirajte sistem i instalirajte EPEL spremište kao što je prikazano.

sudo yum update
sudo yum install epel-release

2. Zatim instalirajte potrebne softverske pakete kao što je prikazano.

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

3. Kada završite sa instaliranjem neophodnih paketa, klonirajte Netdata git spremište kao što je prikazano.

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

4. Zatim idite u direktorij Netdata i izvedite skriptu install-required-packages.sh. Skripta otkriva vašu Linux distribuciju i instalira dodatne pakete koji su potrebni tokom instalacije Netdata.

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

5. Konačno, da instalirate Netdata, pokrenite automatsku skriptu Netdata kao što je prikazano ispod.

sudo ./netdata-installer.sh

Nakon izvršenja skripte, bit ćete obaviješteni o tome gdje će biti pohranjeni ključni Netdata fajlovi. To uključuje konfiguracijske datoteke, web datoteke, dodatke, datoteke baze podataka i log datoteke da spomenemo samo neke.

6. Pritisnite ‘ENTER’ da započnete proces instalacije. Tokom procesa instalacije, dobićete nekoliko saveta o tome kako da pristupite Netdata u pretraživaču i upravljate Netdata, kao što je pokretanje i zaustavljanje.

Skripta radi dosta dugo praveći sve potrebne konfiguracije i podešavanja tokom procesa instalacije. U mom slučaju, trebalo je oko 3-5 minuta, a kada se završi, prikazani izlaz bi trebao biti potvrda da je instalacija bila uspješna.

7. Jednom instaliran, moramo imati demon Netdata pokrenut i pokrenut. Za početak, omogućite Netdata demon pri pokretanju i provjerite status pozovite sljedeće komande:

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

8. Prema zadanim postavkama, Netdata sluša na portu 19999 i to možete potvrditi korištenjem naredbe netstat kao što je prikazano:

sudo netstat -pnltu | grep netdata

9. Moramo otvoriti ovaj port na firewall-u da bismo imali pristup Netdata putem pretraživača. Stoga pokrenite naredbe u nastavku:

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

10. Za pristup Netdata, pokrenite pretraživač i pregledajte URL kao što je prikazano:

http://centos8-ip:19999/

Dobićete prikazanu kontrolnu tablu koja vam daje ukupne performanse sistema na intuitivnim i cool grafikonima.

Slobodno bacite pogled na različite grafikone klikom na metrike navedene na desnoj bočnoj traci. Na primjer, da biste imali uvid u sistemske usluge koje rade, kliknite na opciju 'systemd usluge' kao što je prikazano.

Osiguravanje Netdata s osnovnom autentifikacijom na CentOS-u

Kao što ste mogli alarmantno primijetiti, Netdata ne pruža nikakav oblik autentifikacije. Ovo implicira da praktično svako može pristupiti kontrolnoj tabli pod uslovom da dobije Netdata IP adresu.

Srećom, možemo konfigurirati osnovnu autentifikaciju koristeći program htpasswd i Nginx web server kao obrnuti proxy. Stoga ćemo instalirati Nginx web server.

sudo dnf install nginx

Sa instaliranim Nginxom, kreirat ćemo konfiguracijski fajl unutar /etc/nginx/conf.d direktorija. Međutim, slobodno koristite direktorij sites-available ako koristite Nginx u druge svrhe osim Netdata.

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

Dodajte sljedeću cijelu konfiguraciju i provjerite da li ste promijenili server_ip i example.com direktive s vlastitom IP adresom servera i imenom servera.

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;
    }
}

Za autentifikaciju korisnika, kreirat ćemo korisničko ime i lozinku za korisnika pod nazivom tecmint pomoću alata htpasswd i zadržati vjerodajnice pod netdata-access fajl.

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

Unesite lozinku i potvrdite je.

Zatim ponovo pokrenite Nginx web server kako bi promjene stupile na snagu.

sudo systemctl restart nginx

Da biste testirali da li je konfiguracija prošla ispravno, nastavite i pregledajte IP adresu vašeg servera.

http://server-ip

Nakon toga, dobićete pristup Netdata kontrolnoj tabli.

I to je to, ljudi. Proveli smo vas kroz instalaciju Netdata alata za nadgledanje na CentOS 8 i konfigurisali osnovnu autentifikaciju kako bismo osigurali alat za nadzor. Javite nam se i javite nam kako je prošlo.