Table des matières:

Raspberry Pi 3 "Bramble": 5 étapes
Raspberry Pi 3 "Bramble": 5 étapes

Vidéo: Raspberry Pi 3 "Bramble": 5 étapes

Vidéo: Raspberry Pi 3
Vidéo: Single-node Kubernetes Clusters Using K3s with Benefits of GitOps • Lasse Højgaard • GOTO 2021 2024, Octobre
Anonim
Framboise Pi 3
Framboise Pi 3

Déploiement d'un serveur Web Apache2 sur une "ronce" Raspberry Pi3 modèle B évolutive via un équilibreur de charge HAProxy !

Je fais beaucoup de développement Web et j'ai beaucoup lu sur la configuration des géo-redondances et des équilibreurs de charge, alors j'ai pensé qu'il était temps que je tente de tout configurer moi-même. J'ai eu le mécontentement d'avoir un serveur en panne et je voulais éviter que cela ne se reproduise à l'avenir !

En plus, ça a l'air cool.

Étape 1: Mise en route

** METTRE À JOUR **

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

En fait, j'ai rendu ce Instructable un peu plus facile. J'ai refactorisé le dépôt sur Github pour installer, configurer et déployer automatiquement l'équilibreur de charge HAProxy sur le Pi de votre choix ! Moins de code, moins d'édition, moins de risques d'erreur et plus de chances de s'amuser !

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

Rendez-vous sur https://www.raspberrypi.org/downloads/raspbian/ et téléchargez une nouvelle copie de Raspbian Stretch Lite.

Extrayez le fichier. ZIP et écrivez le.img sur chaque carte MicroSD pour chaque Pi de votre cluster. Utilisateurs d'OSX, un excellent outil pour cela est

Après avoir gravé le.img sur la carte MicroSD, accédez à la carte dans une nouvelle fenêtre du Finder ou de l'Explorateur de fichiers - cela devrait être nommé boot par défaut. Sur ce, créez un nouveau fichier nommé SSH. Assurez-vous de ne rien mettre pour une extension de fichier. Cela activera SSH sur votre Rpi3. Éjectez la carte et placez-la dans votre Pi. Répétez cette étape pour les 2 Pi restants (ou quel que soit le nombre que vous finissez par utiliser).

Étape 2: Configuration de votre matériel

Configuration de votre matériel
Configuration de votre matériel
Configuration de votre matériel
Configuration de votre matériel

Cet exemple suppose un cluster Rpi à 3 nœuds et la liste des équipements est ci-dessous:

  1. Commutateur Ethernet 5 ports x 1

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

  2. Adaptateur secteur USB 5 ports x 1 **

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

  3. Câbles Ethernet x 4

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

  4. Câbles d'alimentation USB 2. vers Micro USB B x 3

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

  5. Raspberry Pi3 Modèle B x 3

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

  6. Dissipateurs thermiques x 6

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

* Il est important que vous utilisiez un adaptateur secteur USB capable de fournir aux Raspberry Pi leur tension de fonctionnement minimale requise

  • Connectez le câble Ethernet x1 de votre routeur au commutateur Ethernet.
  • Connectez le câble Ethernet x1 de votre commutateur Ethernet à chacun de vos Pi
  • Connectez x1 USB-to-MicroUSB de chacun de vos Pi à l'adaptateur d'alimentation USB.
  • Branchez le tout et regardez les lumières clignotantes

Bien que ce ne soit pas nécessaire, mais je voulais que la ronce ait l'air aussi cool que possible et que tout soit un peu plus net. J'ai décidé de récupérer 3 de ces étuis empilables sur Amazon. Je ne l'ai pas inclus dans cette instructable car ce n'est _techniquement_ pas requis, mais pour des points d'esthétique, je recommanderais d'en ramasser.

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

** Points bonus **

J'ai opté pour des points de nerd supplémentaires et je voulais une meilleure indication visuelle du serveur avec lequel j'interagissais. J'avais des protoboards de rechange et un tas de LED et de résistances, alors j'ai rapidement piraté quelques cartes pour les poser sur les broches GPIO du pi. Idéalement, j'aurais utilisé des en-têtes femelles, mais je n'avais que des mâles, j'ai donc dû couper des câbles de démarrage.

Si vous souhaitez également emprunter cette voie (parce que les LED sont géniales), vous voudrez suivre ce didacticiel à l'adresse:

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

Étape 3: Configurez vos Pi

Vous aurez besoin de connaître les adresses IP de chacun des Pi sur votre réseau local. Si vous êtes un ninja CLI, cela devrait être facile. Pour tous les autres, vous pouvez utiliser un scanner IP gratuit, tel que SuperScan (OSX). Notez les adresses IP.

Ensuite, copiez votre clé publique SSH sur chacun de vos Pi en utilisant la commande suivante depuis votre terminal:

ssh-copy-id

Exemple::

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

Vous n'avez pas de clé SSH ? Aucun problème! Exécutez simplement:

ssh-keygen

dans votre terminal et suivez les instructions. Nous y sommes presque!

Étape 4: Installez Ansible

Si vous êtes arrivé jusqu'ici, félicitations ! Vous n'êtes qu'à quelques minutes d'exploiter votre propre réseau informatique distribué.

Sur votre ordinateur / ordinateur portable local, vous souhaiterez installer Ansible à partir de la ligne de commande. Pour les utilisateurs de Mac, c'est:

sudo pip installer ansible

Pour tous les autres, reportez-vous à https://docs.ansible.com/ansible/latest/installat… pour votre système d'exploitation.

Maintenant, vous voudrez cloner ce référentiel dans un dossier OU télécharger le fichier. ZIP et l'extraire dans un dossier sur votre ordinateur local.

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

Dans ce référentiel, vous verrez un fichier hosts.ini. Ouvrez-le dans votre éditeur de texte préféré (ou nano ou vim):

[équilibreur de charge]

pi-headnode ansible_host=192.168.0.228 # <--- Remplacez-le par l'adresse IP du Pi sur lequel vous souhaitez HAProxy.

[nœuds]

node2 ansible_host=192.168.0.16 # <--- Remplacez-le par l'adresse IP de votre deuxième Pi

node3 ansible_host=192.168.0.58 # <--- Remplacez-le par l'adresse IP de votre troisième Pi

C'est ça! Pour exécuter le playbook, accédez au dossier du dépôt de base et saisissez ce qui suit dans votre terminal:

ansible-playbook playbook.yml

Étape 5: Félicitations

Image
Image
Toutes nos félicitations!!
Toutes nos félicitations!!

Vous venez de créer la magie informatique. Toutes nos félicitations!

Ceci est juste une preuve de concept. Dans ce référentiel, le playbook envoie un fichier index.html unique à chacun des nœuds afin que vous puissiez déboguer visuellement s'il fonctionne ou non. Pour un serveur de production, vous voudriez évidemment éditer le playbook pour déployer votre site.

Si vous avez des questions ou des commentaires, je serais ravi de les entendre! Veuillez consulter le référentiel Github et débourser ! J'aimerais voir ce que vous proposez.

Conseillé: