Inhaltsverzeichnis:

Raspberry Pi 3 "Bramble": 5 Schritte
Raspberry Pi 3 "Bramble": 5 Schritte

Video: Raspberry Pi 3 "Bramble": 5 Schritte

Video: Raspberry Pi 3
Video: Assemble Bramble - Intro to Raspberry Pi-Cluster 2024, November
Anonim
Raspberry Pi 3
Raspberry Pi 3

Bereitstellung eines Apache2-Webservers auf einem skalierbaren Raspberry Pi3 Model B "bramble" über einen HAProxy-Load-Balancer!

Ich betreibe viel Webentwicklung und habe viel über das Einrichten von Georedundanzen und Load-Balancern gelesen, also dachte ich, es wäre an der Zeit, alles selbst einzurichten. Ich hatte den Unmut, dass ein Server ausfällt und wollte verhindern, dass dies in Zukunft noch einmal passiert!

Außerdem sieht es einfach cool aus.

Schritt 1: Erste Schritte

** AKTUALISIEREN **

**************************************************************************************************************************

Ich habe dieses Instructable tatsächlich etwas einfacher gemacht. Ich habe das Repo auf Github umgestaltet, um den HAProxy-Loadbalancer automatisch auf Ihrem ausgewählten Pi zu installieren, zu konfigurieren und bereitzustellen! Weniger Code, weniger Bearbeitung, weniger Fehler und mehr Spaß!

**************************************************************************************************************************

Gehen Sie zu https://www.raspberrypi.org/downloads/raspbian/ und laden Sie eine neue Kopie von Raspbian Stretch Lite herunter.

Extrahieren Sie die. ZIP-Datei und schreiben Sie die.img-Datei auf jede MicroSD-Karte für jeden Pi in Ihrem Cluster. OSX-Benutzer, ein großartiges Tool dafür ist

Nachdem Sie die.img-Datei auf die MicroSD-Karte geätzt haben, navigieren Sie in einem neuen Finder- oder Datei-Explorer-Fenster zur Karte - diese sollte standardmäßig boot heißen. Erstellen Sie darauf ein neues Feld mit dem Namen SSH. Stellen Sie sicher, dass Sie nichts für eine Dateierweiterung eingeben. Dadurch wird SSH auf Ihrem Rpi3 aktiviert. Werfen Sie die Karte aus und legen Sie sie in Ihren Pi ein. Wiederholen Sie diesen Schritt für die verbleibenden 2 Pis (oder wie viele Sie am Ende verwenden).

Schritt 2: Einrichten Ihrer Hardware

Einrichten Ihrer Hardware
Einrichten Ihrer Hardware
Einrichten Ihrer Hardware
Einrichten Ihrer Hardware

In diesem Beispiel wird von einem Rpi-Cluster mit 3 Knoten ausgegangen, und die Geräteliste ist unten:

  1. 5-Port-Ethernet-Switch x 1

      https://www.amazon.ca/gp/product/B00QR6XFHQ/ref=oh…

  2. 5-Port-USB-Netzteil x 1 **

      https://www.amazon.ca/gp/product/B017R9IJTU/ref=oh…

  3. Ethernet-Kabel x 4

      https://www.amazon.ca/gp/product/B01J8KFTB2/ref=oh…

  4. USB 2. zu Micro USB B Stromkabel x 3

      https://www.amazon.ca/gp/product/B019U0V75W/ref=oh…

  5. Raspberry Pi3 Modell B x 3

      https://www.amazon.ca/gp/product/B01CD5VC92/ref=od…

  6. Kühlkörper x 6

      https://www.amazon.ca/gp/product/B010ER7UN8/ref=od_aui_detailpages00?ie=UTF8&psc=1

* Es ist wichtig, dass Sie ein USB-Netzteil verwenden, das in der Lage ist, die Raspberry Pis mit der erforderlichen Mindestbetriebsspannung zu versorgen

  • Verbinden Sie das x1-Ethernet-Kabel von Ihrem Router mit dem Ethernet-Switch.
  • Verbinden Sie das x1-Ethernet-Kabel von Ihrem Ethernet-Switch mit jedem Ihrer Pis
  • Verbinden Sie x1 USB-to-MicroUSB von jedem Ihrer Pis mit dem USB-Netzteil.
  • Schließen Sie alles an und sehen Sie sich die blinkenden Lichter an

Ist zwar nicht nötig, aber ich wollte das Gestrüpp möglichst cool aussehen lassen und alles etwas ordentlicher halten. Ich habe mich entschieden, 3 dieser stapelbaren Koffer von Amazon abzuholen. Ich habe es nicht in dieses anweisbare aufgenommen, da es _technisch_ nicht erforderlich ist, aber aus ästhetischen Gründen würde ich empfehlen, einige abzuholen.

www.amazon.ca/gp/product/B07BNDFXN9/ref=oh…

** Bonuspunkte **

Ich entschied mich für zusätzliche Nerd-Punkte und wollte eine bessere visuelle Anzeige davon, mit welchem Server ich interagierte. Ich hatte ein paar Ersatz-Protoboards herumliegen und eine Reihe von LEDs und Widerständen, also habe ich schnell einige Boards zusammengehackt, um sie über die GPIO-Pins des Pi zu legen. Idealerweise hätte ich einige Buchsenleisten verwendet, aber ich hatte nur männliche, also musste ich einige Überbrückungsdrähte zurechtschneiden.

Wenn Sie auch diesen Weg gehen möchten (weil LEDs großartig sind), sollten Sie diesem Tutorial unter folgen:

thepihut.com/blogs/raspberry-pi-tutorials/…

Schritt 3: Konfigurieren Sie Ihre Pis

Sie müssen die IP-Adressen jedes Pis in Ihrem lokalen Netzwerk kennen. Wenn Sie ein CLI-Ninja sind, sollte dies kinderleicht sein. Für alle anderen können Sie einen kostenlosen IP-Scanner wie SuperScan (OSX) verwenden. Schreiben Sie die IP-Adressen auf.

Kopieren Sie als Nächstes Ihren öffentlichen SSH-Schlüssel auf jeden Ihrer Pis, indem Sie den folgenden Befehl von Ihrem Terminal aus verwenden:

ssh-copy-id

Beispiel::

ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

Sie haben keinen SSH-Schlüssel? Kein Problem! Renn einfach:

ssh-keygen

in Ihrem Terminal und folgen Sie den Anweisungen. Wir sind fast da!

Schritt 4: Ansible installieren

Wenn Sie es bis hierher geschafft haben, herzlichen Glückwunsch! Sie sind nur wenige Minuten davon entfernt, Ihr eigenes verteiltes Computernetzwerk zu betreiben.

Auf Ihrem lokalen Computer / Laptop sollten Sie Ansible über die Befehlszeile installieren. Für Mac-Benutzer gilt:

sudo pip install ansible

Alle anderen finden Sie unter https://docs.ansible.com/ansible/latest/installat… für Ihr Betriebssystem.

Jetzt möchten Sie dieses Repository in einen Ordner klonen ODER die ZIP-Datei herunterladen und in einen Ordner auf Ihrem lokalen Computer extrahieren.

github.com/Jtilley84/ansible-apache2-webse…

In diesem Repository sehen Sie eine hosts.ini-Datei. Öffnen Sie es in Ihrem bevorzugten Texteditor (oder nano oder vim):

[Lastenausgleicher]

pi-headnode ansible_host=192.168.0.228 # <--- Ändern Sie dies in die IP-Adresse des Pi, auf dem Sie HAProxy verwenden möchten.

[Knoten]

node2 ansible_host=192.168.0.16 # <--- Ändere dies in die IP-Adresse deines zweiten Pi

node3 ansible_host=192.168.0.58 # <--- Ändere dies in die IP-Adresse deines dritten Pi

Das ist es! Um das Playbook auszuführen, navigieren Sie zum Basis-Repository-Ordner und geben Sie Folgendes in Ihr Terminal ein:

ansible-playbook playbook.yml

Schritt 5: Herzlichen Glückwunsch

Image
Image
Herzliche Glückwünsche!!
Herzliche Glückwünsche!!

Sie haben gerade Computermagie möglich gemacht. Herzliche Glückwünsche!

Dies ist nur ein Proof of Concept. In diesem Repository überträgt das Playbook eine eindeutige index.html-Datei an jeden der Knoten, damit Sie visuell debuggen können, ob es funktioniert oder nicht. Für einen Produktionsserver möchten Sie natürlich das Playbook bearbeiten, um Ihre Site bereitzustellen.

Wenn Sie Fragen oder Kommentare haben, würde ich mich freuen, sie zu hören! Bitte checken Sie das Github-Repo aus und teilen Sie es mit! Ich würde gerne sehen, was dir einfällt.

Empfohlen: