Pruning dell'Execution Client
Questo è destinato agli utenti di geth e nethermind.
Besu non necessita di pruning.
Se utilizzi geth o nethermind come client Execution primario, probabilmente noterai che lo spazio libero su disco del tuo nodo diminuisce lentamente nel tempo.
Il client Execution è di gran lunga il maggiore contributore a questo; a seconda di quanta RAM hai allocato alla sua cache durante rocketpool service config, può crescere a un ritmo di diversi gigabyte al giorno!
Per gestire questo, i client Execution forniscono una funzione speciale chiamata pruning che consente loro di scansionare e pulire in sicurezza il loro database per recuperare spazio libero. Ogni node operator che utilizza Geth o Nethermind dovrà eventualmente eseguire il pruning.
Se hai un SSD da 2 TB, di solito puoi andare avanti per mesi tra i cicli di pruning. Per gli utenti di SSD da 1 TB, dovrai eseguire il pruning più frequentemente.
Se hai abilitato la dashboard Grafana, una buona regola generale è iniziare a pensare al pruning del tuo client Execution quando lo spazio su disco utilizzato del tuo nodo supera l'80%.
Quando decidi che è il momento, lo Smartnode viene fornito con la possibilità di eseguire il pruning per te su richiesta. Leggi di seguito per sapere come funziona e cosa aspettarti.
Il pruning del tuo client Execution è possibile solo in Docker Mode.
Se utilizzi il tuo client Execution, come un client esterno in modalità Hybrid o Native mode, non puoi utilizzare lo Smartnode per eseguire il pruning del client Execution. Dovrai farlo manualmente. Si prega di fare riferimento alla documentazione del tuo client Execution per imparare come eseguirne il pruning.
Prerequisiti
Seleziona il client che stai utilizzando dalle schede qui sotto.
Il pruning di Geth significa mettere offline il client Execution primario in modo che possa pulirsi. Quando ciò accade, lo Smartnode (e il tuo Consensus client) avranno bisogno di un altro modo per accedere alla catena ETH1 per funzionare correttamente.
Il modo più semplice per fornire questo è con un nodo di fallback.
Se hai configurato un nodo di fallback usando rocketpool service config, allora lo Smartnode passerà automaticamente ad esso quando il tuo container Geth si interrompe per manutenzione per te.
Informerà anche il tuo Consensus client di utilizzare il fallback.
AVVISO
Se non hai un nodo di fallback configurato, il tuo nodo smetterà di validare durante il processo di pruning. Perderà tutte le attestazioni e le proposte di blocco fino a quando non sarà finito e si sarà risincronizzato con la rete. Perderai ETH a causa di validazioni mancate durante questo periodo!Con questo in mente, le seguenti due condizioni sono necessarie per eseguire con successo il pruning di Geth:
- Un nodo di fallback funzionante configurato
- Almeno 50 GB di spazio libero rimanente sul tuo SSD
Avvio di un Pruning
Seleziona il client che stai utilizzando dalle schede qui sotto.
Quando vuoi eseguire il pruning di Geth, esegui semplicemente questo comando:
Se non hai una coppia di client di fallback abilitata, riceverai il seguente avviso:
Se ne hai uno abilitato, vedrai invece il seguente prompt:
Se accetti, vedrai alcuni dettagli mentre lo Smartnode prepara le cose; dovrebbe terminare con un messaggio di successo:
Con questo, Geth sta ora eseguendo il pruning e sei a posto! Puoi seguire i suoi progressi con:
Una volta terminato il pruning, si riavvierà automaticamente e lo Smartnode riprenderà a utilizzarlo di nuovo invece del tuo fallback.