Configurazione dello Stack Smartnode (Modalità Docker / Ibrida)
Eseguire client completi dello strato di esecuzione e dello strato di consenso può essere scoraggiante; ci sono diverse opzioni tra cui scegliere e ognuna di esse ha una pletora di impostazioni diverse. Fortunatamente, lo Smartnode è progettato per nascondere tutta quella complessità in modo che sia veloce e facile da configurare, pur dandoti la libertà di personalizzare tutto se lo desideri.
In questa sezione, esamineremo i vari metodi per configurare lo Smartnode se stai utilizzando la configurazione basata su Docker o una configurazione ibrida in cui ti connetti a client di esecuzione o consenso gestiti esternamente (ad esempio, client che gestisci al di fuori dello Smartnode per lo staking in solitaria).
Se stai utilizzando la modalità Native senza Docker, visita invece la guida alla configurazione Native.
Ci sono tre modi per configurarlo:
- Tramite l'Interfaccia Guidata - questo è il modo più semplice. Pone solo alcune domande di base e utilizza impostazioni predefinite ben testate per il resto. Questo è ciò che ti verrà presentato quando esegui
rocketpool service configper la prima volta. - Tramite l'Interfaccia del Gestore Impostazioni - questo ti dà accesso a tutte le impostazioni dello Smartnode in modo da poter personalizzare tutto quanto vuoi.
- In modalità headless tramite la Riga di Comando - questa è un'opzione per le persone che eseguono lo Smartnode in un ambiente headless (non interattivo) e devono configurarlo automaticamente.
Scegli quale modalità vuoi approfondire dall'elenco sopra, o semplicemente scorri ogni opzione di seguito.
Configurazione tramite la Procedura Guidata
Per avviare il processo di configurazione, esegui il seguente comando:
Questo avvierà un'interfaccia utente basata su terminale che ti permetterà di configurare rapidamente e facilmente il tuo nodo, oltre a fornire un controllo opzionale granulare su ogni impostazione per la personalizzazione avanzata.
Se hai già configurato lo Smartnode, verrai invece accolto dal Gestore Impostazioni. Puoi scegliere di riaprire la Procedura Guidata da lì se la preferisci, e tutte le tue impostazioni esistenti saranno preselezionate per te.
Quando esegui l'interfaccia di configurazione per la prima volta (o se scegli di eseguire nuovamente la Procedura Guidata in seguito), ti verrà presentata una schermata che assomiglia a questa:
Per utilizzare la Procedura Guidata, premi i Tasti Freccia (su/giù/sinistra/destra) per navigare tra elementi come pulsanti (scelte) o caselle di testo.
Puoi anche usare Tab e Shift+Tab se preferisci - farà la stessa cosa.
Per i pulsanti, quello attualmente selezionato sarà evidenziato in verde.
Quelli in nero non sono selezionati.
Nello screenshot sopra, Next è attualmente selezionato e Quit non lo è.
Premi Enter o Spazio per selezionare un pulsante, analogamente a farci clic con il mouse.
Premi Escape per tornare alla finestra di dialogo precedente se hai cambiato idea su qualcosa.
Questo tornerà utile mentre procedi attraverso le varie pagine della Procedura Guidata.
Tieni premuto Ctrl e premi C in qualsiasi momento per uscire dalla Procedura Guidata senza salvare nulla.
Ad esempio, nella schermata sopra, potresti premere i tasti freccia sinistra e destra per spostarti tra i pulsanti Next e Quit.
Premendo Enter mentre Next è selezionato procederai alla schermata successiva.
Premendo Enter mentre Quit è selezionato uscirai dalla Procedura Guidata senza salvare.
Quando sei pronto per iniziare, premi Next.
Scelta di una Rete
Nella schermata successiva, ti verrà chiesto di scegliere quale rete vuoi utilizzare:
Puoi evidenziare le diverse scelte con i tasti freccia Su e Giù (o Tab e Shift+Tab).
Quando cambi scelta, la casella Descrizione sulla destra ti mostrerà una breve descrizione di ciascuna opzione.
Questo è vero per tutte le pagine basate su scelte nella Procedura Guidata, non solo per la selezione della rete, quindi vedrai questo stile di pagina frequentemente.
Se vuoi esercitarti a eseguire un nodo Rocket Pool sulla rete di test Hoodi con ETH e RPL falsi che puoi ottenere gratuitamente, seleziona Hoodi Testnet.
Se sei pronto a creare un vero nodo Rocket Pool su Mainnet per guadagnare ricompense reali, seleziona Mainnet.
Modalità Client
Ti verranno presentate due opzioni per la modalità client:
Locally Managed (nota anche come "Modalità Docker") è la scelta predefinita. Usala se non hai già una coppia di client e vuoi che lo Smartnode ne gestisca uno per te. Scegliendo questa opzione, lo Smartnode creerà, configurerà e gestirà una coppia di client di Esecuzione e Consenso come container Docker. Non preoccuparti, potrai scegliere quale client vuoi eseguire successivamente.
Externally Managed (nota anche come "Modalità Ibrida") è una scelta conveniente per gli utenti che hanno già una coppia di client di Esecuzione e Consenso in esecuzione altrove che gestiscono manualmente. Scegliendo questa opzione, lo Smartnode si connetterà semplicemente ai tuoi client esistenti e non ne eseguirà uno proprio. Ad esempio, gli utenti possono usare questo per collegarsi ai client che attualmente utilizzano per lo staking in solitaria; in questo modo, non hanno bisogno di avere due copie separate dei client.
Dal Merge dello strato di Esecuzione e Consenso, non puoi mescolare queste modalità (ad esempio, non puoi avere un client di Esecuzione locale ma un client di Consenso gestito esternamente). Devi scegliere tutto gestito localmente o tutto gestito esternamente.
Configurazione Client di Esecuzione
Scegli quale modalità vuoi utilizzare per gestire il tuo client di Esecuzione e segui i passaggi nella scheda corrispondente di seguito:
Se vuoi che lo Smartnode gestisca un client di Esecuzione per te, la schermata successiva ti chiederà di scegliere un client:

Consulta la sezione Scelta dei tuoi client ETH per una descrizione di ciascuna opzione. Una volta effettuata la scelta, fai clic sulla scheda appropriata di seguito per imparare come configurarlo:
Se scegli Geth, Besu o Nethermind, la Procedura Guidata gestirà tutta la configurazione per te. Puoi regolare manualmente alcuni dei suoi parametri alla fine di questo processo, ma le impostazioni predefinite che utilizza sono completamente appropriate per l'operatività del nodo. Puoi procedere alla sezione successiva.
NOTA
Apri la porta P2P nella configurazione di port forwarding del tuo router. Configurala per inoltrare la porta 30303 sia su TCP che UDP all'indirizzo IP locale della tua macchina. In questo modo, altri client di Consenso possono scoprirlo e comunicare con esso dall'esterno. Questo aiuterà il tuo client di Consenso a sincronizzarsi rapidamente e a migliorare le prestazioni (e quindi le ricompense).Ogni router ha un modo diverso di farlo, quindi dovrai consultare il manuale del tuo router su come configurare il port forwarding.
NOTA
Poiché lo Smartnode verrà eseguito nel suo container Docker, utilizzerà la rete interna di Docker. Non potrai usare nomi host comelocalhost o 127.0.0.1 qui; se il tuo client di Esecuzione è in esecuzione sulla stessa macchina dello Smartnode, dovrai invece fornire l'indirizzo IP LAN della macchina.E con questo, il tuo client di Esecuzione è tutto pronto!
Configurazione Client di Consenso
Ora che hai un client di Esecuzione pronto, il compito successivo è configurare il client di Consenso. La "modalità" (locale o esterna) sarà ereditata dalla scelta che hai usato per il tuo client di Esecuzione in precedenza.
Scegli quale modalità hai selezionato in precedenza dalle schede di seguito:
Se vuoi che lo Smartnode gestisca un client di Consenso per te, la schermata successiva ti chiederà di scegliere un client:

La scelta preferita per la salute generale e la diversità della rete è l'opzione Random (Recommended), che sceglierà casualmente tra uno dei quattro client di Consenso supportati per te.
Se preferisci scegliere un client esplicito, consulta la sezione Scelta dei tuoi client ETH per una descrizione di ciascuna opzione in modo da poter prendere una decisione informata.
NOTA
Ci sono due condizioni che ti mostreranno avvisi in base alla selezione del client:-
Il client selezionato è attualmente un client a supermaggioranza, il che significa che una maggioranza malsana di validatori sulla Beacon Chain lo utilizza, il che minaccia la stabilità della rete
-
Il client selezionato è troppo pesante in termini di risorse per l'hardware che stai attualmente utilizzando
Se uno di questi casi è vero per il tuo client scelto, verrai avvisato e ti verrà chiesto di scegliere un client diverso. Hai l'opzione di continuare a usare quello che hai selezionato, ma devi essere consapevole dei rischi nel farlo.
Una volta effettuata la scelta o ti è stato assegnato un client casuale, fai clic sulla scheda appropriata di seguito per imparare come configurarlo:
La prima opzione nella configurazione di Lighthouse chiederà del messaggio graffiti del tuo validatore:

Questo è un messaggio personalizzato opzionale che puoi allegare a qualsiasi blocco che proponi sulla Beacon Chain. Il messaggio sarà preservato per sempre, quindi pensalo come un modo divertente per lasciare il tuo segno!
Nota che la lunghezza massima del graffiti è di 16 caratteri.
Se vuoi vedere alcuni esempi di ciò che i validatori stanno usando per il Graffiti oggi, dai un'occhiata qui.
Successivamente c'è un'opzione per abilitare o disabilitare il Checkpoint Sync:

Lighthouse ha la capacità di sincronizzarsi istantaneamente all'ultimo blocco sulla rete Beacon Chain connettendosi a un Beacon Node esistente di cui ti fidi. Questo è preferibile rispetto alla sincronizzazione convenzionale perché non richiede tempo (mentre la sincronizzazione convenzionale può richiedere giorni) e viene fornito con alcuni vantaggi di sicurezza. Dai un'occhiata alla loro documentazione sulla sincronizzazione del checkpoint per maggiori informazioni se sei curioso.
Puoi inserire l'URL di qualsiasi Beacon Node che fornisca accesso alla sua API REST qui.
Vedi la sezione sotto sulla Sincronizzazione Checkpoint se vuoi utilizzarla.
L'ultima domanda chiederà se vuoi abilitare la Protezione Doppelgänger:

Lighthouse supporta una funzione chiamata Rilevamento Doppelgänger. In poche parole, questa funzione intenzionalmente perderà alcune attestazioni dopo il riavvio del Validator Client di Lighthouse; mentre fa questo, ascolterà per vedere se le attestazioni vengono ancora inviate alla rete usando le tue chiavi validatore.
Idealmente, non ci dovrebbero essere attestazioni (il che significa che nessun'altra macchina è in esecuzione con le tue chiavi validatore collegate). Dopo il suo breve periodo di attesa, Lighthouse inizierebbe a validare normalmente.
Tuttavia, se c'è un'altra macchina in esecuzione con le tue chiavi validatore collegate, allora Lighthouse si spegnerà immediatamente ed emetterà un messaggio di errore nei suoi file di log. Il motivo è che se iniziasse ad attestare anche lui, inizieresti a doppia attestazione che è un reato punibile con slashing. Quando subisci slashing, il tuo validatore verrà forzatamente escluso dalla Beacon chain e ti verrà penalizzata una quantità significativa di ETH.
La maggior parte delle volte, il rilevamento doppelgänger non risulterà in nient'altro che alcune attestazioni perse dopo il riavvio di un client. In situazioni in cui stai spostando il tuo validatore su una nuova macchina o stai cambiando a un nuovo client Beacon, tuttavia, il rilevamento doppelgänger può impedirti di subire slashing attestando accidentalmente due volte.
Pensalo come un'assicurazione economica per i tuoi minipool; perderai un po' di profitto banale ogni volta che riavvii, ma puoi essere abbastanza sicuro di non eseguire accidentalmente le tue chiavi in due posti e subire slashing per questo.
A partire dalla versione 4.5.0 Lighthouse ha un'opzione per stabilire connessioni P2P in modo più efficiente utilizzando il protocollo QUIC. Se sei disposto a utilizzare questa funzione dovrai definire un campo extra "P2P QUIC port" nelle impostazioni ETH2 e inoltrarlo al tuo nodo nella configurazione di port forwarding del tuo router. La porta P2P QUIC predefinita è 8001 (UDP). Assicurati di evitare collisioni con porte già in uso dal tuo nodo (o nodi di fallback/testnet). Assicurati anche che la stessa porta sia aperta se stai usando un firewall sul tuo nodo (controlla ufw status).
Per verificare se la configurazione QUIC funziona dovresti vedere un numero a 2 cifre dopo libp2p_quic_peers quando esegui docker run --network rocketpool_net curlimages/curl http://eth2:9100/metrics | grep libp2p_peers_multi.
NOTA
Apri la porta P2P nella configurazione di port forwarding del tuo router. Configurala per inoltrare la porta 9001 sia su TCP che UDP all'indirizzo IP locale della tua macchina. In questo modo, altri client di Consenso possono scoprirlo e comunicare con esso dall'esterno. Questo aiuterà il tuo client di Consenso a sincronizzarsi rapidamente e a migliorare le prestazioni (e quindi le ricompense).Ogni router ha un modo diverso di farlo, quindi dovrai consultare il manuale del tuo router su come configurare il port forwarding
Sincronizzazione Checkpoint della Beacon Chain
La sincronizzazione checkpoint è una tecnica molto utile che alcuni client Beacon Chain supportano. Permette al tuo client Beacon di sincronizzarsi istantaneamente all'intera Beacon chain senza dover iniziare dall'inizio e recuperare ogni blocco. Questo significa che invece di richiedere giorni, il tuo client Beacon può essere pronto in questione di minuti. Tutto ciò di cui ha bisogno è l'accesso a un client Beacon esistente di cui ti fidi.
Puoi usare qualsiasi Beacon node che fornisca accesso alla sua API HTTP. Attualmente, molti operatori di nodi stanno usando i checkpoint-sync-endpoints - un servizio che permette agli operatori di nodi Rocket Pool di sincronizzare facilmente i checkpoint. Sia la Hoodi Testnet che la Mainnet sono supportate. Un elenco di URL di sincronizzazione checkpoint può essere trovato tramite il seguente link:
Scegli un URL di sincronizzazione checkpoint pertinente e incollalo nel terminale durante rocketpool service config quando ti chiede un Checkpoint Sync Provider.
Dopodiché, il tuo Beacon node si connetterà automaticamente al nodo di sincronizzazione checkpoint quando si avvierà per la prima volta e scaricherà istantaneamente lo stato più recente della chain!
La Sincronizzazione Checkpoint avverrà solo se non hai ancora dati della Beacon Chain. In altre parole, se inizi a sincronizzare normalmente e decidi di sincronizzare i checkpoint in seguito, dovrai prima rimuovere i dati della tua chain affinché la sincronizzazione checkpoint funzioni. Questo può essere facilmente fatto con il seguente comando:
Nodo di Fallback
A partire dalla versione 1.5.0 dello stack Smartnode, puoi fornire una coppia "di fallback" di client di Esecuzione e Consenso che può subentrare ai tuoi client primari se mai vanno offline (ad esempio perché usi Geth e devi effettuare il pruning). In questa situazione, la tua macchina nodo primaria sarà ancora responsabile dell'attestazione e della proposta di blocchi con le chiavi validatore dei tuoi minipool, ma si connetterà a una macchina esterna per interagire con lo strato di Esecuzione e le chain Beacon.
Per saperne di più sui nodi di fallback, vedi questa sezione e torna qui quando hai finito.
Configurazione Metriche
Rocket Pool viene fornito con la capacità di visualizzare un dashboard dettagliato che mostra metriche sulla salute hardware del tuo nodo, aggiornamenti di sistema, le prestazioni del tuo validatore, le tue ricompense, informazioni sulla rete Rocket Pool complessiva e altro ancora:
La prossima domanda nella Procedura Guidata ti chiederà se vuoi abilitare questo:
Se scegli di abilitarlo, imparerai di più su come configurarlo e come usarlo nella sezione Configurazione del Dashboard Grafana più avanti nel processo.
Tutti i dati raccolti da questo sistema rimangono sulla tua macchina. Rocket Pool non raccoglie nessuna delle telemetrie né la invia a un servizio separato. È lì puramente per te da usare in modo da poter monitorare il tuo nodo!
Configurazione MEV
Dal Merge degli strati di Esecuzione e Consenso nel settembre 2022, i validatori Ethereum hanno ora la possibilità di guadagnare commissioni prioritarie e partecipare al Maximal Extractable Value (o MEV in breve).
A partire da Smartnode v1.7.0, MEV è ora opt-out quindi la sua configurazione è presentata come parte della configurazione iniziale, come vedi nella schermata successiva:
Leggi la nostra guida MEV per saperne di più su MEV, la sua configurazione e cosa fare in questa sezione della procedura guidata. Torna qui quando hai finito.
Completamento
Dopo questa domanda, hai finito di configurare lo Smartnode! Vedrai il seguente dialogo:
Se sei soddisfatto della tua configurazione e sei pronto ad avviare lo Smartnode, fai clic su Save and Exit qui e vai alla sezione Protezione del tuo Nodo successivamente.
Se vuoi rivedere tutte le impostazioni e personalizzare molte impostazioni aggiuntive che non erano incluse nella Procedura Guidata, fai clic su Review All Settings e vai alla sezione successiva.
Configurazione tramite il Gestore Impostazioni
Se hai già eseguito rocketpool service config, invece di essere accolto dalla Procedura Guidata, vedrai la schermata del Gestore Impostazioni:
Ci sono tre caratteristiche principali di questa schermata:
- L'Elenco Categorie, che ti permette di approfondire le impostazioni per ogni categoria dello stack Smartnode
- Il pulsante Review Changes and Save, che puoi usare quando sei pronto a vedere quali impostazioni hai modificato e salvare la configurazione aggiornata
- Il pulsante Open the Config Wizard, che ti porterà alla Procedura Guidata di Configurazione se preferisci quell'interfaccia
Per usare il Gestore Impostazioni, premi i Tasti Freccia (su/giù/sinistra/destra) per navigare tra le opzioni nella home page.
Premi Tab per passare tra l'elenco categorie (1) e i pulsanti (2 e 3) nella parte inferiore dello schermo.
Il pulsante attualmente selezionato sarà evidenziato in verde.
Premi Enter o Spazio per selezionare un pulsante, analogamente a farci clic con il mouse.
Tieni premuto Ctrl e premi C in qualsiasi momento per uscire dal Gestore Impostazioni senza salvare nulla.
Mentre scorri l'elenco delle categorie, ogni opzione avrà una descrizione utile che apparirà nella Casella Descrizione a destra dello schermo. Sentiti libero di esplorarle; nulla di ciò che fai verrà salvato finché non passerai attraverso il dialogo di Revisione tramite il pulsante Review Changes and Save, e puoi premere Ctrl+C in qualsiasi momento per uscire senza salvare, quindi non rovinerai accidentalmente qualcosa giocando con le impostazioni qui.
Configurazione delle Impostazioni
Dalla schermata principale, seleziona una qualsiasi delle categorie con il tasto Enter per visualizzare le impostazioni per quella categoria.
Ad esempio, ecco la schermata per la categoria Smartnode and TX Fees:
Usa i Tasti Freccia per spostarti su e giù tra le impostazioni.
Quella attualmente selezionata avrà un quadrato bianco alla fine (se è una casella di testo o una casella di controllo), o sarà evidenziata in bianco (se è un menu a discesa).
Premi Escape per tornare alla schermata principale del Gestore Impostazioni quando hai finito.
Mentre scorri le impostazioni, ognuna mostrerà una breve descrizione di cosa fa nella Casella Descrizione sulla destra. Mostrerà anche il valore predefinito lì nel caso tu voglia ripristinarlo alla sua impostazione di fabbrica.
In questo esempio, l'impostazione RPL Claim Gas Threshold è attualmente selezionata (evidenziata con una casella verde sul lato sinistro dello schermo).
È stata modificata a 40, ma puoi vedere che ha un valore predefinito di 150 nell'angolo in alto a destra (la parte superiore della Casella Descrizione).
Come promemoria, nulla verrà salvato su disco finché non passerai attraverso il dialogo di Revisione tramite il pulsante Review Changes and Save. Sei incoraggiato a esplorare tutte le impostazioni per imparare su di esse e vedere cosa può fare il tuo Smartnode!
I Tipi di Impostazioni e Come Usarli
Il gestore impostazioni utilizza i seguenti tipi di impostazioni ed elementi UI:
Caselle di Testo
Le caselle di testo vengono utilizzate per inserire stringhe arbitrarie di testo o numeri. Assomigliano a questo:
Inserisci i tuoi valori desiderati in esse, quindi premi Enter o usa i Tasti Freccia per navigare a un'impostazione diversa per preservare le tue modifiche.
Se non lo fai, il Gestore Impostazioni assumerà che stai ancora aggiornando quell'impostazione e non la segnerà ancora come modificata.
Menu a Discesa
I menu a discesa vengono utilizzati per selezionare un'opzione da un elenco di scelte. Assomigliano a questo (quando sono aperti):
L'elemento verde è quello attualmente selezionato.
Usa i Tasti Freccia per cambiare opzioni - mentre lo fai, la Casella Descrizione sulla destra si aggiornerà per dirti di più sull'opzione attualmente selezionata.
Quando sei soddisfatto della tua scelta, premi Enter per scegliere l'opzione selezionata e il menu a discesa si chiuderà, rivelando l'opzione attualmente selezionata:
Caselle di Controllo
Le caselle di controllo vengono utilizzate per semplici domande Sì/No. Assomigliano a questo:
Quando sono selezionate, avranno una X al centro come vedi sopra.
Quando non sono selezionate, saranno semplicemente vuote come questo:
Per modificare l'impostazione, selezionala semplicemente e premi Enter.
Salvataggio Modifiche
Quando sei soddisfatto delle tue modifiche e vuoi rivederle prima di salvare, premi il pulsante Review Changes and Save nella schermata principale.
Come promemoria, per raggiungerlo, premi il tasto Tab.
Ti verrà presentata una vista che assomiglia a questa:
La Casella di Revisione qui presenterà tutte le impostazioni che hai modificato, mostrando i vecchi valori e quelli nuovi.
Ad esempio, la prima riga qui mostra che il RPL Claim Gas Threshold era 150, ed è stato modificato a 40.
Ti mostrerà anche quali container sono interessati dalle impostazioni che hai modificato e si offrirà di riavviarli per te dopo aver salvato le tue modifiche.
A questo punto, le tue modifiche non sono ancora state salvate.
Se vuoi tornare indietro e modificare qualcosa, premi Escape per tornare alla schermata principale.
Quando sei soddisfatto delle modifiche, premi Enter per salvare la nuova configurazione su disco.
Uscirai quindi dall'Interfaccia Terminale e ti verrà presentato qualcosa come questo messaggio:
Premi y e Enter se vuoi applicare automaticamente le tue nuove modifiche di configurazione e riavviare i container interessati.
Premi n e Enter se hai altre cose che vuoi fare prima di riavviarli, e lo farai manualmente più tardi.
In entrambi i casi, la tua configurazione è completata!
Potresti vedere un messaggio di errore come quello qui sotto:
Questo non è in realtà un errore, è semplicemente un difetto estetico. Puoi tranquillamente ignorarlo.
Se stai usando Mac OS, potresti vedere un problema che si lamenta di node_exporter. Dovrai eseguire questi comandi per risolverlo.
Sostituisci l'intero contenuto del file con:
poi infine rocketpool service start.
Configurazione tramite la Riga di Comando
Se usi lo Smartnode in un ambiente headless dove non puoi interagire con l'Interfaccia Terminale, puoi configurare il tuo nodo tramite la riga di comando invece.
Il comando rocketpool service config accetta, come argomenti, ogni impostazione che può normalmente essere configurata tramite l'Interfaccia Terminale.
Esegui il seguente comando per vedere un elenco di esse (nota che è piuttosto lungo):
L'output assomiglierà a questo:
Ogni opzione avrà il suo nome, il suo tipo, il suo valore predefinito e (se è un parametro di scelta) le sue opzioni. Usando questo testo, puoi trovare l'opzione (le opzioni) che vuoi impostare e specificarle tramite gli argomenti appropriati.
Questo comando si basa sulla tua configurazione esistente, quindi se hai già alcune impostazioni salvate e vuoi solo modificarne altre, non devi ripeterle. Aggiornerà solo le impostazioni che includi come argomenti di questo comando.
Passi Successivi
Una volta configurato il tuo nodo proprio come lo desideri, sei pronto a proteggere il tuo sistema operativo per proteggere il tuo nodo. Passa alla sezione Protezione del tuo Nodo successivamente.






