Vai al contenuto principale

Aiuta ad aggiornare questa pagina

🌏

C'è una nuova versione di questa pagina, ma al momento è solo in inglese. Aiutaci a tradurre l'ultima versione.

Traduci la pagina
Visualizza in inglese

Nessun bug qui!🐛

Questa pagina non è stata tradotta. Per il momento, è stata intenzionalmente lasciata in inglese.

Monitorare Geth con InfluxDB e Grafana

client
geth
nodi
Intermedio
✍Mario Havel
📆13 gennaio 2021
⏱️5 minuti letti

Questo tutorial ti aiuterà a configurare il monitoraggio per il tuo nodo di Geth così che tu possa meglio comprenderne le prestazioni e identificare i problemi potenziali.

Prerequisiti

  • Dovresti avere già in esecuzione un'istanza di Geth.
  • Gran parte dei passaggi ed esempi sono per l'ambiente Linux, è utile quindi una conoscenza di base della console.
  • Dai un'occhiata a questa panoramica video della suite di metriche di Geth: Monitoring an Ethereum infrastructure by Péter Szilágyi.

Stack di monitoraggio

Un client di Ethereum raccoglie molti dati leggibili sotto forma di database cronologico. Per semplificare il monitoraggio, puoi alimentare i dati nel software di visualizzazione. Esistono numerose opzioni disponibili:

Esiste anche Geth Prometheus Exporter, un'opzione preconfigurata con InfluxDB e Grafana. Puoi configurarla facilmente usando docker ed Ethbian OS per RPi 4.

In questo tutorial, configureremo il tuo client di Geth per inviare i dati a InfluxDB per creare un database e Grafana per creare una visualizzazione grafica dei dati. Farlo manualmente ti aiuterà a comprendere meglio il processo e a distribuirlo in ambienti diversi.

Configurare InfluxDB

Prima, scarichiamo e installiamo InfluxDB. Varie opzioni di download si possono trovare alla pagina di release di Influxdata. Seleziona quella che si adatta al tuo ambiente. Puoi anche installarla da una repository. Per esempio, nella distribuzione basata su 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

Dopo aver installato correttamente InfluxDB, accertati che sia in esecuzione in background. Di default, è raggiungibile a localhost:8086. Prima di usare il client influx, devi creare un nuovo utente con privilegi d'amministratore. Questo utente servirà per l'amministrazione d'alto livello, la creazione di database e utenti.

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

Ora puoi usare il client di influx per accedere alla shell di InfluxDB con questo utente.

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

Comunicando direttamente con InfluxDB nella sua shell, puoi creare il database e l'utente per le metriche di Geth.

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

Verifica le voci create con:

1show databases
2show users
3

Esci dalla shell di InfluxDB.

1exit
2

InfluxDB è in esecuzione e configurato per memorizzare le metriche da Geth.

Preparare Geth

Dopo aver configurato il database, dobbiamo abilitare la raccolta di metriche su Geth. Presta attenzione a METRICS AND STATS OPTIONS in geth --help. Lì si possono trovare diverse opzioni, in questo caso vogliamo che Geth alimenti i dati in InfluxDB. La configurazione di base specifica l'endpoint dove InfluxDB è raggiungibile e l'autenticazione per il database.

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

Questi flag possono essere accodati a un comando che avvia il client o salvati nel file di configurazione.

Puoi verificare che Geth stia inviando correttamente i dati, per esempio, elencando le metriche nel database. Nella shell di InfluxDB:

1use geth
2show measurements
3

Configurare Grafana

Il prossimo passo è installare Grafana, che interpreterà graficamente i dati. Segui il processo di installazione per il tuo ambiente nella documentazione di Grafana. Assicurati di installare la versione OSS, se non desideri un'altra versione. Esempio di fasi d'installazione per le distribuzioni di Debian usando il repository:

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

Quando Grafana è in esecuzione, dovrebbe esser raggiungibile a localhost:3000. Usa il tuo browser preferito per accedere a questo percorso, poi accedi con le credenziali predefinite (utente: admin e password: admin). Quando richiesto, modifica la password predefinita e salva.

grafana1

Sarai reindirizzato alla pagina home di Grafana. Per prima cosa, configura i tuoi dati sorgente. Clicca sull'icona di configurazione nella barra a sinistra e seleziona "Sorgenti dati".

grafana2

Se non sono ancora state create sorgenti di dati, clicca su "Aggiungi sorgente di dati" per definirne una.

grafana3

Per questa configurazione, seleziona "InfluxDB" e procedi.

grafana4

La configurazione della sorgente di dati è abbastanza semplice se esegui gli strumenti sulla stessa macchina. Devi impostare l'indirizzo di InfluxDB e i dettagli per accedere al database. Fai riferimento alla seguente immagine.

grafana5

Se tutto è completo e InfluxDB è raggiungibile, clicca su "Salva e prova" e attendi che compaia la conferma.

grafana6

Grafana è ora configurato per leggere i dati da InfluxDB. Ora devi creare una dashboard che li interpreterà e mostrerà. Le proprietà dei pannelli di controllo sono codificate nei file JSON, che possono essere creati da chiunque e sono facilmente importabili. Sulla barra sinistra, clicca su "Crea e Importa".

grafana7

Per una dashboard di monitoraggio di Geth, copia l'ID di questa dashboard e incollalo nella "Pagina d'importazione" su Grafana. Dopo aver salvato la dashboard, dovrebbe somigliare a questo:

grafana8

Puoi modificare i tuoi pannelli di controllo. Ogni pannello può essere modificato, spostato, rimosso o aggiunto. Puoi modificare le tue configurazioni. Sta a te! Per saperne di più su come funzionano i pannelli di controllo, fai riferimento alla documentazione di Grafana. Potresti esser anche interessato agli avvisi, che ti consentono di configurare delle notifiche di avviso per quando le metriche raggiungono certi valori. Sono supportati diversi canali di comunicazione.

Ultima modifica: , Invalid DateTime
Modifica la pagina

Questa pagina è stata utile?