Documentchain-Masternodes

Masternodes speichern eine Kopie der gesamten Blockchain, sind möglichst durchgehend verfügbar, managen Sofortzahlungen (InstantSend) und sichern das Netzwerk. Neben dem Mining ist die Bereitstellung eines Masternodes eine weitere Möglichkeit, Coins zu generieren. Seit Version 0.17 werden deterministische Masternodes unterstützt.

Für den Betrieb eines Masternodes benötigen Sie

  • einen Computer, der mit einer festen IPv4 durchgehend mit dem Internet verbunden ist. Beispielsweise ein gemieteter Virtual Private Server (VPS) mit Linux Ubuntu 20.04
  • Das DMS-Wallet, welches in der Regel auf Ihrem lokalen PC ausgeführt wird.
  • 5000 DMS-Coins als Masternode-Pfand (Collateral). Siehe Shared Masternode, wenn Sie weniger Coins besitzen.
Screenshot: Masternode bereitstellen
Dialoggeführte Bereitstellung eines Masternodes

Masternode-Einrichtung

1. In der Wallet-Software „DMS Core“ auf Ihrem lokalen Computer

  • Sie benötigen in Ihrem Wallet eine DMS-Adresse mit einem Guthaben von mindestens 5.000,1 DMS. Dies ist für den Masternodepfand und die Transaktions-Gebühren erforderlich. Kopieren Sie die Adresse in die Zwischenablage.
  • Wechseln Sie bitte zur Registerseite Masternodes. Falls diese nicht sichtbar ist, wählen Sie zuerst den Menübefehl Einstellungen | Konfiguration und aktivieren Sie Wallet | Masternode Tabulator anzeigen.
  • Klicken Sie auf den Mausschalter Masternode bereitstellen.
  • Die Option Collateral-Transaktion erstellen aktivieren, um die Auszahlungs-Adresse zu erstellen und 5.000 DMS Collateral an diese zu überweisen.
  • Bitte mit Klick auf Ja bzw. Yes bestätigen.
  • Im folgenden Dialog wird die Masternode-IP abgefragt. Geben Sie hier die IPv4 und den Port ein, beispielsweise „12.23.34.45:41319“. Auf OK klicken.
  • Als Guthaben-Adresse fügen Sie die zuvor kopierte Adresse mit min. 5.000,1 DMS ein. Auf OK klicken.
  • Die finale Rückfrage „protx senden“ bestätigen, die Provider-Transaktion wird nun gesendet.
  • Im Bestätigungsdialog markieren Sie Zeige Vorschlag für dms.conf und klicken Sie auf OK.
  • Das letzte Dialogfenster mit dem Inhalt der dms.conf bitte geöffnet lassen oder den Inhalt in eine Textdatei übernehmen.

Öffnen Sie die Github-Website und kopieren Sie den Link zum neuesten Linux-Release (x86_64-linux-gnu) in die Zwischenablage. Dieser wird unten bei „wget“ verwendet.

2. Auf dem VPS

Verbinden Sie sich mit einem SSH-Client zu Ihrem Virtual Private Server und geben Sie folgenden Befehle in die Linux-Konsole ein:

  • mkdir dms
  • cd dms
  • wget https://github.com/Krekeler/documentchain/releases/download/v0.17.0.3/dmscore-0.17.0-x86_64-linux-gnu.tar.gz (die URL durch neuestes Release ersetzen)
    Falls ein Zertifikatfehler auftritt: apt-get install ca-certificates
  • tar xzf dmscore-0.17.0-x86_64-linux-gnu.tar.gz
  • rm dmscore-0.17.0-x86_64-linux-gnu.tar.gz
  • ./dmsd -daemon
  • Einen Moment warten, das Datenverzeichnis ~/.dmscore wird erstellt.
  • killall dmsd
  • Firewall-Status abfragen: ufw status
  • Falls die Firewall aktiviert ist, dann bitte den Port 41319 freigeben: ufw allow 41319/tcp

Die Konfigurationsdatei dms.conf anpassen. Beachten Sie dafür den letzten Dialog im lokalen Wallet: der untere Block ist der Vorschlag für Ihre dms.conf. „rpcuser“ und „rpcpassword“ sollten Sie ändern. „externalip“ ist die IP des VPS gefolgt von einem Doppelpunkt und dem Port 41319. „addnode“ ist möglich, aber nicht erforderlich, weil die Adressen einiger Masternodes als s. g. Seed Nodes für fest kodiert sind.

Beispieldatei:

rpcuser=dmsrpcuser
rpcpassword=MeinPasswort
rpcallowip=127.0.0.1
rpcport=41320
server=1
listen=1
daemon=1
maxconnections=125
masternodeblsprivkey=6948638e769d7a…
externalip=12.23.34.45:41319

  • nano ~/.dmscore/dms.conf
    Als Vorlage können Sie die Beispieldatei in die Zwischenablage kopieren und in nano mit der rechten Maustaste einfügen. Die Datei mit Strg+O speichern und den Editor mit Strg+X schließen. Sie können selbstverständlich auch einen anderen Editor als nano nutzen.
  • Tipp: Downloadmöglichkeit für eine schnellere Synchronisierung der Blockchain.
  • ./dmsd -daemon
  • ./dms-cli getinfo zur Überprüfung, ob der Daemon ausgeführt wird.
  • Der Daemon synchronisiert sich jetzt mit der Blockchain, dies kann einige Zeit in Anspruch nehmen. Anfangs werden nur die Header geladen, Sie werden in den ersten zwei bis drei Stunden keinen Fortschritt bei den geladenen Blöcken sehen. Sie können ./dms-cli mnsync status eingeben, um den Synchronisierungsstatus abzufragen.

 

3. Automatischen Service-Start auf VPS einrichten (optional)

Ihr Provider wird den VPS vermutlich gelegentlich neu starten. Um dmsd anschließend automatisch auszuführen, können Sie eine service unit erstellen oder einen Cron-Job definieren:

  • crontab -e
  • Folgende Zeile hinzufügen:
    * * * * * pidof ~/dms/dmsd || ~/dms/dmsd –daemon

4. fail2ban auf dem VPS installieren (optional)

Aus Sicherheitsgründen sollte fail2ban aktiviert werden. Dies verhindert massenhafte Anmeldeversuche mit zufälligen Kennwörtern:

  • apt install fail2ban
  • nano /etc/fail2ban/jail.conf
  • Passen Sie die unten gezeigte Beispieldatei an und kopieren Sie den Inhalt in den Editor. Speichern und Editor beenden.
  • systemctl restart fail2ban
  • systemctl enable fail2ban

Beispiel fail2ban/jail.local

[sshd]
enabled = true
port = 22
filter = sshd
logpath = /var/log/fail2ban.log
maxretry = 5

 

5. Eventuell Mining

Hat der Rechner mindestens 2 virtuelle CPU und ausreichend Systemressourcen? Falls ja, dann können Sie mit dem Wallet zusätzlich Coins schürfen:

dms/dms-cli setgenerate true 1

Bei einem gemieteten Server stellen Sie sich aber bitte die Frage, ob der Provider damit einverstanden ist. Wenn Sie einen teuren Server mieten, wird das Mining auf 1 oder 2 CPU wahrscheinlich ok sein. Bei einem VPS für 1 Euro pro Monat wird der Provider aber nicht mit einer 100% CPU-Auslastung kalkulieren und den Server sperren. Häufig ist das Mining sogar explizit untersagt.

Tipp „Weak Mining“: Mit dem Parameter setgenerate true -2 oder -3 wird nach jeder Berechnung pausiert. Das System nutzt dann nur einen geringen Teil einer virtuellen CPU.

 

6. Überwachen

Prüfen Sie regelmäßig den Masternode-Status in Ihrem lokalen Wallet. Reaktivieren Sie diese, wenn der Status „POSE_BAN“ ist:

  • Prüfen Sie den VPS, ist dieser online und läuft dmsd (pgrep dmsd eingeben)?
  • Senden Sie eine Provider Update Service Transaction: Im lokalen Wallet mit der rechten Maustaste auf die entsprechende Mastenode-Zeile klicken und den gleichnamigen Menübefehl wählen.

VPS

Für Masternodes geeignete VPS

Einige Erfahrungswerte zur Auswahl eines Servers für Masternodes.

Wir haben einige Server-Anbieter mit Masternodes ausprobiert. Insbesondere natürlich für die Documentchain, während der Planungsphase aber auch mit anderen Altcoins. Grundsätzlich kann man sagen, dass 256 MB RAM nicht ausreichen. Anfangs funktionierten diese noch, mit wachsender Blockchain-Größe gingen sie aber offline. Der Daemon startet kurz, synchronisiert einige Blöcke und wird dann ziemlich schnell wieder beendet.

Systemvoraussetzung ist nach unserer Erfahrung 1 vCPU und 0,5 GB RAM. SSD oder HDD wird meist ab 10 GB angeboten, was vollkommen ausreicht. Wenn man einen günstigen VPS mietet, sollte man darauf achten, dass bei Bedarf eine einfache Upgrade-Möglichkeit mit Beibehaltung der IP möglich ist.

Als Betriebsystem haben wir meist Ubuntu 18.04 oder 20.04 installiert.

 

Getestete VPS

Anbieter VPS ca. 1) ok
deinserverhost.de KVM mit 1 GB RAM € 2,00
ethernetservers.com VPS 0,5 GB RAM $ 1,25
hetzner.com CX11 mit 2 GB RAM € 2,96
hetzner.com CX21 mit 4 GB RAM, 2 vCPU € 5,83
ionos.de Cloud S mit 0,5 GB € 2,00
hostus.us US/EU Special 2 mit 0,7 GB $ 1,33 3)
hostus.us HK AP Special mit 0,5 GB
Hongkong und Singapur
$ 2,91 3)
racknerd.com KVM mit 0,5 GB $ 0,83 3)
Serverdiscounter 2) Virtual Nano mit 0,2 GB € 1,00
strato.de V3 mit 0,5 GB € 1,00
strato.de V30 mit 16 GB RAM, 6 vCPU € 9,00
virmach.com Micro+ mit 0,2 GB RAM $ 1,25
virmach.com Value+ mit 0,5 GB RAM $ 2,00

✔ funktioniert mit Masternode
❌ nicht ausreichend

 

1) Preise pro Monat, die wir bezahlt haben ohne Anspruch auf Vollständigkeit. Für aktuelle Preisinformation siehe Anbieterseite.
2) Startprobleme nach Einrichtung. Abschaltung ohne Vorankündigung wg. nicht zugeordneter Zahlung, obwohl ein Jahr im Voraus gezahlt. Keine Upgrade-Möglichkeit.
3) Sonderpreis bei jährlicher Zahlung über Affiliate-Link. Tipp: Bei anderen Bestellungen können Sie „TOPPROVIDER“ als Rabattcode versuchen.