Pereiti prie pagrindinio turinio

Kaip įdiegti ir sukonfigūruoti Node Exporter Ubuntu sistemoje

Šioje pamokoje parodysime, kaip įdiegti Node Exporter Ubuntu sistemoje ir tinkamai jį sukonfigūruoti, kad jis rinktų serverio metrikas.

0. Įvadas

Node Exporter yra agentas, teikiantis duomenis apie Linux serverio procesoriaus, atminties, failų sistemų, tinklo sąsajų ir kitų komponentų būklę. Agentas veikia kaip atskiras procesas ir pagal numatytuosius nustatymus metrikas pateikia per 9100 prievadą.

Node Exporter yra gana paprastas, pasyvus įrankis: jis nesaugo istorijos, neapdoroja duomenų, nekuria perspėjimų (alerts) ir negeneruoja grafikų. Paprastai jis naudojamas metrikoms rinkti, o jas vėliau apdoroja monitoringo sistema. Tokia sistema, pavyzdžiui, Prometheus, periodiškai kreipiasi į agentą ir išsaugo gautus duomenis tolesnei analizei bei vizualizavimui.

0.1 Reikalavimai

Prieš pradėdami įsitikinkite, kad turite:

  • VPS su Ubuntu 22.04 arba 24.04;

  • SSH prieigą prie VPS;

  • root arba sudo teises;

1. Node Exporter diegimas

1.1 Sistemos atnaujinimas

Pirmiausia prisijunkite prie VPS per SSH.

Atnaujinkite paketų sąrašą:

sudo apt update

Įdiekite įrankius, reikalingus Node Exporter atsisiųsti ir patikrinti:

sudo apt install wget curl -y

1.2 Node Exporter atsisiuntimas

Node Exporter galima atsisiųsti tiesiai iš oficialios GitHub saugyklos.

Pirmiausia pereikite į laikinąjį katalogą:

cd /tmp

Atsisiųskite Node Exporter:

wget https://github.com/prometheus/node_exporter/releases/download/v1.12.1/node_exporter-1.12.1.linux-amd64.tar.gz

Jei norite įdiegti kitą versiją, galimus leidimus rasite oficialiame Node Exporter GitHub puslapyje.

1.3 Išpakavimas ir diegimas

Prieš išpakuodami atsisiųstą failą, galite patikrinti jo SHA256 kontrolinę sumą:

echo "b51d8a76aa2a9156a55d501aca6276fae09e262259a5e4e831d2c2222f084e63  node_exporter-1.12.1.linux-amd64.tar.gz" | sha256sum -c -

Turėtumėte pamatyti:

node_exporter-1.12.1.linux-amd64.tar.gz: OK

Jei kontrolinė suma nesutampa, atsisiųsto failo neįdiekite.

Dabar išpakuokite archyvą:

tar -xzf node_exporter-1.12.1.linux-amd64.tar.gz

Nukopijuokite Node Exporter vykdomąjį failą į /usr/local/bin/:

sudo install -m 0755 node_exporter-1.12.1.linux-amd64/node_exporter /usr/local/bin/node_exporter

Patikrinkite įdiegtą versiją:

node_exporter --version

Jei diegimas pavyko, pamatysite informaciją apie įdiegtą Node Exporter versiją.

2. Node Exporter konfigūravimas

Pagal numatytuosius nustatymus Node Exporter galima paleisti rankiniu būdu. Tačiau patogiau jį sukonfigūruoti kaip systemd tarnybą (service). Tada Node Exporter veiks fone ir automatiškai pasileis po serverio perkrovimo.

2.1 Atskiro naudotojo sukūrimas

Saugumo sumetimais Node Exporter paleisime ne kaip root, o sukursime jam atskirą sisteminį naudotoją.

Vykdykite:

sudo useradd --system --no-create-home --user-group --shell /usr/sbin/nologin node_exporter

Taip sukuriama sisteminė paskyra node_exporter be prisijungimo shell.

2.2 systemd tarnybos sukūrimas

Sukurkite naują tarnybos failą:

sudo nano /etc/systemd/system/node_exporter.service

Įrašykite šią konfigūraciją:

[Unit] Description=Prometheus Node Exporter After=network.target  [Service] User=node_exporter Group=node_exporter Type=simple ExecStart=/usr/local/bin/node_exporter --web.listen-address=127.0.0.1:9100 Restart=on-failure  [Install] WantedBy=multi-user.target

Failą išsaugokite paspausdami Ctrl + O, tada Enter, o išeikite su Ctrl + X.

Keli svarbūs šios konfigūracijos nustatymai:

  • User ir Group nurodo paskyrą, kuria bus paleidžiamas Node Exporter.

  • ExecStart nurodo vykdomojo failo vietą ir paleidimo parametrus.

  • Restart=on-failure automatiškai paleidžia Node Exporter iš naujo, jei šis sustoja dėl klaidos.

  • WantedBy=multi-user.target leidžia tarnybai pasileisti sistemos paleidimo metu, kai ji įjungta (enabled).

Pastaba. Šiame pavyzdyje Node Exporter klauso tik 127.0.0.1:9100. Tai reiškia, kad metrikas galima pasiekti iš paties VPS, bet ne tiesiogiai iš kitų serverių.

3. Node Exporter tarnybos valdymas

3.1 Node Exporter paleidimas

Sukūrę tarnybos failą, iš naujo įkelkite systemd konfigūraciją:

sudo systemctl daemon-reload

Paleiskite Node Exporter:

sudo systemctl start node_exporter

3.2 Automatinis paleidimas po perkrovimo

Kad Node Exporter automatiškai pasileistų po serverio perkrovimo, vykdykite:

sudo systemctl enable node_exporter

3.3 Tarnybos būsenos patikra

Patikrinkite, ar Node Exporter veikia:

sudo systemctl status node_exporter

Jei viskas sukonfigūruota teisingai, pamatysite:

Active: active (running)

Tai reiškia, kad Node Exporter veikia sėkmingai.

Tarnybą taip pat galite paleisti iš naujo arba sustabdyti šiomis komandomis:

Paleisti Node Exporter iš naujo:

sudo systemctl restart node_exporter

Sustabdyti Node Exporter:

sudo systemctl stop node_exporter

4. Node Exporter metrikų patikra

Kai Node Exporter veikia, galime patikrinti, ar jis renka sistemos metrikas.

Vykdykite šią komandą savo VPS:

curl http://127.0.0.1:9100/metrics

Turėtumėte pamatyti ilgą metrikų sąrašą su informacija apie jūsų serverį.

Pavyzdžiui, galite rasti tokias metrikas:

Metrika

Aprašymas

node_cpu_seconds_total

Procesoriaus laikas, praleistas skirtingais veikimo režimais

node_memory_MemTotal_bytes

Bendras fizinės atminties kiekis

node_memory_MemAvailable_bytes

Laisva (prieinama) atmintis

node_filesystem_size_bytes

Bendras failų sistemos dydis

node_filesystem_avail_bytes

Laisva failų sistemos vieta

node_network_receive_bytes_total

Iš viso gauto tinklo srauto kiekis

Taip pat galite ieškoti konkrečios metrikos, užuot rodę viską.

Pavyzdžiui, norėdami patikrinti laisvą atmintį:

curl -s http://127.0.0.1:9100/metrics | grep '^node_memory_MemAvailable_bytes'

Jei komanda grąžina metriką ir jos reikšmę, Node Exporter veikia teisingai.

Atkreipkite dėmesį. Node Exporter pateikia tik dabartines metrikas. Jis nesaugo istorinių duomenų ir nerodo monitoringo skydelių (dashboards). Šioms funkcijoms galite prijungti Prometheus ir Grafana.

Jei šios komandos grąžina klaidą, paleiskite Node Exporter iš naujo ir bandykite dar kartą:

sudo systemctl restart node_exporter

5. Išvada

Štai ir viskas, Node Exporter dabar veikia jūsų Ubuntu VPS. Jis automatiškai paleidžiamas sistemos starto metu ir teikia sistemos metrikas per HTTP, todėl jas galite pasitikrinti tiesiog serveryje. Jei norite laikui bėgant stebėti procesoriaus, RAM ar disko užimtumą ir kitus rodiklius, pridėkite jį kaip target Prometheus sistemoje.

Daugiau informacijos rasite oficialiame Node Exporter vadove.

Ar gavote atsakymą į savo klausimą?