Kaip stebėti „CentOS 8/7“ serverio našumą naudojant „Netdata“


Yra daugybė stebėjimo įrankių, kurie naudojami norint stebėti sistemos našumą ir siųsti pranešimus, jei kas nors nepavyksta. Tačiau diegimo ir konfigūravimo veiksmai dažnai vargina.

„Netdata“ yra atvirojo kodo realaus laiko stebėjimo ir trikčių šalinimo įrankis, kuriam įdiegti reikia tik kelių žingsnių. „Git“ saugykloje yra automatizuotas scenarijus, kuris apdoroja didžiąją dalį diegimo ir konfigūravimo proceso ir pašalina sudėtingą konfigūraciją, susijusią su kitais stebėjimo įrankiais.

„Netdata“ tapo nepaprastai populiari nuo pat jos išleidimo 2013 m. Spalio mėn. Ji renka metriką realiuoju laiku, pvz., Disko naudojimą, ir pateikia juos lengvai interpretuojamose diagramose/grafikuose.

Tai padarė didžiulius šuolius ir ribas, ir tai pelnė vietą „Forbes 2020 Cloud 100“ kylančiose žvaigždėse. Šis sąrašas yra 100 geriausių privačių debesų bendrovių.

Šiame straipsnyje mes pamatysime, kaip galite įdiegti „Netdata“ į „CentOS 8/7“, kad galėtumėte stebėti serverių ir programų realiuoju laiku, našumą ir būklės stebėjimą.

„Netdata“ palaiko šiuos paskirstymus:

  • „CentOS 8“ ir „CentOS 7“
  • RHEL 8 ir RHEL 7
  • „Fedora Linux“

Kaip įdiegti „Netdata“ į „CentOS Linux“

1. Prieš pasinerdami į „Netdata“ diegimą, privalomi keli būtini paketai. Tačiau pirmiausia atnaujinkite sistemą ir įdiekite EPEL saugyklą, kaip parodyta.

$ sudo yum update
$ sudo yum install epel-release

2. Tada įdiekite reikiamus programinės įrangos paketus, kaip parodyta.

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

3. Įdiegę būtinus paketus, klonuokite „Netdata git“ saugyklą, kaip parodyta.

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

4. Tada eikite į „Netdata“ katalogą ir vykdykite scenarijų „install-required-packages.sh“. Scenarijus aptinka jūsų „Linux“ platinimą ir įdiegia papildomus paketus, kurių reikia diegiant „Netdata“.

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

5. Galiausiai, norėdami įdiegti „Netdata“, paleiskite „Netdata“ automatinį scenarijų, kaip parodyta žemiau.

$ sudo ./netdata-installer.sh

Vykdant scenarijų, jums bus pranešta, kur bus saugomi svarbiausi „Netdata“ failai. Tai apima konfigūracijos failus, žiniatinklio failus, papildinius, duomenų bazės failus ir žurnalo failus, kad paminėtume tik kelis.

6. Norėdami pradėti diegimo procesą, paspauskite „ENTER“. Diegimo proceso metu jums bus pateikti keli patarimai, kaip naršyklėje pasiekti „Netdata“ ir valdyti „Netdata“, pvz., Paleisti ir sustabdyti.

Scenarijus veikia gana ilgai, atlikdamas visas reikalingas konfigūracijas ir patobulinimus diegimo metu. Mano atveju tai užtruko apie 3–5 minutes, o kai tai bus padaryta, rodoma išvestis turėtų patvirtinti, kad diegimas buvo sėkmingas.

7. Įdiegę turime paleisti „Netdata“ demoną. Norėdami pradėti, įjunkite „Netdata“ demoną įkrovos metu ir patikrinkite, ar būsena iškviečia šias komandas:

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

8. Pagal numatytuosius nustatymus „Netdata“ klausosi 19999 prievado ir galite tai patvirtinti naudodami komandą netstat, kaip parodyta:

$ sudo netstat -pnltu | grep netdata

9. Turime atidaryti šį ugniasienės prievadą, kad galėtume pasiekti „Netdata“ per naršyklę. Todėl vykdykite toliau nurodytas komandas:

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

10. Norėdami pasiekti „Netdata“, suaktyvinkite naršyklę ir naršykite URL, kaip parodyta:

$ http://centos8-ip:19999/

Gausite prietaisų skydelį, kuris suteiks bendrą sistemos našumą intuityviuose ir šauniuose grafikuose.

Nesivaržykite pažvelgti į skirtingus grafikus spustelėdami metriką, pateiktą dešinėje šoninėje juostoje. Pvz., Norėdami pamatyti, kaip veikia „systemd“ paslaugos, spustelėkite parinktį „systemd services“, kaip parodyta.

„Netdata“ užtikrinimas naudojant pagrindinį „Autentifikavimą“ „CentOS“

Kaip pastebėjote nerimą keliantį faktą, „Netdata“ nepateikia jokios autentifikavimo formos. Tai reiškia, kad praktiškai kiekvienas gali pasiekti informacijos suvestinę, jei turi „Netdata“ IP adresą.

Laimei, mes galime sukonfigūruoti pagrindinį autentifikavimą naudodami „htpasswd“ programą ir „Nginx“ tinklo serverį kaip atvirkštinį tarpinį serverį. Todėl ketiname įdiegti „Nginx“ tinklo serverį.

$ sudo dnf install nginx

Įdiegę „Nginx“, kataloge /etc/nginx/conf.d sukursime konfigūracijos failą. Tačiau drąsiai naudokitės svetainių katalogu, jei „Nginx“ naudojate kitiems tikslams, išskyrus „Netdata“.

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

Pridėkite visą šią konfigūraciją ir būtinai pakeiskite „server_ip“ ir „example.com“ nurodymus naudodami savo serverio IP adresą ir serverio pavadinimą.

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

Norėdami nustatyti vartotojo tapatybę, naudodami įrankį „htpasswd“ sukursime naudotojo, vadinamo „tecmint“, vartotojo vardą ir slaptažodį, o kredencialus išsaugosime faile „netdata-access“.

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

Pateikite slaptažodį ir patvirtinkite jį.

Tada iš naujo paleiskite „Nginx“ žiniatinklio serverį, kad pakeitimai įsigaliotų.

$ sudo systemctl restart nginx

Norėdami patikrinti, ar konfigūracija įvyko teisingai, eikite ir naršykite savo serverio IP adresą.

http://server-ip

Po to gausite prieigą prie „Netdata“ informacijos suvestinės.

Ir viskas, žmonės. Mes padėjome jums įdiegti „Netdata Monitoring“ įrankį „CentOS 8“ ir sukonfigūravome pagrindinį autentifikavimą, kad apsaugotumėte stebėjimo įrankį. Atsiųskite mums šauksmą ir praneškite mums, kaip sekėsi.