Pruning des Execution Clients
Dies ist für geth und nethermind Benutzer gedacht.
Besu muss nicht gepruned werden.
Wenn Sie geth oder nethermind als Ihren primären Execution Client verwenden, werden Sie wahrscheinlich bemerken, dass der freie Speicherplatz Ihres Nodes im Laufe der Zeit langsam abnimmt.
Der Execution Client ist bei weitem der größte Beitragszahler hierzu; abhängig davon, wie viel RAM Sie während rocketpool service config seinem Cache zugewiesen haben, kann er mit einer Rate von mehreren Gigabyte pro Tag wachsen!
Um damit umzugehen, bieten Execution Clients eine spezielle Funktion namens Pruning, die es ihnen ermöglicht, ihre Datenbank sicher zu scannen und aufzuräumen, um freien Speicherplatz zurückzugewinnen. Jeder Node Operator, der Geth oder Nethermind verwendet, wird es irgendwann prunen müssen.
Wenn Sie eine 2 TB SSD haben, können Sie normalerweise Monate zwischen den Pruning-Runden vergehen lassen. Für 1 TB SSD-Benutzer müssen Sie häufiger prunen.
Wenn Sie das Grafana Dashboard aktiviert haben, ist eine gute Faustregel, über das Pruning Ihres Execution Clients nachzudenken, wenn Ihr verwendeter Speicherplatz des Nodes 80% überschreitet.
Wenn Sie entscheiden, dass es Zeit ist, verfügt der Smartnode über die Möglichkeit, es auf Anfrage für Sie zu prunen. Lesen Sie unten, um zu erfahren, wie es funktioniert und was Sie erwarten können.
Das Pruning Ihres Execution Clients ist nur im Docker Mode möglich.
Wenn Sie Ihren eigenen Execution Client verwenden, wie z.B. einen externen Client im Hybrid-Modus oder Native-Modus, können Sie den Smartnode nicht zum Pruning des Execution Clients verwenden. Sie müssen es manuell durchführen. Bitte konsultieren Sie die Dokumentation für Ihren Execution Client, um zu erfahren, wie Sie ihn prunen.
Voraussetzungen
Wählen Sie den Client, den Sie verwenden, aus den Tabs unten aus.
Das Pruning von Geth bedeutet, den primären Execution Client offline zu nehmen, damit er sich selbst aufräumen kann. Wenn dies geschieht, benötigt der Smartnode (und Ihr Consensus Client) eine andere Möglichkeit, auf die ETH1-Chain zuzugreifen, um ordnungsgemäß zu funktionieren.
Der einfachste Weg, dies bereitzustellen, ist mit einem Fallback Node.
Wenn Sie bereits einen Fallback Node konfiguriert haben, indem Sie rocketpool service config verwendet haben, wird der Smartnode automatisch zu diesem wechseln, wenn Ihr Geth-Container für Wartungsarbeiten ausfällt.
Er wird auch Ihren Consensus Client informieren, ebenfalls den Fallback zu verwenden.
WARNUNG
Wenn Sie keinen Fallback Node konfiguriert haben, wird Ihr Node während des Pruning-Prozesses aufhören zu validieren. Er wird alle Attestierungen und Block Proposals verpassen, bis er fertig ist und sich mit dem Netzwerk neu synchronisiert hat. Sie werden ETH aufgrund verpasster Validierungen während dieser Zeit verlieren!Vor diesem Hintergrund sind die folgenden zwei Bedingungen erforderlich, um Geth erfolgreich zu prunen:
- Ein funktionierender konfigurierter Fallback Node
- Mindestens 50 GB freier Speicherplatz auf Ihrer SSD
Starten eines Pruning
Wählen Sie den Client, den Sie verwenden, aus den Tabs unten aus.
Wenn Sie Geth prunen möchten, führen Sie einfach diesen Befehl aus:
Wenn Sie kein Fallback-Client-Paar aktiviert haben, erhalten Sie die folgende Warnung:
Wenn Sie einen aktiviert haben, sehen Sie stattdessen die folgende Eingabeaufforderung:
Wenn Sie akzeptieren, sehen Sie einige Details, während der Smartnode die Dinge vorbereitet; es sollte mit einer Erfolgsmeldung enden:
Damit pruned Geth jetzt und Sie sind fertig! Sie können den Fortschritt mit folgendem Befehl verfolgen:
Sobald das Pruning abgeschlossen ist, wird es automatisch neu gestartet und der Smartnode wird es wieder verwenden anstelle Ihres Fallbacks.