Kuinka seurata Ubuntun suorituskykyä Netdatan avulla


Netdata on ilmainen ja avoimen lähdekoodin reaaliaikainen seuranta- ja vianmääritystyökalu pilvipalvelimille, säilöille, sovelluksille ja paikalliselle IT-infrastruktuurille. Se tarjoaa korkeat rakeiset ja reaaliaikaiset järjestelmämittaukset, kuten suorittimen suorituskyky, RAM-muistin ja levyn käyttö sekä kaistanleveystilastot, muutamia mainitakseni.

Lisäksi Netdata tarjoaa myös interaktiivisia mittausvisualisointeja, joita voidaan käyttää verkkoselaimella, sekä älykkäitä hälytyksiä, jotka auttavat järjestelmävikojen vianmäärityksessä.

Netdatan huipputeknologia ja suosio ovat ansainneet sille paikan Forbesin pilvi 100 nousevan tähden luettelossa vuonna 2020, mikä ei ole mikään vähäpätöinen saavutus. Itse asiassa tätä opasta kirjoitettaessa se on saanut lähes 50 000 Github-tähteä.

Voit asentaa Netdatan kahdella tavalla. Voit suorittaa automaattisen komentosarjan heti BASH-kuoressa. Tämä päivittää järjestelmäsi ja käynnistää Netdatan asennuksen. Vaihtoehtoisesti voit kloonata Netdatan Git-arkiston ja suorittaa sen jälkeen automaattisen komentosarjan. Ensimmäinen menetelmä on yksinkertainen ja suoraviivainen, ja siihen keskitymme tässä oppaassa.

Tässä artikkelissa näemme, kuinka voit asentaa Netdatan Ubuntuun ja seurata palvelimien ja sovellusten reaaliaikaista, suorituskyvyn ja kunnon seurantaa.

Tuetut alustat

Netdata tukee seuraavia Ubuntu LTS -jakeluja:

  • Ubuntu 20.04
  • Ubuntu 18.04
  • Ubuntu 16.04

Kuinka asentaa Netdata Ubuntu Linuxiin

Aloita asennus suorittamalla alla oleva komento bash-päätteellä ladataksesi ja suorittaaksesi komentosarjan.

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

Skriptin suorittamisen aikana tapahtuu seuraavaa:

  • Komentosarja löytää automaattisesti Linux-jakelun, päivittää pakettiluettelon ja asentaa kaikki tarvittavat ohjelmistopaketit.
  • Uusin netdata-lähdepuu ladataan /usr/src/netdata.git-polkuun.
  • Komentosarja asentaa netdatan suorittamalla komentosarjan ./netdata-installer.sh lähdepuusta.
  • cron.daily päivitetään sen varmistamiseksi, että netdata päivitetään päivittäin.

Komentosarjan ajettaessa saat vinkkejä Netdatan käyttämiseen selaimessa ja sen hallintaan järjestelmän-palveluna.

Asennus kestää jonkin aikaa, joten odota noin 10 minuuttia ja palaa takaisin. Lopuksi saat alla olevan tulosteen, kun komentosarja päättää asennuksen.

Kun olet asentanut, käynnistä Netdata ja ota se käyttöön ja tarkista sen tila kuvan mukaisesti.

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

Oletuksena Netdata kuuntelee porttia 19999, ja tämä voidaan vahvistaa käyttämällä netstat-komentoa kuvan mukaisesti.

sudo netstat -pnltu | grep netdata

Jos sinulla on UFW käynnissä, yritä avata portti 1999, koska sitä tarvitaan, kun käytät selaimen Netdataa.

sudo ufw allow 19999/tcp
sudo ufw reload

Lopuksi pääset käyttämään Netdataa siirtymällä selaimeesi ja selaamalla seuraavaa URL-osoitetta

http://server-ip:19999/

Tämä tervehtii sinua, kun selaat URL-osoitetta. Itse asiassa ymmärrät, että sinun ei tarvitse kirjautua sisään. Kaikki järjestelmän mittarit näytetään kuvan mukaisesti.

Voit selata erilaisia kaavioita napsauttamalla haluamiasi mittareita kojelaudan oikeassa sivupalkissa. Jos haluat esimerkiksi tarkistaa verkkoliittymän tilastot, napsauta Verkkoliitännät-vaihtoehtoa.

Netdatan suojaaminen Ubuntun perustodennuksen avulla

Tähän asti kuka tahansa voi käyttää Netdata-hallintapaneelia ja kurkistaa järjestelmän eri mittareihin. Tämä merkitsee tietoturvaloukkausta, ja haluamme ehdottomasti välttää sen.

Tätä silmällä pitäen aiomme määrittää HTTP-perustodennuksen. Meidän on asennettava apache2-utils-paketti, joka sisältää htpasswd-ohjelman, jota käytetään käyttäjän käyttäjänimen ja salasanan määrittämiseen. Lisäksi asennamme Nginx-verkkopalvelimen, joka toimii käänteisenä välityspalvelimena.

Asenna Nginx-verkkopalvelin ja apache2-utils-paketti suorittamalla komento.


sudo apt install nginx apache2-utils

Kun Nginx ja apache2-utils on asennettu, aiomme luoda määritystiedoston /etc/nginx/conf.d-hakemistoon. Voit kuitenkin käyttää sites-available-hakemistoa, jos käytät Nginxiä muihin tarkoituksiin kuin Netdataan.


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

Määritystiedoston sisällä ohjeistamme ensin Nginxiä välittämään saapuvat pyynnöt Netdata-hallintapaneeliin. Tämän jälkeen lisäämme perustodennuskehotteen, joka antaa vain valtuutetuille käyttäjille pääsyn Netdata-hallintapaneeliin käyttämällä käyttäjänimen/salasanan todennusta.

Tässä on koko kokoonpano. Muista korvata server_ip- ja example.com-direktiivit omalla palvelimesi IP-osoitteella ja palvelimen nimellä.


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

Ymmärretään kokoonpano osioittain.

Osa 1:


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

Olemme määrittäneet ylävirran moduulin nimeltä netdata-backend, joka viittaa Netdatan sisäänrakennettuun verkkopalvelimeen käyttämällä palautusta-osoitetta 127.0.0.1<. ja portti 19999, joka on oletusportti, jota Netdata kuuntelee. Keepalive-direktiivi määrittää käyttämättömien yhteyksien enimmäismäärän, jotka voivat jäädä auki.

Osasto-2:


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

    auth_basic "Authentication Required";
    auth_basic_user_file netdata-access;

Tämä on Nginx -palvelinlohkon pääosa. Ensimmäinen rivi määrittää ulkoisen IP-osoitteen, jota Nginxin tulee kuunnella, kun asiakkaat lähettävät pyyntönsä. palvelimen_nimi-direktiivi määrittää palvelimen toimialueen nimen ja käskee Nginxiä suorittamaan palvelinlohkon, kun asiakkaat kutsuvat toimialueen nimeä ulkoisen IP-osoitteen sijaan.

Kaksi viimeistä riviä osoittavat yksinkertaisen HTTP-todennuksen, joka edellyttää käyttäjän kirjautumista sisään käyttäjätunnuksella ja salasanalla. auth_basic-moduuli käynnistää selaimeen käyttäjänimen/salasanan ponnahdusikkunan, jonka otsikossa on "Todennus vaaditaan", jota voidaan myöhemmin muokata mieltymystesi mukaan.

auth_basic_user_file-moduuli osoittaa tiedoston nimeen, joka sisältää Netdatan kojelautaan valtuutetun käyttäjän käyttäjänimen ja salasanan – tässä tapauksessa netdata-access. Luomme tämän tiedoston myöhemmin.

Osa 3:

Viimeinen osa on sijainti-lohko, joka sisältyy palvelinlohkoon. Tämä hoitaa saapuvien pyyntöjen välityspalvelimen ja välittämisen Nginx-verkkopalvelimelle.


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

Todennusta varten luomme käyttäjätunnuksen ja salasanan tecmint-nimiselle käyttäjälle htpasswd-apuohjelman avulla ja tallennamme tunnistetiedot netdata-access-tiedostoon. .


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

Anna salasana ja vahvista se.

Käynnistä seuraavaksi Nginx-verkkopalvelin uudelleen, jotta muutokset tulevat voimaan.


sudo systemctl restart nginx

Voit testata, menivätkö asetukset oikein, jatkamalla ja selaamalla palvelimesi IP-osoitetta


http://server-ip

Todennusponnahdusikkuna tulee näkyviin alla olevan kuvan mukaisesti. Anna käyttäjänimesi ja salasanasi ja paina ENTER.

Sen jälkeen pääset käyttämään Netdata-hallintapaneelia.

Tämä vie meidät tämän päivän aiheemme loppuun. Olet juuri oppinut asentamaan Netdata-valvontatyökalun ja määrittämään HTTP-perustodennuksen Ubuntuun. Voit vapaasti katsoa muita kaavioita eri järjestelmämittareista.