Configurazione del Dashboard Grafana
Ora che hai il tuo nodo attivo e funzionante, probabilmente vorrai avere un modo conveniente per monitorare tutto a colpo d'occhio per assicurarti che funzioni correttamente (e che tipo di guadagni sta generando per te).
Ci sono molti strumenti là fuori che fanno questo lavoro. Uno dei più popolari si chiama Grafana - un sistema di dashboard facile da usare e per uso generale a cui puoi accedere con un browser.
Rocket Pool viene fornito di serie con il supporto per Grafana e le sue dipendenze; include persino un dashboard pre-costruito per ciascuno dei client Consensus. Ad esempio, ecco un'istantanea di come appare il dashboard sulla rete di test Hoodi:

Il dashboard standard include le seguenti informazioni tutte in un formato conveniente:
- In alto a sinistra: alcune statistiche importanti sulla salute e le prestazioni della tua macchina, e eventuali aggiornamenti di sistema in sospeso
- In alto a destra: l'attività e le prestazioni dei tuoi validatori sulla Beacon Chain, insieme ad alcune statistiche del client Execution e Consensus
- In basso a sinistra: dettagli sull'intera rete Rocket Pool, per riferimento
- In basso a destra: dettagli sulle tue ricompense di staking, sia ETH che RPL
In questa guida, ti mostreremo come abilitare il sistema di metriche di Rocket Pool in modo da poter utilizzare questo dashboard - o persino costruirne uno tuo!
Panoramica dello Stack di Metriche di Rocket Pool
Se scegli di abilitare le metriche durante il processo di configurazione dello Smartnode, il tuo nodo aggiungerà i seguenti processi:
- Prometheus - un sistema di raccolta, archiviazione e reporting dei dati che cattura tutte le metriche che vedi sopra (e molte altre) e le memorizza, in modo che possano essere visualizzate nel tempo
- Il Node Exporter di Prometheus - un servizio che raccoglie informazioni sulla salute della tua macchina (come utilizzo CPU, utilizzo RAM, spazio disco libero e spazio swap, ecc.) e le riporta a Prometheus
- Grafana, lo strumento che espone i dati di Prometheus attraverso un sito web conveniente ospitato sul tuo nodo
- Un set opzionale di script personalizzati che riporteranno eventuali aggiornamenti del sistema operativo disponibili a Prometheus, in modo che tu sappia se il tuo sistema necessita di essere aggiornato
La configurazione predefinita creerà container Docker con tutti questi servizi che vivono insieme al resto dei container Docker dello Smartnode. Aprirà una porta sulla tua macchina nodo per Grafana, in modo da poter accedere al suo dashboard da qualsiasi macchina sulla tua rete locale con un browser.
Abilitazione del Server di Metriche
Abilitare le metriche in modalità Docker è la più facile di tutte.
Inizia eseguendo nuovamente il comando di configurazione dello Smartnode:
Vai alla sezione Monitoring / Metrics e spunta la casella Enable Metrics.
Per coloro che preferiscono ottimizzare le impostazioni delle porte, puoi farlo qui. Nota che tutte queste porte sono limitate alla rete interna di Docker ad eccezione della porta Grafana - quella sarà aperta sulla tua macchina (in modo da potervi accedere tramite un browser da altre macchine, come il tuo desktop o telefono) quindi potresti voler cambiare quella se la porta predefinita è in conflitto con qualcosa che hai già.
Salva ed esci, e lo smartnode avvierà i container Docker di Prometheus, Node Exporter e Grafana per te.
Modificherà anche i tuoi client Consensus e Validator in modo che espongano le proprie metriche a Prometheus.
Il tracker degli aggiornamenti del sistema operativo e di Rocket Pool non è installato per impostazione predefinita per massima flessibilità, ma il processo è semplice. Se desideri installarlo in modo che il tuo dashboard mostri quanti aggiornamenti sono disponibili per il tuo sistema, puoi farlo con questo comando:
Sotto il cofano, questo installerà un servizio che si collega al gestore di pacchetti del tuo sistema operativo, controlla periodicamente gli aggiornamenti e invia tali informazioni a Prometheus. Questo servizio è diverso per ogni sistema operativo, ma è stato confermato funzionare sui seguenti:
- Ubuntu 20.04+
- Debian 9 e 10
- CentOS 7 e 8
- Fedora 34
NOTA
L'abilitazione automatica del servizio è incompatibile con SELinux. Se il tuo sistema ha SELinux abilitato per impostazione predefinita (come nel caso di CentOS e Fedora), il comando di installazione ti porterà quasi al traguardo ma ti fornirà anche istruzioni su come completare il processo manualmente alla fine.Durante questo controllo, confronterà anche la versione installata di Rocket Pool Smartnode con l'ultima versione, e ti informerà se c'è una nuova versione disponibile.
Se hai abilitato il tracker degli aggiornamenti, l'ultimo passaggio è riavviare il Node Exporter con il seguente comando:
Dopodiché, dovresti essere a posto.
Configurare il firewall per consentire le connessioni per il monitoraggio
Se hai UFW abilitato come indicato nella sezione Protezione del tuo nodo, dovrai aprire alcune porte per consentire connessioni locali tra Prometheus e i tuoi client Execution/Consensus. Segui i passaggi seguenti.
Esegui quanto segue e sostituisci le porte secondo necessità:
Puoi quindi aprire il firewall per consentire ai dispositivi esterni di accedere al tuo dashboard Grafana.
Usa questo se vuoi accedere a Grafana da qualsiasi macchina all'interno della tua rete locale, ma negare l'accesso ovunque altrove. Questo sarà il caso d'uso più comune.
Controlla prima se la tua rete locale utilizza la struttura 192.168.1.xxx.
Potrebbe essere necessario modificare il comando seguente per corrispondere alla configurazione della tua rete locale se utilizza una struttura di indirizzo diversa (ad es. 192.168.99.xxx).
Configurazione di Grafana
Ora che il server di metriche è pronto, puoi accedervi con qualsiasi browser sulla tua rete locale.
Fai riferimento alle schede seguenti per la modalità di installazione del tuo Smartnode.
Naviga al seguente URL, sostituendo le variabili con la tua configurazione secondo necessità:
Ad esempio, se l'IP del tuo nodo era 192.168.1.5 e hai utilizzato la porta Grafana predefinita di 3100, andresti a questo URL nel tuo browser:
Vedrai una schermata di accesso come questa:
Le informazioni predefinite di Grafana sono:
Ti verrà quindi richiesto di cambiare la password predefinita per l'account admin.
Scegli qualcosa di forte e non dimenticarlo!
Se perdi la password di admin, puoi reimpostarla usando il seguente comando sul tuo nodo:
Sarai in grado di accedere a Grafana usando le credenziali predefinite admin ancora una volta, e poi ti verrà richiesto di cambiare la password per l'account admin.
Grazie al lavoro del membro della community tedsteen, Grafana si connetterà automaticamente alla tua istanza di Prometheus in modo che abbia accesso alle metriche che raccoglie. Tutto quello che devi fare è prendere il dashboard!
Importazione del Dashboard di Rocket Pool
Ora che hai Grafana collegato a Prometheus, puoi importare il dashboard standard (o costruirne uno tuo usando le metriche che fornisce, se hai familiarità con quel processo).
Inizia andando al menu Create (l'icona più sulla barra laterale destra) e fai clic su Import:
Quando ti viene richiesto l'ID del dashboard nella casella Import via grafana.com, inserisci 21863 o usa l'URL completo ((https://grafana.com/grafana/dashboards/24900-rocket-pool-dashboard-v1-4-0/) e premi il pulsante Load.
Ti verranno richieste alcune informazioni sul dashboard qui, come il suo nome e dove vorresti memorizzarlo (la cartella predefinita General va bene a meno che non usi molti dashboard e voglia organizzarli).
Nel menu a discesa Prometheus in basso, dovresti avere solo un'opzione etichettata Prometheus (default). Seleziona questa opzione.
La tua schermata dovrebbe apparire così:
Se corrisponde, fai clic sul pulsante Import e verrai immediatamente portato al tuo nuovo dashboard.
A prima vista, dovresti vedere molte informazioni sul tuo nodo e sui tuoi validatori.
Ogni riquadro viene fornito con un comodo tooltip nell'angolo in alto a sinistra (l'icona i) su cui puoi passare il mouse per saperne di più.
Ad esempio, ecco il tooltip per il riquadro Your Validator Share:
Tuttavia, non abbiamo ancora finito di configurare le cose - c'è ancora un po' più di configurazione da fare.
Alcuni dei riquadri (in particolare quelli APR) sono stati temporaneamente disabilitati a causa del modo in cui Shapella fornisce ricompense skimmate.
Saranno abilitati di nuovo in una versione futura dello Smartnode che può tracciare correttamente le ricompense storiche.
Personalizzazione del Monitoraggio Hardware per il tuo Sistema
Ora che il dashboard è attivo, potresti notare che alcuni riquadri sono vuoti come SSD Latency e Network Usage. Dobbiamo adattare il dashboard al tuo hardware specifico in modo che sappia come catturare queste cose.
CPU Temp
Per aggiornare il tuo indicatore di temperatura della CPU, fai clic sul titolo del riquadro CPU Temp e seleziona Edit dal menu a discesa. La tua schermata ora apparirà così:
Questa è la modalità di modifica di Grafana, dove puoi cambiare cosa viene visualizzato e come appare. Siamo interessati alla casella di query evidenziata in rosso, a destra del pulsante Metrics browser.
Per impostazione predefinita, quella casella ha questo:
Ci sono due campi in questo testo che sono attualmente vuoti: chip e sensor.
Questi sono unici per ogni macchina, quindi dovrai compilarli in base a ciò che la tua macchina fornisce.
Per farlo, segui questi passaggi:
- Rimuovi la porzione
, sensor=""in modo che termini conchip=""}. Per chiarezza, l'intero testo dovrebbe ora esserenode_hwmon_temp_celsius{job="node", chip=""}. - Posiziona il cursore tra le virgolette di
chip=""e premiCtrl+Spacebar. Questo farà apparire una casella di auto-completamento con le opzioni disponibili, che appare così:
- Seleziona l'opzione che corrisponde alla CPU del tuo sistema.
- Una volta selezionata, aggiungi
, sensor=""di nuovo nella stringa. Posiziona il cursore tra le virgolette disensor=""e premiCtrl+Spacebarper ottenere un altro menu di auto-completamento. Seleziona il sensore che vuoi monitorare.
Se non sai quale chip o sensor è corretto, dovrai provarli tutti fino a trovare quello che sembra giusto. Per aiutare con questo, installa il pacchetto lm-sensors (ad esempio, sudo apt install lm-sensors su Debian / Ubuntu) ed esegui il comando sensors -u per fornire quali sensori ha il tuo computer. Puoi provare a correlare un ID chip dall'elenco di Grafana con quello che vedi qui in base ai loro nomi e ID.
Ad esempio, questo è uno degli output del nostro comando sensors -u:
Nel nostro caso, il chip corrispondente in Grafana è pci0000:00_0000:00:18_3 e il sensore corrispondente è temp1.
Una volta che sei soddisfatto delle tue selezioni, fai clic sul pulsante blu Apply nell'angolo in alto a destra dello schermo per salvare le impostazioni.
Non tutti i sistemi espongono informazioni sulla temperatura della CPU - in particolare le macchine virtuali o i sistemi basati su cloud.
Se il tuo non ha nulla nel campo di auto-completamento per chip, questo è probabilmente il caso e non sarai in grado di monitorare la temperatura della tua CPU.
SSD Latency
Il grafico SSD Latency traccia quanto tempo impiegano le operazioni di lettura/scrittura. Questo è utile per valutare quanto è veloce il tuo SSD, in modo da sapere se diventa un collo di bottiglia se il tuo validatore soffre di scarse prestazioni. Per aggiornare l'SSD che vuoi tracciare nel grafico, fai clic sul titolo SSD Latency e seleziona Edit.
Questo grafico ha quattro campi di query (quattro caselle di testo) con otto porzioni device="" in totale.
Dovrai aggiornare i primi quattro di queste porzioni con il dispositivo che vuoi tracciare.
Posiziona semplicemente il cursore tra le virgolette e premi Ctrl+Spacebar per ottenere l'elenco di auto-completamento di Grafana, e seleziona l'opzione corretta da lì per ciascuna delle porzioni device="".
Vuoi iniziare dalla prima impostazione vuota più a sinistra, altrimenti l'elenco di auto-completamento potrebbe non apparire.
Se non sai quale dispositivo tracciare, esegui il seguente comando:
Questo produrrà un albero che mostra il tuo dispositivo e l'elenco delle partizioni, ad esempio:
Se non hai cambiato la posizione predefinita di Docker in un'unità diversa durante l'installazione dello Smartnode, l'unità che vuoi tracciare sarà quella su cui è installato il tuo sistema operativo.
Cerca nella colonna MOUNTPOINT una voce semplicemente etichettata /, quindi segui quella fino al suo dispositivo genitore (quello con disk nella colonna TYPE).
Tipicamente questo sarà sda per unità SATA o nvme0n1 per unità NVMe.
Se hai cambiato la posizione predefinita di Docker in un'unità diversa, o se stai eseguendo una configurazione ibrida / nativa, dovresti essere in grado di utilizzare la stessa tecnica di "seguire il punto di montaggio" per determinare quale dispositivo ospita i tuoi dati della catena.
Facoltativamente, puoi anche tracciare la latenza di un secondo disco sul tuo sistema.
Questo è rivolto alle persone che mantengono il loro sistema operativo e i dati della catena su unità separate.
Per configurarlo, segui semplicemente le istruzioni sopra per gli ultimi due campi di query, sostituendo i valori della porzione device="" con quelli del disco che vuoi tracciare.
Una volta che sei soddisfatto delle tue selezioni, fai clic sul pulsante blu Apply nell'angolo in alto a destra dello schermo per salvare le impostazioni.
Network Usage
Questo grafico traccia quanti dati stai inviando e ricevendo su una particolare connessione di rete. Come puoi aspettarti, il dashboard deve sapere quale rete vuoi che tracci.
Per cambiarla, fai clic sul titolo Network Usage e seleziona Edit.
Questo grafico ha due campi di query con due porzioni device="" in totale.
Dovrai aggiornare queste con la rete che vuoi tracciare.
Posiziona il cursore tra le virgolette e premi Ctrl+Spacebar per ottenere l'elenco di auto-completamento di Grafana, e seleziona l'opzione corretta da lì per ciascuna delle porzioni device="".
Se non sai quale dispositivo tracciare, esegui il seguente comando:
L'output apparirà così:
Cerca nella colonna Destination la riga con il valore default.
Segui quella riga fino alla colonna Iface.
Il dispositivo elencato lì è quello che vuoi utilizzare - in questo esempio, eth0.
Una volta che sei soddisfatto delle tue selezioni, fai clic sul pulsante blu Apply nell'angolo in alto a destra dello schermo per salvare le impostazioni.
Total Net I/O
Questo traccia la quantità totale di dati che hai inviato e ricevuto. Potresti trovarlo utile da guardare se, ad esempio, il tuo ISP ti limita a una certa quantità di dati al mese.
La configurazione è identica al riquadro Network Usage sopra, quindi segui semplicemente quelle istruzioni anche per questo riquadro.
Disk Space Used
Questo tiene traccia di quanto è pieno il disco del tuo sistema operativo, in modo da sapere quando è il momento di pulire (e se i tuoi dati della catena si trovano sulla stessa unità, è il momento di potare Geth o Nethermind).
I passaggi sono gli stessi del riquadro SSD Latency sopra, quindi segui semplicemente quelle istruzioni anche per questo riquadro.
Come promemoria, vuoi l'unità che ospita la partizione che ha / nella colonna MOUNTPOINT per questa perché quella sarà la tua unità del sistema operativo.
Compila questo nel primo campo di query.
Facoltativamente, puoi anche tracciare lo spazio libero di un secondo disco sul tuo sistema.
Questo è rivolto alle persone che mantengono il loro sistema operativo e i dati della catena su unità separate.
Configura questo seguendo lo stesso processo, ma invece di guardare quale partizione ha / nella colonna MOUNTPOINT, vuoi cercare quella che ha qualunque sia il punto di montaggio della tua seconda unità.
Aggiorna il secondo campo di query con il disco associato a quella partizione.
Disk Temp
Questo traccia la temperatura attuale del disco del tuo sistema operativo. I passaggi sono gli stessi del riquadro CPU Temp sopra, quindi segui semplicemente quelle istruzioni anche per questo riquadro, sostituendo i valori del chip e del sensore della CPU con quelli del disco del tuo sistema operativo. Compila questi valori nel primo campo di query.
Facoltativamente, puoi anche tracciare la temperatura attuale di un secondo disco sul tuo sistema. Configura questo seguendo lo stesso processo, sostituendo i valori del chip e del sensore con quelli della tua seconda unità. Compila questi valori nel secondo campo di query.
Personalizzazione del Dashboard
Mentre il dashboard standard cerca di fare un buon lavoro catturando tutto ciò che vorresti vedere a colpo d'occhio, è abbastanza facile personalizzare un dashboard Grafana come vuoi. Puoi aggiungere nuovi grafici, cambiare il modo in cui i grafici appaiono, spostare le cose e molto altro!
Dai un'occhiata alla pagina Tutorial di Grafana per imparare come giocarci e configurarlo a tuo piacimento.
Personalizzazione dello Stack di Metriche
Gli strumenti utilizzati nello Stack di Metriche di Rocket Pool offrono una vasta gamma di opzioni di configurazione oltre a quelle incluse nell'installazione predefinita di Rocket Pool. Questa sezione include esempi di configurazione per diversi casi d'uso.
In generale, le opzioni di configurazione di Grafana dovrebbero essere passate attraverso usando variabili d'ambiente in override/grafana.yml. Qualsiasi opzione di configurazione può essere convertita in una variabile d'ambiente usando la seguente sintassi:
Impostazioni SMTP di Grafana per l'Invio di Email
Per inviare email da Grafana, ad esempio per avvisi o per invitare altri utenti, le impostazioni SMTP devono essere configurate nello Stack di Metriche di Rocket Pool. Vedi la pagina Configurazione SMTP di Grafana per riferimento.
Apri ~/.rocketpool/override/grafana.yml in un editor di testo.
Aggiungi una sezione environment sotto la riga x-rp-comment: Add your customizations below this line, sostituendo i valori seguenti con quelli del tuo provider SMTP.
Se usi Gmail e la Verifica in 2 passaggi è abilitata, crea una Password per l'app per questo servizio.
Dopo aver apportato queste modifiche, esegui quanto segue per applicare le modifiche:
Per testare le impostazioni SMTP, vai al menu Alerting e fai clic su Contact points.
Fai clic su New contact point e seleziona Email come tipo di Contact point. Inserisci un indirizzo email nella sezione Addresses e fai clic su Test.
Controlla che l'email di test sia stata ricevuta. Fai clic su Save contact point* quando hai finito.