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

04/2019
TV & Multimedia

Diese Ausgabe als PDF kaufen

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

Stellenmarkt

Neuigkeiten

  • Finger weg

    Ein Temperatursensor verrät, ob Sie einen Gegenstand gefahrlos berühren dürfen. Beim Messen brauchen Sie dabei noch nicht einmal Kontakt zum Objekt.

  • Aus einer Hand

    Um einen Mikrocontroller zu programmieren, genügt ein Raspberry Pi. Wir zeigen, was Sie dazu noch benötigen.

  • Im Gleichtakt

    Synchronisierte Live-Loops und selbst erstellte Funktionen helfen dabei, Sonic Pi wie ein Live-Instrument zu spielen.

  • Mach mal

    Das Ftduino-Modul schlägt die Brücke zu Fischertechnik und ermöglicht es unter anderem, einen Drei-Achsen-Roboter anzusteuern.

  • Eleganter Diener

    Jeden Morgen dieselben Handgriffe, um zu sehen, ob die S-Bahn fährt und wie das Wetter wird? Ein cleverer Infoscreen auf RasPi-Basis automatisiert den Vorgang.

  • Bienenflüsterer

    Bienenzüchter, die ihre Völker besser kennenlernen möchten, müssen die fleißigen Insekten nicht pausenlos stören. Mit einem Raspberry Pi und verschiedenen Sensoren überwachen sie Temperatur, Luftfeuchtigkeit und bald auch das Gewicht des Bienenstocks.

  • Beerige Musik

    Für echten Hi-Fi-Sound braucht es mehr als einen kleinen Bluetooth-Brüllwürfel. Mit Volumio und einem Raspberry Pi rüsten Sie Ihre klassische Hi-Fi-Anlage mit smarten Funktionen auf.

  • Ton ab!

    Auf den ersten Blick erscheint der RasPi zu schwachbrüstig für den Betrieb leistungshungriger DAW-Software. Doch der Schein trügt.

  • Himbeer-TV

    Der DVB TV µHAT rüstet den Raspberry Pi mit einem DVB-T/T2-Tuner auf. Die deutsche TV-Landschaft schränkt dessen Möglichkeiten allerdings ein.

  • Git à la RasPi

    Mit wenigen Handgriffen zum Git-Hoster: Die dezentrale Arbeitsweise von Git erleichtert in Kombination mit der Netzwerkfähigkeit des RasPi das Verwalten von Quellcode.