Diesen Blog durchsuchen

GoShimmer Tutorial für das Coordicide alphanet

Hallo liebe Iotaner,

am 03.02.2019 wurde ein weiterer Meilenstein für ein Koordinator freies IOTA-Netzwerk durch die Veröffentlichung von GoShimmer gelegt. Damit nähern wir uns bereits in großen Schritten der wichtigen Eliminierung des Single Point of Failures. Laut der neuen Roadmap war der geplante Release von GoShimmer erst für das zweite Quartal 2020 vorgesehen. Aber aufgrund des großen Erfolgs des Hornet Teams, welches sehr eng mit dem GoShimmer Team zusammenarbeitet, konnte GoShimmer bereits schneller als geplant veröffentlicht werden. Wir sehen, IOTA ist richtig "on fire". Das sind fantastische Entwicklungen und wir können den ersten Prototypen gleich selbst testen.

Die erste Version beinhaltet gleich vier wichtige Kernfeatures:

Autopeering: automatische Peer-Erkennung und entfernungsbasierte Nachbarschaftsauswahl

Gossip: Netzwerkschicht zum Senden und Empfangen neuer Transaktionen

Ratenkontrolle: eine zeitweilige, aber noch nicht auf der Grundlage von Mana basierende Ratenkontrolle, zur Transaktionsbegrenzung

API: Schnittstelle zum Senden von Daten (0-Wert) Transaktionen und zur Abfrage des Tangle

So dann legen wir mal los und bringen GoShimmer auf dem Raspberry Pi 4 zum Laufen ;)



Inhaltsverzeichnis:

"1. Download und Installation der Ubuntu Server Version -19.10.1-preinstalled-server-arm64+raspi3 (RP3+RP4)

"2. Ermittlung der lokalen IP-Adresse des Raspberry Pi's / Erster Login mittels des Putty-Client / Änderung des Standardpassworts

"3. Aktualisierung des Systems und Installation der benötigten Softwarekomponenten für GoShimmer

"4. Installation von GoShimmer

"5. Zugriff auf das Dashboard und Einrichtung eines Services für GoShimmer


1. Download und Installation der Ubuntu Server Version -19.10.1-preinstalled-server-arm64+raspi3 (RP3+RP4)


Als erstes laden wir uns das nachfolgende Betriebssystem für den Raspberry Pi herunter. Klickt dazu einfach auf den nachstehenden Downloadlink.

Download Ubuntu Server für den Raspberry Pi 19.10.1 arm64 (64bit)


Entpackt nach dem Download das komprimierte Image mit Winrar oder ein Entpackungsprogramm Eurer Wahl.


Flasht danach Eure SD Karte mithilfe des Balena Etcher Tools.

https://www.balena.io/etcher/

Klickt dazu auf "Select Image" und wählt das zuvor entpackte Ubuntu Server OS 19.10.1 aus. Klickt nach der Auswahl auf Flash und wartet den Flashvorgang und den daran anschließenden Validierungsprozess ab, bis die Anzeige bei 100 % steht und die microSD erfolgreich unmounted wurde.

Der gesamte Vorgang ist dann abgeschlossen. wenn Euch das Fenster "Flash Complete" angezeigt wird.


Danach wird die geflashte microSD Karte wieder in den Raspberry gesteckt und der Raspberry das erste Mal gestartet. ;)

Wichtig: Schließt unbedingt ein LAN-Kabel zur Herstellung einer Internetverbindung an Euren Raspi an!

2. Ermittlung der lokalen IP-Adresse des Raspberry Pi's / Erster Login mittels des Putty-Client / Änderung des Standardpassworts


Nachdem Ihr Euren Raspberry das erste Mal mit der Ubuntu Server Version 19.10.1 gestartet habt, benötigt Ihr für den nachfolgenden Login mittels Putty Eure lokale IP-Adresse des Raspberry's.
Falls Ihr den Putty-Client noch nicht installiert habt, könnt Ihr Euch diesen kostenfrei herunterladen. Klickt dazu einfach auf den nachfolgenden Link und wählt die entsprechende Version für euer System aus.

https://www.putty.org/

Die lokale IP-Adresse des Raspberry Pi's könnt Ihr der Fritzbox entnehmen. Öffnet einen Browser und gebt in die Adresszeile einfach "fritz.box" ein. Loggt Euch anschließend mit Eurem Kennwort ein und navigiert zum Netzwerk. --> Klickt dazu auf: "Heimnetz-->Netzwerk"

Ihr findet die lokale IP-Adresse unter dem Namen ubuntu.


Nachdem Ihr Euch die lokale IP-Adresse notiert habt, kümmern wir uns noch um die benötigte Portfreigabe für die GoShimmer Node. Klickt nun innerhalb des Fritzbox Menüs auf --> Internet --> Freigaben und dann unten rechts auf "Gerät für Freigaben hinzufügen".


Wählt nun unter "Gerät" Euren Raspberry Pi aus, welchen Ihr anhand der soeben notierten IP-Adresse und des Namens: "ubuntu" eindeutig identifizieren könnt.


Klickt nun unten rechts auf "Neue Freigabe" und tragt nun den Port 14666 und das Protokoll TCP ein. Wichtig: Führt diesen Schritt auch für den Port 14626 TCP und UDP aus.



Danach verbinden wir uns mittels des Putty-Client unter Eingabe Eurer lokalen IP-Adresse des Raspberry's und mit dem Standardbenutzernamen "ubuntu" und dem Standardpasswort "ubuntu" erstmalig über SSH mit dem Raspberry Pi.



Es erscheint zunächst eine Warnung, in der Ihr dazu aufgefordert werdet, ein eigenes Passwort zu vergeben.


An dieser Stelle sieht das dann folgendermaßen aus:
ubuntu login: ubuntu
Password: ubuntu

Changing password for ubuntu

Current UNIX password: ubuntu
new UNIX password: Euer Eigenes ;)
retype UNIX password: Euer Eigenes ;)

Wenn Ihr die Eingaben mit der Enter-Taste bestätigt, wird die Verbindung zu Putty beendet und Ihr müsst Euch nun erneut mit dem Standardbenutzernamen "ubuntu" sowie Eures selbst vergebenen Passworts via Putty einloggen.



3. Aktualisierung des Systems und Installation der benötigten Softwarekomponenten für GoShimmer


Jetzt bereiten wir unser Betriebssystem bzw. den Raspberry für den Betrieb von GoShimmer vor. Dazu aktualisieren wir zunächst unser Betriebssystem mit den Befehlen:

sudo apt-get update


und

sudo apt-get upgrade

Die Frage: Do you want to continue? Bestätigen wir mit y. Das Ganze dauert ca. 10 min.


Nach der Aktualisierung des Systems rüsten wir ein paar benötigte Softwarekomponenten wie Go und den GCC Compiler nach:

sudo snap install go --classic


Der Abschluss der Installation von Go wird uns mit: "go 1.13.7 from Michael Hudson-Doyle (mwhudson) installed" bestätigt.

Danach besorgen wir uns noch den GCC Compiler welcher u.a. hier enthalten ist:

sudo apt install build-essential

Die Frage: Do you want to continue? Bestätigen wir wieder mit y.


Nach der umfangreichen Systemaktualisierung und der Installation der Softwarekomponenten Go und des GCC-Compilers, starten wir unser System einmal mit dem Befehl:

sudo reboot

neu, getreu dem Motto: reboot tut gut ;)

4. Installation von GoShimmer


Jetzt, nachdem alle vorbereitenden Maßnahmen durchgeführt wurden, können wir uns der Installation von GoShimmer widmen.

Dazu laden wir uns die GoShimmer Software mit dem Befehl:

sudo git clone https://github.com/iotaledger/goshimmer.git

herunter.



Wechselt ins GoShimmer Verzeichnis mit:

cd goshimmer



...und führt hier den Befehl:

sudo go build -o shimmer

aus. Damit wird der GoShimmer Code erstmal kompiliert, d.h. in eine ausführbare Maschinensprache übersetzt.



Wenn alles erfolgreich kompiliert wurde, dann solltet Ihr die grüne ausführbare "Shimmer" Datei sehen.


5. Zugriff auf das Dashboard und Einrichtung eines Services für GoShimmer


Damit wir das GoShimmer Dashboard nach dem Start der GoShimmer Node über die lokale IP-Adresse des Raspberry's von einem Browser Eures Rechners oder Tablets aufrufen können, müssen wir noch die lokale IP Adresse des Raspberry's (die Ihr Euch ja notiert habt ;)) in die json.config File eintragen.

Öffnet die Datei mit dem in Linux integrierten Nano-Texteditor:

sudo nano config.json



Scrollt nun mit der unteren Pfeiltaste auf der Tastatur runter bis Ihr die Zeile "Dashboard" erreicht.


Löscht die Localhost-Adresse: "127.0.0.1" und tragt an dieser Stelle Eure lokale IP-Adresse des Raspberry's ein.


Speichert die vorgenommenen Änderungen mit Strg+o und Enter ab und verlasst die Datei mit Strg+x.

Jetzt benötigen wir nur noch einen Service für die GoShimmer Node, damit die Node nach dem beenden von Putty weiterläuft.

Wir erstellen zunächst eine leere Datei, in welche wir die nachfolgenden Ausführungsbefehle hineinkopieren.

sudo nano /lib/systemd/system/shimmer.service

Auszuführender Code:

[Unit]
Description=Goshimmer
After=network-online.target

[Service]
WorkingDirectory=/home/ubuntu/goshimmer
ExecStart=/home/ubuntu/goshimmer/shimmer
ExecReload=/bin/kill -HUP $MAINPID
TimeoutSec=infinity
KillMode=process
Restart=on-failure
RestartSec=100
Type=simple
User=ubuntu
Group=ubuntu
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=shimmer


[Install]
WantedBy=multi-user.target



Danach speichern wir die Änderung in der File mit "Strg+o und Enter" ab und verlassen die Datei mit "Strg+x".

Anschließend muss der Service noch aktiviert und die Node darüber gestartet werden.
Gebt dazu hintereinander die folgenden Befehle ein:

sudo systemctl daemon-reload
sudo systemctl enable shimmer.service
sudo service shimmer start

Generell könnt Ihr nun mit den folgenden Steuerungsbefehlen arbeiten:
sudo service shimmer stop
sudo service shimmer start
Um den Livelog aufzurufen:

sudo journalctl -u shimmer -f

Den Livelog könnt Ihr wieder mit Strg+c verlassen.

Nach dem Start der Node, könnt Ihr auch sehr bequem auf das Dashboard über Euer lokales Netzwerk zugreifen, indem Ihr in Euren Browser die lokale IP Adresse in Verbindung mit dem Port 8081 eintippt.
BeispieL: 192.168.178.116:8081



Wenn Ihr eine Live-Visualisierung des GoShimmer Netzwerks sehen wollt, dann besucht doch einfach mal die Seite:

http://ressims.iota.cafe/

Update: Wenn Ihr Eure eigene Node in dem Netzwerkgewirr auffinden wollt, dann müsst Ihr zusätzlich noch einen weiteren Port in der Fritzbox freigeben: Port 188 (TCP).

Wichtig: Stoppt nach der Portfreigabe einmal GoShimmer und startet GoShimmer erneut.



Danach könnt Ihr Eure Node ID dem Dashboard entnehmen...

und auf der Seite oben rechts (blauer Pfeil einkopieren und Enter drücken)



Der blaue Punkt stellt Eure Node im Netzwerk dar und alle anderen sind Eure Nachbarn.
Falls Ihr Fragen habt oder mal nicht weiter kommt, werdet Ihr jederzeit gerne durch die Tanglebayaner in der Telegram Gruppe unterstützt:

Tangle Bay Telegram Gruppe

Weiteren professionellen Support findet Ihr natürlich auch auf der Community Plattform von einfachiota.de, welche Ihr unter der folgenden Adresse erreicht.

https://community.einfachiota.de/

Ich würde mich sehr freuen, Euch dort begrüßen zu dürfen ;) Schaut einfach mal rein.

Somit sind wir am Ende des GoShimmer Tutorials angekommen, welches ich diesmal mit den folgenden Worten beenden möchte: Be a part of the upcoming revolution!

Euer PIOTA

Kommentare

Kommentar posten

Beliebte Posts aus diesem Blog

HORNET Full-Node Installations Tutorial - The community driven iota node

Tutorial zur Verwendung des Seed Migrations Tools