Cambiare Execution o Consensus Client

In circostanze normali, probabilmente selezionerai un Execution e un Consensus client quando crei per la prima volta il tuo nodo Rocket Pool e li lascerai funzionare felicemente per tutta la vita del tuo nodo. Tuttavia, ci sono alcune situazioni in cui potresti voler cambiare la selezione del client. Ecco alcuni esempi:

  • Il tuo client ottiene una quota di supermajority sulle chain Execution o Beacon, e vuoi cambiare per la salute generale della rete
  • Un bug causa il malfunzionamento del tuo client, e devi tornare online rapidamente per riprendere i compiti di validazione
  • Vuoi provare una nuova funzionalità offerta da un client diverso
  • Un client diverso è più adatto all'hardware del tuo nodo (ad esempio alcuni client sono migliori sui sistemi ARM rispetto ad altri)

Fortunatamente, lo stack Smartnode rende estremamente facile cambiare client. Tutto ciò che serve sono alcune modifiche nella TUI di configurazione e alcuni comandi extra opzionali per eseguire il backup dei dati del client esistente prima di cambiare client.

Cambiare Execution Client

Prima di cambiare il tuo Execution client, vale la pena notare i seguenti punti:

  • I dati della chain non sono condivisi tra i client. Il tuo nuovo client dovrà risincronizzare i dati della chain Mainnet, il che può richiedere del tempo (anche se ogni client supporta la snap sync, che lo Smartnode utilizza per velocizzare la risincronizzazione).
  • Per impostazione predefinita, lo Smartnode lascerà i dati della chain del tuo vecchio client sul tuo drive nel caso in cui desideri tornare al tuo vecchio Execution client e riprendere da dove avevi lasciato. Potresti voler esportarlo in una posizione diversa ed eliminarlo per liberare spazio prima di cambiare client, poiché gli Execution client possono utilizzare centinaia di gigabyte. Abbiamo i passaggi qui sotto su come farlo.
  • Mentre il tuo nuovo client si sta risincronizzando, la maggior parte delle funzioni CLI dello Smartnode sarà offline poiché si basano sull'Execution client. Dovresti avere un Execution client di ripiego disponibile prima di farlo per mitigare i tempi di inattività sul tuo Smartnode.

(Opzionale) Esportare il Database del tuo Execution Client

Il primo passo nel processo è opzionale: se vuoi, puoi esportare i dati della chain esistenti per il tuo Execution client attuale. Questo ti permetterà di liberare spazio prezioso sul disco del tuo nodo per il tuo nuovo Execution client, e puoi conservare i vecchi dati della chain nel caso in cui desideri tornare al vecchio client e riprendere da dove avevi lasciato.

Fai riferimento alla guida Backup del tuo Nodo per i dettagli.

Cambiare il tuo Execution Client Selezionato

Per cambiare il client selezionato, esegui rocketpool service config per accedere all'interfaccia di configurazione. Naviga nella sezione Execution Client (ETH1) e seleziona il menu a discesa Execution Client:

Apri il menu a discesa con Enter, usa i tasti freccia per navigare al client di tua scelta e premi Enter di nuovo per confermare la selezione.

Nota che ogni client ha le sue opzioni univoche, quindi potresti vedere alcune impostazioni aggiuntive apparire in questa schermata dopo aver selezionato un client diverso. Sentiti libero di esplorarle per vedere come influenzano le cose.

Quando sei soddisfatto della tua scelta, premi Esc per tornare al menu principale, quindi Tab per evidenziare il pulsante Review Changes and Save. Ti verrà presentata la schermata di revisione, che mostrerà la modifica della selezione del client:

Premi Enter per accettare le modifiche, e hai finito! Il tuo nuovo Execution client inizierà immediatamente la sincronizzazione. Come al solito, puoi seguirlo con rocketpool service logs eth1. Ti consigliamo di farlo per verificare che non ci siano errori e che funzioni correttamente.

NOTA

Ora che i layer Execution e Consensus si sono fusi, spegnere il tuo Execution client spegnerà anche il tuo Consensus client fino a quando il tuo Execution client non avrà terminato la risincronizzazione. Questo significa che il tuo nodo smetterà di attestare e proporre blocchi, e perderà ETH invece di guadagnarlo!

Per evitare ciò e continuare a validare mentre il tuo Execution client si risincronizza, imposta un nodo di ripiego.

(Consigliato) Rimuovere i tuoi Vecchi Dati della Chain

Questo non è un passaggio obbligatorio, ma consigliamo vivamente di rimuovere i dati della chain dal tuo vecchio client ora che sei passato a uno nuovo in modo da poter liberare spazio su disco per esso.

Per farlo, esegui semplicemente il seguente comando:

rocketpool service resync-eth1

Questo eliminerà tutti i dati del tuo Execution client e lo ricomincerà da capo.

SUGGERIMENTO

Poiché hai appena selezionato un nuovo Execution client, non sarà influenzato da questo - essenzialmente, tutto ciò che farà è eliminare i tuoi vecchi dati della chain. Dovresti farlo il prima possibile dopo aver cambiato client per evitare perdite inutili di progresso sul tuo nuovo client.

Cambiare Consensus Client

Cambiare Consensus client è ancora più facile degli Execution client, grazie alla Checkpoint Sync. Questa funzionalità ti consente di sincronizzare immediatamente un nuovo Consensus client con la rete, quindi non è necessario conservare i vecchi dati della chain.

Inizia utilizzando l'interfaccia rocketpool service config e naviga nella sezione Consensus Client (ETH2). Successivamente, seleziona il menu a discesa Consensus Client:

Apri il menu a discesa con Enter, usa i tasti freccia per navigare al client di tua scelta e premi Enter di nuovo per confermare la selezione.

Nota che ogni client ha le sue opzioni univoche, quindi potresti vedere alcune impostazioni aggiuntive apparire in questa schermata dopo aver selezionato un client diverso. Sentiti libero di esplorarle per vedere come influenzano le cose.

Successivamente, verifica che stai utilizzando un provider Checkpoint Sync:

Se non hai un provider Checkpoint Sync configurato, puoi facilmente utilizzare le istruzioni qui per farlo gratuitamente!

Quando sei soddisfatto della tua scelta, premi Esc per tornare al menu principale, quindi Tab per evidenziare il pulsante Review Changes and Save. Ti verrà presentata la schermata di revisione, che mostrerà la modifica della selezione del client:

Premi Enter per accettare le modifiche, e hai finito! Il tuo nuovo Consensus client inizierà immediatamente la sincronizzazione. Come al solito, puoi seguirlo con rocketpool service logs eth2. Ti consigliamo di farlo per verificare che non ci siano errori e che funzioni correttamente.