Treceți la conținutul principal

Ajutați-ne să actualizăm această pagină

🌏

Există o nouă versiune a acestei pagini, dar este doar în limba engleză pentru moment. Ajutați-ne să traducem versiunea cea mai recentă.

Traduceți pagina
Afișați versiunea în limba engleză

Nici o eroare aici!🐛

Această pagină nu este tradusă. Am lăsat în mod intenționat această pagină în limba engleză deocamdată.

Monitorizarea Geth cu InfluxDB și Grafana

cliențigethnoduri
Intermediar
✍️Mario Havel
📆13 ianuarie 2021
⏱️5 minute de citit

Acest tutorial vă va ajuta să configurați monitorizarea nodului dvs. Geth ca să-i înțelegeți performanțele și să identificați posibilele probleme.

Condiții prealabile

  • Trebuie să știți deja să rulați o instanță de Geth.
  • Ar fi util să aveți câteva cunoștințe elementare de terminal în Linux, deoarece majoritatea etapelor și exemplelor sunt din acest mediu.
  • Consultați acest videoclip cu prezentarea generală a setului de metrici Geth: Monitorizarea unei infrastructuri Ethereum de Péter Szilágyi.

Stiva de monitorizare

Un client Ethereum colectează numeroase date care se pot citi sub forma unei baze de date cronologice. Pentru a face monitorizarea mai ușoară, puteți introduce aceste date într-un software de vizualizare a datelor. Sunt disponibile mai multe opțiuni:

De asemenea, există Geth Prometheus Exporter, o opțiune preconfigurată cu InfluxDB și Grafana. Se poate configura cu ușurință folosind docker și Ethbian OS pentru RPi 4.

În acest tutorial vă vom configura clientul Geth pentru a împinge date către InfluxDB, care va crea cu ele o bază de date, apoi Grafana pentru a crea o vizualizare grafică a acestora. Dacă executați manual acest proces, vă va ajuta să îl înțelegeți mai bine, să îl modificați și să îl implementați în diferite medii.

Configurarea InfluxDB

Întâi și-ntâi să descărcăm și să instalăm InfluxDB. Pe pagina de lansare a InfluxDB găsim mai multe opțiuni de instalare. Alegeți-o pe cea potrivită mediului dumneavoastră. O puteți instala și dintr-un repository (depozitar). De exemplu, pentru distribuția bazată pe Debian:

1curl -tlsv1.3 --proto =https -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add
2source /etc/lsb-release
3echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
4sudo apt update
5sudo apt install influxdb -y
6sudo systemctl enable influxdb
7sudo systemctl start influxdb
8sudo apt install influxdb-client
9

După ce ați terminat instalarea cu succes a InfluxDB, asigurați-vă că acesta funcționează în fundal. În mod implicit, poate fi accesat la adresa localhost:8086. Înaintea folosirii clientului influx, va trebui să creați un nou client cu privilegii administrative. Acesta va fi responsabil cu managementul la nivel înalt, crearea de baze de date și utilizatori.

1curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER username WITH PASSWORD 'password' WITH ALL PRIVILEGES"
2

Abia acum veți putea folosi clientul „influx” pentru a intra in shell-ul InfluxDB cu acest utilizator.

1influx -username 'username' -password 'password'
2

Prin comunicarea directă cu InfluxDB, vă puteți crea baze de date și utilizatori pentru metricile geth.

1create database geth
2create user geth with password choosepassword
3

Verificați datele de intrare create cu:

1show databases
2show users
3

Părăsiți shell-ul InfluxDB.

1exit
2

Acum InfluxDB funcționează și este configurat să stocheze metricile Geth.

Pregătirea Geth

După configurarea unei baze de date, trebuie să activăm colectarea metricilor în Geth. Mare atenție la METRICS AND STATS OPTIONS din geth --help. Acolo vom găsi mai multe opțiuni, iar în cazul nostru vrem ca Geth să împingă („push”) date în InfluxDB. Configurarea de bază specifică atât punctul final unde InfluxDB este accesibil, cât și autentificarea pentru bazele de date.

1geth --metrics --metrics.influxdb --metrics.influxdb.endpoint "http://0.0.0.0:8086" --metrics.influxdb.username "geth" --metrics.influxdb.password "chosenpassword"
2

Aceste flaguri pot fi adăugate la o comandă care pornește clientul sau pot fi salvate în fișierul de configurare.

Puteți verifica dacă Geth împinge cu succes date, de exemplu, prin listarea metricilor din baza de date. În shell-ul InfluxDB:

1use geth
2show measurements
3

Configurarea Grafana

În următoarea etapă vom instala Grafana, care va interpreta grafic datele. Urmați procesul de instalare pentru mediul dvs. din documentația Grafana. Aveți grijă să instalați versiunea OSS, dacă nu doriți altfel. Exemple de etape de instalare pentru distribuțiile Debian care utilizează depozitarul:

1curl -tlsv1.3 --proto =https -sL https://packages.grafana.com/gpg.key | sudo apt-key add -
2echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
3sudo apt update
4sudo apt install grafana
5sudo systemctl enable grafana-server
6sudo systemctl start grafana-server
7

Când ați reușit să rulați Grafana, poate fi accesat la localhost:3000. Utilizați browserul preferat pentru a accesa această cale, apoi conectați-vă cu datele de autentificare implicite (utilizator: admin și parolă: admin). Atunci când vi se solicită, schimbați parola implicită și salvați-o.

grafana1

Veți fi redirecționat către pagina de pornire Grafana. Mai întâi configurați datele sursă. Faceți clic pe pictograma din bara din stânga și selecționați „Data sources” (Surse de date).

grafana2

Încă nu a fost creată nicio sursă de date, deci ca să definiți una faceți clic pe „Add data source” (Adăugați o sursă de date).

grafana3

Pentru această configurare selectați „InfluxDB” și continuați.

grafana4

Configurarea sursei de date este destul de simplă dacă instrumentele folosite sunt pe aceeași mașină. Pentru accesarea bazei de date, trebuie să configurați adresa InfluxDB și detaliile. Consultați imaginea de mai jos.

grafana5

Dacă totul este complet și InfluxDB este accesibil, faceți clic pe „Save and test” (Salvați și testați) și așteptați să apară confirmarea.

grafana6

Grafana este acum configurat să citească date din InfluxDB. Iar acum va trebui să creați un tablou de bord care să le interpreteze și să le afișeze. Proprietățile tablourilor de bord sunt codificate în fișiere JSON care pot fi create de oricine și pot fi importate cu ușurință. În bara din stânga, faceți clic pe „Create and Import” (Creați și importați).

grafana7

Pentru un tablou de bord de monitorizare Geth, copiați ID-ul acestui tablou de bord și inserați-l în „Import page” (Pagina de import) din Grafana. După salvarea tabloului de bord, acesta ar trebui să arate astfel:

grafana8

Vă puteți modifica tabloul de bord. Fiecare panou poate fi editat, mutat, eliminat sau adăugat. Vă puteți schimba configurațiile. Dvs. hotărâți! Pentru a afla mai multe despre cum funcționează tablourile de bord, consultați documentația Grafana. S-ar putea să vă intereseze și Alerting (Alertarea). Aceasta vă permite să configurați notificări de alertă atunci când metricile ating anumite valori. Sunt acceptate diverse canale de comunicare.

Ultima modificare: , Invalid DateTime
Modificați pagina

A fost utilă această pagină?