[LINUX] Construction d'un environnement distribué avec la série Raspberry PI (Partie 1: Résumé de la disponibilité des clients sans disque par modèle)

Liste de sérialisation

Cliquez ici pour la liste de sérialisation téléchargée

  1. Création d'un environnement distribué avec la série Raspberry PI (Partie 1: Résumé de la disponibilité des clients sans disque par modèle)
  2. Création d'un environnement distribué avec la série Raspberry PI (Partie 2: Analyse PiServer et conception de système alternatif)
  3. Création d'un environnement distribué avec la série Raspberry PI (Partie 3: Installation et configuration de dnsmasq)
  4. Création d'un environnement distribué avec la série Raspberry PI (Partie 4: Création d'un serveur NFS et importation d'un système d'exploitation pour les clients)
  5. Création d'un environnement distribué avec la série Raspberry PI (Partie 5: Personnalisation du Raspberry PI OS pour les nœuds de cluster (1))
  6. Création d'un environnement distribué avec la série Raspberry PI (Partie 6: Personnalisation de Raspberry PI OS pour les nœuds de cluster (2))
  7. Création d'un environnement distribué avec la série Raspberry PI (7: réglage d'itinéraire tftp et test de démarrage pour chaque tarte à la râpe)

Cet article est la "Partie 1" de la liste ci-dessus.

point important

Cet article est destiné à la tarte aux râpes qui remplit les conditions suivantes.

--Adoption de la microSD pour le stockage --Dispose d'un port LAN filaire

Donc

――La première génération n'est pas pertinente

Ce sera.

Problèmes et solutions qui apparaissent lorsque le nombre de séries Raspberry PI détenues augmente

Quand une nouvelle tarte à la râpe sort, vous l'achetez parce qu'elle est bon marché, n'est-ce pas? C'est aussi ma mauvaise habitude, mais compte tenu de la redondance, j'en achète généralement deux en même temps. Donc, voici le problème auquel j'ai été confronté, avec 2 chacun de 3B, 3B +, 4B après 2B, et un total de 8 tartes à la râpe sous la main.

Problème n ° 0: problème physique (résolu)

Lieu
Cela ne peut pas être aidé si c'est un cas + un ventilateur pour tous → Empilement
![68747470733a2f2f696d616765732d6e612e73736c2d696d616765732d616d617a6f6e2e636f6d2f696d616765732f492f373142685957657668644c2e5f41435f534c313530305f2e6a7067.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267238/a6b4551c-4645-ba27-6c9e-ab32d5f9dbc6.jpeg)
Câblage du câble LAN / USB pour l'alimentation
Les spaghettis ne sont pas bons du tout → L'empilement fait que les terminaux sont dans la même direction, ce qui facilite leur assemblage, alors utilisez une bande de reliure.
Câblage du câble HDMI / câble USB pour clavier / souris
Non requis car l'accès SSH est une condition préalable. Vous ne devez l'insérer que lorsque vous redémarrez un gars au comportement étrange
Consommation électrique / génération de chaleur
Je n'ai pas d'autre choix que de fermer les yeux
lié à l'alimentation
Il est impossible de penser à un adaptateur secteur USB pour une tarte aux râpes. → Il y avait une bonne chose ![68747470733a2f2f696d616765732d6e612e73736c2d696d616765732d616d617a6f6e2e636f6d2f696d616765732f492f3631253242664574326b36424c2e5f41435f534c313030305f2e6a7067.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267238/c227b8d2-fba8-176d-4b28-de0e9dda552c.jpeg)

Jusque-là, c'est un bonus, et le sujet principal commence ici.

Problème n ° 1: problème de gestion des supports microSD / OS

  • Le nombre de microSD endommagés (cadavres) augmentera également. Complètement consommable.
  • Il est extrêmement difficile de gérer individuellement la microSD, comme l'espace libre et la version du système d'exploitation.
  • ** (me revient) N'est-ce pas stupide de mettre à jour le système d'exploitation un par un? **

Problème? Partie 2: Curiosité propre aux humains qui ont plusieurs cartes

Vous voudrez par inadvertance effectuer l'une des opérations suivantes ...

--Spacon privé pauvre dans un cluster de HPC (MPI)

  • Cloud pauvre privé pour PaaS / SaaS avec kubernetes, etc.
  • Environnement de compilation distribué

** Mais est-ce une perte de temps de copier plusieurs microSD avec le même contenu? **

Comment résoudre les problèmes 1 et 2 ci-dessus en un seul coup ...

** Il n'y a pas d'autre choix que de faire de Raspai un démarrage client / réseau sans disque ** Cet article est un résumé du démarrage client / réseau sans disque.

Un long chemin pour faire des tartes à la râpe successives sans disque

Étape 1: Connaître l'existence de "PiServer"

Tout d'abord, j'ai trouvé Cet article de Nikkei. Vous pensez: "Si vous installez ceci sur un PC excédentaire ou sur un hôte virtuel VMWare, c'est un one-shot? Easy win." d'habitude.

Étape 2: essayez PiServer

1. Installation de
Ah, le noyau est x86_64, mais la glibc est Debian 32 bits i386 ...
2. Écran de gestion du système d'exploitation à distribuer aux clients
Enregistrer une distribution autre que Raspbian est très compliqué. Apparemment, vous devez créer vous-même boot.tar.xz et root.tar.xz.
3. Configuration / mise à jour du système d'exploitation à distribuer aux clients
Mettez à jour le système d'exploitation pour les clients avec qemu-arm-static sur PiServer. Oh, au fait, c'est une version 32 bits de la glibc, donc je ne peux pas mettre à jour la distribution de la version aarch64.
4. Mettez sous tension chaque machine avec la microSD réellement retirée
Ça? Vous ne trouvez pas de clients autres que 3B +? N'avez-vous pas lancé de diffusion DHCP? (La raison de ce phénomène sera expliquée plus tard)

À ce stade, ** PiServer dans son ensemble est putain **. J'ai pris une décision provisoire, Plus tard, j'analyserai les fonctions de PiServer et réfléchirai à d'autres moyens de l'implémenter.

Étape 3: Pensez à ce qui peut être fait avec U-boot installé localement pendant un moment

Il y avait pas mal d'articles disant "Mettez U-boot dans la première partition de la microSD locale, mettez-le sur le serveur tftp et montez NFS", alors j'y ai réfléchi pendant un moment et l'ai essayé. Comme le SoC est différent selon les modèles, le nombre de fois où U-boot est compilé + la génération d'images augmente et c'est trop gênant ... Surtout, j'ai réalisé que je visais le sans disque, donc je l'ai finalement rejeté. Si vous utilisez U-boot, c'est celui que vous mettez sur le serveur tftp.

Étape 4: sachez que différents modèles ont différentes façons d'activer le démarrage PXE

Si vous recherchez "Raspberry PI Network Boot" sur Google, vous trouverez différentes méthodes, mais ...

Dans la séquence de démarrage immédiatement après la mise sous tension, lorsque la microSD n'est pas insérée, le résultat de la décision finale d'essayer ou non le démarrage PXE est complètement différent en fonction du modèle (heure de sortie), et d'essayer également le démarrage PXE. J'ai finalement réalisé que la méthode de préparation pour changer le comportement est complètement différente selon le modèle.

Étape 5: Résumé de chaque modèle et préparation (méthode au 02/06/2020)

Raspberry PI 2 Model B (V1.1,V1.2)

Date de sortie
Le sans marque (V1.1) sorti en 2015/02 est le bras 32 bits v7.
Bras 64 bits v8 2016/07 après un changement mineur (V1.2)
Complètement sans disque est impossible
Comme il a été annoncé à un moment où je ne pensais pas du tout au démarrage du réseau, il ne prend pas en charge la conversion client complète sans disque.
Comment faire un net boot
Bien que ce soit à l'origine un modèle qui n'était pas pris en charge, les personnes à l'intérieur travaillent maintenant dur pour trouver le fichier bootcode.bin inclus dans la partition de démarrage de Raspberry PI OS (anciennement Raspbian). Il a été amélioré à la situation où le démarrage réseau est possible s'il existe dans la première partition de microSD. Par conséquent, il est nécessaire d'insérer la microSD qui est une copie de bootcode.bin à partir de l'image Raspbian et de la démarrer.
[Référence (Qiita)](https://qiita.com/ysugi/items/ee88eed56e0234028228)

Raspberry PI 3 Model B (non marqué)

Date de sortie
2016/03
Certaines commandes ne doivent être exécutées qu'une seule fois après l'achat.
L'état par défaut ne prend pas en charge le démarrage réseau / USB, mais si vous modifiez le fichier cmdline.txt dans la partition de démarrage de Raspbian une seule fois et redémarrez, l'indicateur du micrologiciel sera modifié et le démarrage sans disque sera effectué. Il sera possible de répondre.
Travail réel
Veuillez vous référer au tutoriel original.
[Référence (tutoriel original, anglais)](https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/net_tutorial.md)

Raspberry PI 3 Model B+

Date de sortie
2018/03
Diskless peut être fait sans rien faire
2020/06/01 Actuellement, le modèle le plus simple à transformer en client sans disque. C'est pourquoi PiServer l'a trouvé.

Raspberry PI 4

Date de sortie
2019/06
La commande qui ne doit être exécutée qu'une seule fois après l'achat est (retour arrière)
La conception est complètement différente de la séquence de démarrage jusqu'au système 3B, Un modèle dans lequel le programme correspondant à bootcode.bin, qui était requis lors du démarrage de la série 3B, est maintenant stocké dans l'EEPROM intégrée. Normalement, le fonctionnement sans disque devrait être possible sans rien faire, mais dans l'état initial, si le démarrage avec microSD échoue Un modèle inamical qui est livré dans un état de tout abandonner.
Que faire
Les liens suivants sont bien organisés, veuillez donc vous y référer.
[Référence (Akii Diary)](https://akkiesoft.hatenablog.jp/entry/20200506/1588750846)

Étape 6 Vérifiez à nouveau le démarrage PXE de Raspbian (32 bits) sur PiServer

Enfin, j'ai pu effectuer un démarrage PXE sur tous mes modèles. Et à la prochaine étape de la façon de remplacer le putain de PiServer

Alors c'est tout pour cette fois. Passez à la Partie 2.

Recommended Posts