Kā uzraudzīt Ubuntu veiktspēju, izmantojot Netdata


Netdata ir bezmaksas un joslas platuma statistika, pieminot dažus.

Turklāt Netdata nodrošina arī interaktīvas metriskas vizualizācijas, kurām var piekļūt tīmekļa pārlūkprogrammā, kā arī inteliģentus trauksmes signālus, kas palīdz novērst sistēmas kļūdas.

Netdata progresīvākā tehnoloģija un popularitāte ir nopelnījusi vietu Forbes mākoņa 100 uzlecošajās zvaigznēs 2020. gadā, kas nebūt nav nekāds sniegums. Patiesībā šīs rokasgrāmatas tapšanas laikā tā ir saņēmusi gandrīz 50 000 Github zvaigžņu.

Netdata instalēšanai varat izmantot divus veidus. BASH čaulā varat uzreiz palaist automatizētu skriptu. Tas atjaunina jūsu sistēmas un sāk Netdata instalēšanu. Varat arī klonēt Netdata Git repozitoriju un pēc tam izpildīt automatizēto skriptu. Pirmā metode ir vienkārša un vienkārša, un mēs pievērsīsimies šajā rokasgrāmatā.

Šajā rakstā mēs redzēsim, kā jūs varat instalēt Netdata Ubuntu, lai uzraudzītu serveru un lietojumprogrammu reāllaika, veiktspējas un veselības uzraudzību.

Netdata atbalsta šādus Ubuntu LTS izplatījumus:

  • Ubuntu 20.04
  • Ubuntu 18.04
  • Ubuntu 16.04

Kā instalēt Netdata Ubuntu Linux

Lai sāktu instalēšanu, palaidiet komandu bash terminālā, lai lejupielādētu un izpildītu skriptu.

$ bash <(curl -Ss https://my-netdata.io/kickstart.sh)

Skripta izpildes laikā notiek:

  • Skripts automātiski atklāj jūsu Linux izplatīšanu, atjaunina pakotņu sarakstu un instalē visas nepieciešamās programmatūras pakotnes.
  • Jaunākais netdata avota koks tiek lejupielādēts ceļā /usr/src/netdata.git.
  • Skripts instalē netdata, palaižot ./netdata-installer.sh skriptu no avota koka.
  • Vietne cron.daily tiek atjaunināta, lai nodrošinātu, ka netdati tiek atjaunināti katru dienu.

Skripta palaišanas laikā jums tiks sniegti padomi, kā pārlūkprogrammā piekļūt Netdata un kā to pārvaldīt kā systemd pakalpojumu.

Instalēšana aizņem kādu laiku, tāpēc dodiet tai apmēram 10 minūtes un atgriezieties. Visbeidzot, jūs iegūsiet izvadi zemāk, kad skripts pabeigs instalāciju.

Pēc instalēšanas sāciet, iespējojiet un pārbaudiet Netdata statusu, kā parādīts.

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

Pēc noklusējuma Netdata klausās 19999. gada portu, un to var apstiprināt, izmantojot komandu netstat, kā parādīts.

$ sudo netstat -pnltu | grep netdata

Ja darbojas UFW, mēģiniet atvērt 19999 portu, jo tas būs nepieciešams, pārlūkprogrammā piekļūstot Netdata.

$ sudo ufw allow 19999/tcp
$ sudo ufw reload

Visbeidzot, lai piekļūtu Netdata, pārslēdzieties uz savu pārlūkprogrammu un pārlūkojiet šo URL

http://server-ip:19999/

Tas ir tas, kas jūs sveicina, kad pārlūkojat URL. Faktiski jūs sapratīsit, ka jums nebūs jāpiesakās. Visa sistēmas metrika tiks parādīta, kā parādīts.

Varat pārlūkot dažādas diagrammas, informācijas paneļa labajā sānjoslā noklikšķinot uz vēlamās metrikas. Piemēram, lai pārbaudītu tīkla saskarnes statistiku, noklikšķiniet uz opcijas Tīkla saskarnes.

Netdata nodrošināšana ar pamata autentifikāciju Ubuntu

Līdz šim brīdim ikviens var piekļūt Netdata informācijas panelim un palūkoties uz dažādiem sistēmas rādītājiem. Tas nozīmē drošības pārkāpumu, un mēs noteikti vēlamies no tā izvairīties.

Paturot to prātā, mēs konfigurēsim pamata HTTP autentifikāciju. Mums jāinstalē pakete apache2-utils, kas nodrošina programmu htpasswd, kas tiks izmantota lietotāja lietotājvārda un paroles konfigurēšanai. Turklāt mēs instalēsim Nginx tīmekļa serveri, kas darbosies kā apgrieztais starpniekserveris.

Lai instalētu Nginx tīmekļa serveri un apache2-utils pakotni, izpildiet komandu.

$ sudo apt install nginx apache2-utils

Ar Nginx un apache2-utils instalēšanu mēs izveidosim konfigurācijas failu direktorijā /etc/nginx/conf.d. Tomēr nekautrējieties izmantot vietnēs pieejamo direktoriju, ja Nginx izmantojat citiem mērķiem, izņemot Netdata.

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

Konfigurācijas failā mēs vispirms norādīsim Nginx uz starpniekservera ienākošajiem pieprasījumiem Netdata informācijas panelim. Pēc tam mēs pievienosim dažus pamata autentifikācijas uzvednes, kas tikai pilnvarotiem lietotājiem piešķir piekļuvi Netdata informācijas panelim, izmantojot lietotājvārda/paroles autentifikāciju.

Šeit ir visa konfigurācija. Esiet uzmanīgs, aizstājot servera_ip un example.com direktīvas ar savu servera IP adresi un servera nosaukumu.

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

Sapratīsim konfigurāciju pa sadaļām.

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

Mēs esam norādījuši augšupēju moduli, ko sauc par netdata-backend, kas atsaucas uz Netdata iebūvēto tīmekļa serveri, izmantojot atgriezeniskās saites adresi 127.0.0.1 un portu 19999, kas ir noklusējuma ports, kuru Netdata klausās. Keepalive direktīva nosaka maksimālo brīvgaitas savienojumu skaitu, kas var palikt atvērts.

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

    auth_basic "Authentication Required";
    auth_basic_user_file netdata-access;

Šī ir galvenā Nginx servera bloku sadaļa. Pirmajā rindiņā ir norādīta ārējā IP adrese, kuru Nginx vajadzētu klausīties, kad klienti sūta savus pieprasījumus. Servera_nosaukuma direktīva norāda servera domēna nosaukumu un uzdod Nginx palaist servera bloku, kad klienti ārējās IP adreses vietā izsauc domēna nosaukumu.

Divas pēdējās rindas norāda vienkāršo HTTP autentifikāciju, kas prasa lietotājam pierakstīties, izmantojot lietotājvārdu un paroli. Modulis auth_basic aktivizē pārlūkprogrammā uznirstošo lietotājvārda/paroles ar nosaukumu “Nepieciešama autentifikācija”, kuru vēlāk var pielāgot atbilstoši jūsu vēlmēm.

Modulis auth_basic_user_file norāda uz faila nosaukumu, kurā būs tā lietotāja lietotājvārds un parole, kurš ir pilnvarots piekļūt Netdata informācijas panelim - šajā gadījumā netdata-access. Mēs izveidosim šo failu vēlāk.

Pēdējā sadaļa ir atrašanās vietas bloks, kas atrodas servera blokā. Tas apstrādā ienākošo pieprasījumu starpniecību un pārsūtīšanu uz Nginx tīmekļa serveri.

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

Autentifikācijai mēs izveidosim lietotājvārdu un paroli lietotājam, kuru sauc par tecmint, izmantojot utilītu htpasswd, un akreditācijas datus saglabāsim netdata-access failā.

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

Norādiet paroli un apstipriniet to.

Pēc tam restartējiet Nginx tīmekļa serveri, lai izmaiņas stātos spēkā.

$ sudo systemctl restart nginx

Lai pārbaudītu, vai konfigurācija notika pareizi, turpiniet un pārlūkojiet sava servera IP adresi

http://server-ip

Tiks parādīts autentifikācijas uznirstošais logs, kā parādīts zemāk. Norādiet savu lietotājvārdu un paroli un nospiediet taustiņu ENTER.

Pēc tam jūs saņemsiet piekļuvi Netdata informācijas panelim.

Tas mūs noved pie šīsdienas tēmas beigām. Jūs tikko uzzinājāt, kā Ubuntu instalēt Netdata uzraudzības rīku un pamata HTTP autentifikācijas konfigurāciju. Jūtieties brīvi pārbaudīt citas diagrammas par dažādiem sistēmas rādītājiem.