Unser Haus Unternehmen Docker Swarm-Installation auf einem Thin Client

Docker Swarm-Installation auf einem Thin Client

by Gastautor

Da ich kein sehr großes Budget für mein Homelab habe, ist der HP t730 Thin Client eigentlich perfekt für den Homelab-Einsatz. Zum Glück konnte ich kürzlich bei einer Verlosung von StorageReview einen gewinnen ihr Sub-Reddit. Der t730 verfügt über genügend RAM und CPU, um für viele Anwendungsfälle flexibel genug zu sein, ohne dabei übertrieben zu sein. Ob es darum geht, Pi-Hole zu hosten, es als PfSense-Router/Firewall zu verwenden oder es mit Docker Swarm zu verbinden.

Da ich kein sehr großes Budget für mein Homelab habe, ist der HP t730 Thin Client eigentlich perfekt für den Homelab-Einsatz. Zum Glück konnte ich kürzlich bei einer Verlosung von StorageReview einen gewinnen ihr Sub-Reddit. Der t730 verfügt über genügend RAM und CPU, um für viele Anwendungsfälle flexibel genug zu sein, ohne dabei übertrieben zu wirken. Sei es das Hosten von Pi-Hole, die Verwendung als PfSense-Router/Firewall oder in diesem Fall die Verbindung mit Docker Swarm.

Docker Swarm-Installation

Wenn Sie mit Docker oder Containern als Ganzes nicht vertraut sind, stellen Sie sich diese vielleicht als leichtgewichtige VMs vor, die auf fast allem laufen. Auch wenn dies eine starke Vereinfachung darstellt, liefert es Ihnen genügend Informationen, ohne überwältigend zu wirken. Swarm ist eine Erweiterung von Docker. Es bietet eine einfache und integrierte Möglichkeit, Container zu „orchestrieren“, sie auf mehreren Knoten bereitzustellen, Ressourcen zu verwalten und andere Dinge dieser Art.

In meiner bestehenden Infrastruktur liefen bereits 5 Knoten in Swarm. Vier Raspberry Pi B4 und ein Dell Optiplex 7040. Dies bietet eine hervorragende Basis für den Einstieg. Sie benötigen jedoch nur einen einzelnen Knoten, um diesem Docker Swarm-Tutorial zu folgen. Es sollte angemerkt werden, dass ich diese zwar für so gut wie nichts bekommen habe, sie aber dafür zu finden sind 200 $ oder weniger bei eBay wenn Sie etwas suchen und feilschen.

Docker Swarm installiert das Betriebssystem

Zunächst habe ich die Linux-Distribution meiner Wahl, nämlich Debian Buster, auf dem HP t730 installiert. Als nächstes musste ich das flashen Debian-Installer auf einen USB-Stick. Eine gute Option zum Flashen des Bildes ist Balena Radierer, das kostenlos und einfach zu verwenden ist. Sobald dies erledigt ist, beginnen wir mit dem Installationsprozess.

PS T730Abbildung 1: Einbau der neuen SSD

Zuerst habe ich das 32-GB-SATA-M.2-Laufwerk im t730 durch ein ersetzt 256GB Antrieb. Aber was ich damals nicht wusste, würde irgendwann zu Problemen führen. Sie sehen, einige Firmware-Schnittstellen sind fehlerhaft und funktionieren manchmal nicht mit Laufwerken anderer Hersteller. Das Laufwerk, das ich zufällig installiert habe, ist eines dieser Laufwerke, die nicht funktionieren. Um dies zu umgehen, musste ich bei der Installation von Debian Grub so einstellen, dass es als entfernbar installiert wird. Dies kann je nach installiertem Laufwerk auftreten oder auch nicht.

Denken Sie daran, dass 256 GB für das, was wir heute tun, nicht notwendig sind, ich hatte sie einfach zur Hand. Ich empfehle mindestens 64 GB, aber das kann die Menge an Daten einschränken, die Sie auf dem Laufwerk speichern können.

Nachdem ich das Laufwerk installiert hatte, startete ich den Debian-Installationsbildschirm. Ich habe eine Grundinstallation durchgeführt und die Sprache, das Tastaturlayout usw. ausgewählt. Für die Benutzerkonfiguration mache ich etwas Bestimmtes. Ich gebe für den Root-Benutzer überhaupt kein Passwort ein, dadurch wird das Konto deaktiviert. Und ich erstelle einen neuen Benutzer namens „Administrator“, der ein extrem langes Passwort hat, das ich in einem Passwort-Manager speichere. Dadurch bleibt das System so sicher wie möglich.

Für die Partitionierung habe ich ein recht einfaches Layout gewählt, eine 1-GB-Bootpartition und den Rest des Laufwerks der Root-Partition zugewiesen. Ich habe mich für FAT32 bzw. ext4 für die Dateisysteme entschieden. Aufgrund der Stabilität und Geschwindigkeit bevorzuge ich ext4 gegenüber etwas wie Btrfs, auch wenn es einige der innovativen Funktionen der neuen Dateisysteme vermissen lässt.

Als ich den Bildschirm zum Auswählen der Basispakete erreichte, habe ich alles außer dem OpenSSH-Server abgewählt. Mein Grund dafür ist, dass ich möchte, dass das Basissystem so leicht wie möglich ist und dass es auch Headless ist, da es keine grafische Benutzeroberfläche hat. Um dieses Tutorial abzuschließen, benötigen Sie jedoch lediglich den OpenSSH-Server. Sie können alle zusätzlichen Pakete installieren, die Sie benötigen.

Abbildung 2: Pakete werden installiert

Wenn Sie auf den zuvor erwähnten EFI-Firmware-Fehler stoßen, finden Sie im Debian-Wiki eine gute Anleitung dazu Wie man es löst. Nachdem Grub installiert ist, starten wir neu und ziehen den USB-Stick ab. Wenn alles gut geht, starten Sie ein TTY oder eine GUI, je nachdem, was Sie zur Installation ausgewählt haben.

Konfiguration nach der Installation

Nachdem die Installation abgeschlossen ist, beginnen wir mit der Konfiguration des Systems. Ich habe eine geschrieben ansible Spielbuch das diesen Prozess automatisiert. Um diese Anleitung einfach zu halten, führen wir die Befehle manuell durch.

# Dadurch werden Pakete installiert, die zum Abschließen weiterer Schritte erforderlich sind. sudo apt Updatesudo apt install gnupg ca-certificates apt-transport-https curl lsb-release -y# Dies fügt den Schlüssel hinzu, den Apt benötigt, um die Signaturen auf den Docker-Paketen zu überprüfencurl -fsSL https://download .docker.com/linux/debian/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# Und um das Repository hinzuzufügen, das Docker installiert, führen Sie Folgendes aus:echo „deb [arch=amd64 signiert von=/usr/share/keyrings/“ docker-archive-keyring.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stabil“ | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Sobald dies erledigt ist, müssen wir Docker selbst installieren und den Dienst aktivieren.

sudo apt installieren docker-ce

sudo systemctl enable –now docker

Jetzt sind wir bereit, Docker zum Ausführen von Diensten zu verwenden!

Verwendung von Docker Swarm auf dem HP t730

Wenn Sie Swarm zum ersten Mal verwenden, müssen Sie den Schwarm initialisieren. Gehen wir die folgenden Befehle durch. Wenn Sie bereits einen Schwarm haben, überspringen Sie diesen Schritt.

sudo docker swarm init

Wenn Sie überprüfen möchten, ob es funktioniert hat, fügen Sie diesen Befehl in Ihr Terminal ein:

if [ „$(sudo docker info | grep Swarm | sed 's/Swarm: //g')“ == „inactive“ ]; then echo false;sonst echo true;fi

Wenn Ihr Host im Swarm-Modus läuft, sollte dieser Befehl „true“ zurückgeben.

Durchführung unseres ersten Gottesdienstes

Mit Swarm gibt es zwei Möglichkeiten, Dienste zu erstellen.

  1. Docker-Dienst erstellen das ist ähnlich Andocklauf
  2. Docker-Stack bereitstellen das ist ähnlich Docker-komponieren

Im Allgemeinen möchten Sie Docker Stack Deploy verwenden, da Sie die Stacks einfach reproduzieren können.

Aber nur um zu überprüfen, ob es funktioniert, ist die Verwendung von Docker Service Create in Ordnung.

sudo docker service create -p 3000:80 httpd

Es kann einige Zeit dauern, bis der Befehl abgeschlossen ist, aber nachdem der Befehl ausgeführt wurde, können Sie zur IP des Knotens an Port 3000 wechseln. Wenn Sie Ihre IP nicht kennen, führen Sie hostname -I aus. In meinem Fall musste ich gehen 192.168.19.73:3000. Sie sollten einen Bildschirm mit der Meldung „Es funktioniert!“ sehen.

Schließen

Der HP t730 ist ein tolles kleines Gerät für Anfänger oder erfahrene Heimwerker, er unterstützt viele verschiedene Anwendungsfälle und ist ziemlich leistungsstark was Sie bezahlen, was in meinem Fall nichts weiter als die 15 $ für den Versand war (danke StorageReview!). Ich hoffe, dass jeder von diesem Artikel etwas mitbekommen hat, sei es, dass er etwas über neue Technologien lernt oder sich dazu inspirieren lässt, ein eigenes Homelab zu eröffnen.

-Ethan Edwards

HP T730 Thin Clients bei eBay

Beteiligen Sie sich an StorageReview

Newsletter | YouTube |  LinkedIn | Instagram | Twitter | Facebook | TikTokRSS Feed