Experimente zu Clustering und Lastverteilung mit dem RasPi

© Ariwasabi, 123RF

Eine Handvoll Beeren

Der Raspberry Pi eignet sich vorzüglich als Server fürs LAN. Koppeln Sie mehrere der Geräte zusammen, haben Sie im Handumdrehen einen Cluster.

README

Um zu verstehen, wie ein Cluster mit vorgeschaltetem Load Balancer funktioniert, brauchen Sie kein Rechenzentrum zu mieten. Dieser Workshop zeigt, wie Sie die Aufgabe mit vier RasPis und einem kostengünstigen Root-Server meistern.

Haben Sie die Möglichkeiten des Raspberry Pi durch ein Projekt ausgereizt, lohnt es sich unter Umständen, mehrere Geräte dieses Typs zu einem Cluster zusammenzuschließen: Das schafft neue Ressourcen und ermöglicht es, im Kleinen die Techniken zum Aufbau eines Rechnerverbunds zu studieren.

Der Cluster im Beispiel besteht aus drei RasPis mit GlusterFS [1], die alle lokal laufen (Abbildung 1). Das bündelt beim Lesen die Bandbreite der drei Geräte. Im nächsten Schritt kommt dann echte Geo-Replikation zum vierten Raspberry Pi dazu, den die anderen nur über das Internet erreichen.

Abbildung 1: Um zu verstehen, wie ein Cluster inklusive Load Balancer funktioniert, eignen sich eine Handvoll RasPis ganz ausgezeichnet.

Danach erhalten die einzelnen Knoten jeweils einen Webserver. Im Abschluss übernimmt ein weiterer Webserver die Aufgabe, die Last zu verteilen, um die Ressourcen des Clusters im Netz bereitzustellen.

Zuerst einmal stellt sich jedoch die Frage, was genau ein Cluster eigentlich ist. Grob gesagt kommt ein solcher Verbund von Rechnern meist zum Einsatz, um sich vor einem Ausfall zu schützen oder die Performance eines Dienstes zu verbessern.

Vorbereitung

Wenn Sie einen RasPi frisch aufsetzen, expandieren Sie ausnahmsweise die Dateisysteme nicht: Sie brauchen in diesem Fall den freien Platz, um eine Partition für das GlusterFS anzulegen. Mit raspi-config (advanced options) geben Sie den Geräten erst einmal Namen wie cluster01 bis cluster04. Dabei arbeiten cluster01 bis cluster03 als lokale Server, cluster04 ist der entfernte Rechner.

Es ist wichtig, dass alle Knoten im Cluster in derselben Zeitzone arbeiten. Diese stellen Sie ebenfalls in den erweiterten Optionen ein. Vergessen Sie zudem nicht, die Passwörter zu ändern. Nach diesen Einstellungen starten Sie die Mini-PCs neu, damit die Änderungen am Hostnamen Wirkung zeigt.

Netzwerk einrichten

Jetzt gilt es, im Netzwerk für stabile Verhältnisse zu sorgen. Eine Möglichkeit besteht darin, feste IP-Adressen zu vergeben und danach das Auflösen der Namen über /etc/hosts zu erledigen. Verschiedene Router erlauben es, einer bestimmten MAC-Adresse immer dieselbe IP-Adresse zuzuordnen. Einige Modelle ermöglichen es zusätzlich, Namen mittels DNS aufzulösen.

Das Modell im Test verfügte nicht über eine derartige Funktion. Daher blieb hier nur die Variante, jeder MAC-Adresse immer dieselbe IP-Adresse zuzuordnen und die lokale Datei /etc/hosts zum Auflösen der Namen zu verwenden. Bei nur via Internet zu erreichenden Rechnern funktioniert ohnehin nur diese Methode. Listing 1 zeigt ein Beispiel für eine entsprechende Datei, die Sie auf allen Rechnern verteilen müssen, die am Cluster teilnehmen.

Listing 1

 

127.0.0.1     localhost
127.0.1.1     lin01
192.168.2.5   cluster01
192.168.2.7   cluster02
192.168.2.6   cluster03Externe IP    cluster04

Die Client-Rechner, die später das Cluster-Dateisystem verwenden sollen, benötigen ebenfalls die passenden Einträge. Der Rechner cluster04 bildet eine Ausnahme: Er ist nicht in der Lage, die Maschinen cluster01 bis cluster03 über das Netz zu erreichen.

Jetzt sollte es möglich sein, zu allen RasPis per SSH Verbindung aufzunehmen. Falls das nicht klappt, kontrollieren Sie als Erstes noch einmal die Konfiguration des Netzwerks.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 7 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Aktuelle Ausgabe

06/2019
Home Improvement

Diese Ausgabe als PDF kaufen

Preis € 9,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Verschlungene Pfade

    Mit Schleifen, Fallunterscheidungen und Funktionen programmieren Sie komplexe Skripte auf einfache und elegante Weise.

  • Extrem genau

    Mit einem A/D-Wandler messen Sie bei Bedarf Spannungen. Der MCP3424 macht dabei konstruktionsbedingt eine gute Figur.

  • Verbindungsaufnahme

  • Süßer Wecker

    Dem RasPi fehlen sowohl eine Echtzeituhr als auch ein BIOS, ein zeitgesteuertes Wecken erfordert also Zusatzkomponenten. Hier springt der Witty Pi Mini in die Bresche, ein µHAT von UUGear.

  • Windows to go

    Das Aufsetzen zuverlässiger und sicherer Remote-Desktop-Lösungen erfordert einiges Know-how. Die RasPi-basierte Pinbox von Pintexx reduziert den Konfigurationsaufwand auf ein Minimum.

  • Prima Klima

    In Museen ist es Pflicht, zu Hause nützlich: das permanente Prüfen und zentrale Erfassen der Feuchtigkeit und Temperatur in Räumen.

  • Auf einen Blick

    Ein maßgeschneiderter Infoscreen auf RasPi-Basis mit stromsparendem E-Ink-Display zeigt Termine, Bilder, Mitteilungen und Wetterinformationen an.

  • Sanft berührt

    Mit einem RasPi und dem Controllermodul PiXtend lassen sich mühelos Roboterarme ansteuern und deren Bewegung automatisieren.

  • Popcorn-Kino

    Mit Kodi 18.0 unterstützt LibreELEC 9.0 jetzt die von vielen Streaming-Diensten genutzte DRM-Verschlüsselung. Die Integration von Netflix, Amazon und Co. erfordert allerdings Handarbeit.

  • So nah und doch so fern

    Der RasPi kommt häufig als Server oder Steuerrechner für spezielle Zwecke zum Einsatz. Mit Anydesk erhalten Sie dazu eine Steuersoftware mit grafischer Oberfläche.