Grundkonfiguration einer Lightning Node & Best Practices

So, hier mal die erste Ergänzung.

Unabhängige Stromversorgung / USV / UPS

Man soll ja von Computern nicht einfach so den Stecker ziehen, das lernt man ja früh. Im besten Fall passiert nix, aber leider kann es auch zu Datenverlust kommen bzw. sogar die Harddisk (oder die SD-Karte im Raspi) kaputt werden.
Bei einer Lightning-Node können noch folgende Unanehmlichkeiten dazu kommen:

  • Ein neuer Block wurde gerade verabeitet, dann könnte das neuerliche Hochfahren länger dauern. Möglicherweise muss sogar die gesamte Blockchain neu gesynct werden.
  • Wenn gerade eine Lightning-Transaktionen stattgefunden haben, könnten die Daten nicht korrekt abgespeichert werden. Das könnte im schlimmsten Fall zu einem Verlust von Bitcoin in Kanälen führen, wenn der Channel-Partner das als Betrug wertet und sich den gesamten Kanal holt.

Deswegen ist eine USV absolut empfehlenswert!

Ich nutze derzeit eine Eaton Ellipse ECO 650 USB DIN (Amazon) für ca. 100€.

Hier sind ein paar Einrichtungstipps – in meinem Fall für einen Raspberry Pi 4 mit RaspiBlitz v.1.7.0:

Stufe 1: Einfach anstecken

Eine USV einfach anzuschließen verbessert schon die Situation: Es werden Spannungsschwankungen (Gewitter!) ausgeglichen und natürlich kurze Stromausfälle überbrückt.

Stufe 2: Automatischer Shutdown

Besser ist allerdings, wenn der Status der USV permanent vom Raspi überwacht wird. Fällt der Strom aus, wartet die Überwachung so lange, bis die Batterie der USV fast leer ist. Dann wird automatisch der Raspi sicher heruntergefahren. Wenn der Strom dann wieder da ist, wird der Raspi wieder hochgefahren.

Dafür muss die USV eine Kommunikationsschnittstelle anbieten. Beim EATON sind das die Modelle mit der Bezeichnung „USB“.

Das ganze funktioniert unter Linux beispielsweise mit NUT, den Network UPS Tools: https://networkupstools.org/

Bei der Einrichtung bin ich eigentlich fast 1:1 diesem Tutorial gefolgt:

An dieser Stelle möchte ich mich bei @mrsieb für den Link-Tipp bedanken!

Die Konfiguration unterscheidet sich ein wenig für das EATON-Gerät und den Raspiblitz, aber im Grunde ist das Tutorial fast perfekt geeignet. Lediglich den USV-Namen habe ich natürlich anders gewählt, natürlich die Passwörter und bei den Schreibrechten habe ich mich an den bestehenden Rechten im /etc/nut Ordner orientiert.

Ich habe das Tutorial bis zur Überschrift „Email notifications“ bei mir angewendet.

Stufe 3: Benachrichtigungen

Im Tutorial ist auch noch beschrieben, wie man beispielsweise E-Mail-Benachrichtigungen einstellen kann bei USV-Events, aber das habe ich (noch) nicht getestet. Wird hier ev. noch nachgeliefert.

Der Test

Um sicher zu gehen, dass das Ganze auch funktioniert, habe ich einen Test durchgeführt. Wer sicher gehen möchte, dass nichts kaputt wird, fährt den Raspi herunter, steckt ihn wieder an eine normale Steckdose an, fährt ihn wieder hoch und legt an die USV einen anderen Verbraucher mit ähnlicher Leistung an. Dann wird die USV vom Netz genommen und der Test beginnt.

Der Raspi ist trotzdem noch per USB verbunden und bekommt die Signale der USV. Das sieht beispielsweise so aus:

Broadcast message from nut@raspberrypi (Fri Jul 2 19:57:31 2021):
UPS eaton@localhost on battery

Bei meinem Raspi wurde dann bei einem Akkustand vom EATON von 20% der Shutdown-Prozess eingeläutet:

Broadcast message from nut@raspberrypi (Fri Jul 2 20:27:36 2021):
UPS eaton@localhost battery is low

Broadcast message from nut@raspberrypi (Fri Jul 2 20:27:36 2021):
Executing automatic power-fail shutdown

Broadcast message from nut@raspberrypi (Fri Jul 2 20:27:36 2021):
Auto logout and shutdown proceeding

Ich habe den Test direkt mit dem Raspi und keinem eigenen Verbraucher gemacht. Wenn der Raspi heruntergefahren wurde, bekommt die USV die letzte Anweisung, den Strom zu kappen, der Raspi wird stromlos und schaltet sich ab.

Dann habe ich den Strom der USV wieder angesteckt und der Raspi fährt automatisch wieder hoch.

Wenn alles hochgefahren ist, fängt die Bitcoin-Blockchain fängt gleich wieder zu syncen an, nur die LND-Wallet muss noch per Passwort aktiviert werden (außer man hat „LND Auto-Unlock“ aktiviert, was ich nicht empfehlen würde).

Damit man das Passwort auch bei einem Stromausfall wieder eingeben kann, wenn man nicht zuhause ist, empfiehlt es sich eine E-Mail-Notification einzurichten.

Bei meinem Test mit dem EATON 650 USB hat der Akku (mit einer Kapazität von 84Wh) ziemlich genau 30min gehalten, bevor die 20%-Schwelle erreicht wurde. Allerdings hängt bei mir nicht nur der Raspi an der USV sondern zusätzlich auch ein Router. Ohne Router hätte die USV also noch etwas länger gehalten.

Ich hoffe, dass euch dieser Erfahrungsbericht hilft, es ist nicht so kompliziert.
Ich freue mich, wenn ihr hier auch Tipps & Tricks für die sichere Konfiguration eurer Lightning-Node teilt.

Happy stacking!

21 „Gefällt mir“