[LINUX] Création d'un environnement distribué avec la série Raspberry PI (Partie 7: configuration de la route tftp et test de démarrage pour chaque tarte à la râpe)

Introduction (liste de sérialisation)

  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 7.

Dernière fois utilise qemu-user-static installé sur un serveur NFS (ou PXE) pour personnaliser l'image du système d'exploitation pour les clients copiés sur une machine NFS. Cependant, cette fois, en créant un lien symbolique vers le répertoire / boot de cette image OS, un test de démarrage est effectué en tant que racine tftp (cette fois il est court).

Référence (environnement de l'auteur)

RaspiCloudSystem.png

Vrai travail

Décrivez le serveur NFS et le serveur PXE séparément.

1. Montez le répertoire partagé du serveur NFS à partir du serveur PXE

1.1. Créer et monter un point de montage sur le serveur PXE

IP du serveur NFS
192.168.172.17
Nom du répertoire partagé
/ exports / os4pi

Si qemu-user-static est installé sur les deux serveurs NFS / PXE et que vous souhaitez personnaliser le système d'exploitation pour Raspeye à partir de l'un ou l'autre, définissez-le sur rw, mais si vous n'avez pas besoin de le personnaliser sur le serveur PXE, vous pouvez utiliser ro. ..

# mkdir /mnt/os4pi
# mount -t nfs -o proto=tcp,vers=3,rw,noatime 192.168.172.17:/exports/os4pi /mnt/os4pi

1.2. Ajoutez une ligne à / etc / fstab sur le serveur PXE pour persister

192.168.172.17:/exports/os4pi   /mnt/os4pi   nfs    tcp,vers=3,rw,noatime,_netdev    0  0

2. Créez un lien symbolique vers la route tftp définie dans dnsmasq

conditions

racine tftp (répertoire de référence)
/ srv / tftp
Adresse MAC de Raspeye 2B
b8-27-eb-GG-HH-II
Adresse IP fixe attribuée à Raspeye 2B
192.168.172.32
OS / emplacement de démarrage pour Raspeye 2B
/ mnt / os4pi / raspbian / armhf / boot
Adresse MAC de Raspeye 3B
b8-27-eb-XX-YY-ZZ
Adresse IP fixe attribuée à Raspeye 3B
192.168.172.33
OS / emplacement de démarrage pour Raspeye 3B
/ mnt / os4pi / raspbian / armhf_64 / boot
Adresse MAC de Raspeye 4B
dc-a6-32-PP-QQ-RR
Adresse IP fixe attribuée à Raspeye 4B
192.168.172.34
OS / emplacement de démarrage pour Raspeye 4B
/ mnt / os4pi / raspbian / aarch64 / boot
# cd /srv/tftp
# rm -Rf b8-27-eb-GG-HH-II
# ln -sf /mnt/os4pi/raspbian/armhf/boot b8-27-eb-GG-HH-II
# ln -sf /mnt/os4pi/raspbian/armhf/boot 192.168.172.32
# rm -Rf b8-27-eb-XX-YY-ZZ
# ln -sf /mnt/os4pi/raspbian/armhf_64/boot b8-27-eb-XX-YY-ZZ
# ln -sf /mnt/os4pi/raspbian/armhf_64/boot 192.168.172.33
# rm -Rf dc-a6-32-PP-QQ-RR
# ln -sf /mnt/os4pi/raspbian/aarch64/boot dc-a6-32-PP-QQ-RR
# ln -sf /mnt/os4pi/raspbian/aarch64/boot 192.168.172.34

Remarques

3. Lancement du test Raspeye

3.0. Préparation

  1. Mettez sous tension dans l'ordre serveur NFS → serveur PXE. Attendez de pouvoir vous connecter.
  2. Rendez chaque modèle sans disque amorçable en vous reportant à la Partie 1.

3.1. Pour Raspberry PI 2B

  1. Copiez uniquement le fichier bootcode.bin de la dernière image du programme d'installation du système d'exploitation RaspberryPI sur une microSD vide (qui peut être petite) avec la première partition formatée en FAT et insérez-la dans la tarte des râpes
  2. Connectez HDMI, clavier, LAN
  3. Connectez USB (alimentation)
  4. Confirmez que le bootcode.bin sur la microSD a été lu et que la gradation des couleurs apparaît sur le moniteur. Si vous ne le voyez pas, soit la microSD est morte (y compris si elle n'est pas au format FAT), le lecteur microSD Raspeye est défectueux ou la copie du fichier bootcode.bin a échoué.
  5. Vérifiez que le voyant d'accès LAN s'allume. S'il ne s'allume pas, le GPU / SoC Raspeye est peut-être défectueux ou la connexion réseau n'est peut-être pas en place.
  6. Confirmez que le logo Raspeye et le journal de démarrage apparaissent à l'écran (les paramètres jusqu'à tftp sont OK). Si l'écran reste noir et ne continue pas, il y a une mauvaise configuration du serveur tftp lui-même ou une mauvaise configuration du fichier config.txt sur le serveur tftp.
  7. Confirmez que vous pouvez vous connecter. S'il s'arrête au milieu, cela peut être dû à une mauvaise configuration de cmdline.txt sur le serveur tftp, une mauvaise configuration du serveur NFS ou une mauvaise configuration du fichier / etc / fstab.

3.2. Pour Raspberry PI 3B / 3B +

  1. Débranchez la microSD
  2. Connectez HDMI, clavier, LAN
  3. Connectez USB (alimentation)
  4. Vérifiez que le voyant d'accès LAN s'allume. S'il ne s'allume pas, cela peut être dû à un manque de préparation spécifique à 3B, à une mauvaise connectivité réseau ou à un mauvais GPU / SoC. [^ Mauvais]
  5. Vérifiez que la gradation des couleurs est affichée sur le moniteur. Si vous pouvez le confirmer, vous pouvez télécharger bootcode.bin depuis le serveur tftp. Si vous ne voyez pas la gradation des couleurs, il est possible que votre serveur tftp soit mal configuré.
  6. Vérifiez que le logo Raspeye et le journal de démarrage apparaissent à l'écran. Si l'écran reste noir et ne continue pas, il y a une mauvaise configuration dans le fichier config.txt sur le serveur tftp.
  7. Confirmez que vous pouvez vous connecter. S'il s'arrête au milieu, cela peut être dû à une mauvaise configuration de cmdline.txt sur le serveur tftp, une mauvaise configuration du serveur NFS ou une mauvaise configuration du fichier / etc / fstab.

[^ Mauvais]: En fait, j'avais un individu 3B qui faisait souvent échouer le démarrage de la microSD immédiatement après l'achat. J'ai toujours pensé que "microSD est mort / incompatible", mais en testant le démarrage sans disque, j'ai réalisé que "c'est un échec initial". Panne initiale que j'ai remarquée pour la première fois 4 ans après l'achat ...

3.3. Pour Raspberry PI 4B

  1. Débranchez la microSD
  2. Connectez HDMI, clavier, LAN
  3. Connectez USB (alimentation)
  4. Vérifiez que le voyant d'accès LAN s'allume. S'il ne s'allume pas, cela peut être dû à une mauvaise préparation, une mauvaise connectivité réseau ou une mauvaise EEPROM / SoC.
  5. Vérifiez que la gradation des couleurs est affichée sur le moniteur et est noircie. Il peut être confirmé qu'il n'y a pas de défaillance initiale de l'EEPROM.
  6. Vérifiez que le logo Raspeye et le journal de démarrage apparaissent à l'écran. Si l'écran reste noir et ne continue pas, il y a une mauvaise configuration dans le fichier config.txt sur le serveur tftp.
  7. Confirmez que vous pouvez vous connecter. S'il s'arrête au milieu, cela peut être dû à une mauvaise configuration de cmdline.txt sur le serveur tftp, une mauvaise configuration du serveur NFS ou une mauvaise configuration du fichier / etc / fstab.

Aperçu de la prochaine fois

C'est tout pour cette fois. La prochaine fois, j'aimerais créer l'environnement distribué le plus simple, un serveur Web de distribution de charge (redondant) utilisant Apache.

Recommended Posts

Création d'un environnement distribué avec la série Raspberry PI (Partie 7: configuration de la route tftp et test de démarrage pour chaque tarte à la râpe)
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 client)
Création d'un environnement distribué avec la série Raspberry PI (Partie 3: Installation et configuration de dnsmasq)
Construction de l'environnement, confirmation simple et test de compétence pour chaque langue
Construction d'un environnement de développement Cortex-M pour TOPPERS utilisant Raspeye
Réglage initial du Raspberry Pi (pour moi-même)
Construire un serveur VPN avec Raspberry Pie
Créer un environnement avec pyenv et pyenv-virtualenv
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)
Réaliser la construction d'environnement pour "Deep Learning from scratch" avec docker et Vagrant
Surveillance des animaux avec Rekognition et Raspberry pi
Créer un environnement Tensorflow avec Raspberry Pi [2020]
Essayez de pêcher le Wakasagi avec Raspberry Pi
Construction VPN simple de la passerelle IPsec avec Ubuntu 20.04 et Raspberry Pi ―― 1. StrongSwan introduit
Compilation croisée de Raspberry Pi et création d'un environnement de développement de débogage à distance avec VS Code
[Pour les débutants] J'ai fait un capteur humain avec Raspberry Pi et notifié LINE!
Construction de VPN de passerelle IPsec avec CentOS 8 et openSUSE (Raspberry Pi) --2 Confirmation de connexion VPN StrongSwan
Construction de l'environnement MacOS 10.11: Powerline avec Anaconda et Dein.vim
Programmation média avec Raspeye (préparation audio)
Créez un environnement d'exécution pour chaque langue avec boot2docker
MQTT Radicon Car avec Arduino et Raspberry
Construction d'un environnement d'oreiller - Pour Docker + iPython (et OpenCV)
Rollback DB pour chaque test avec Flask + SQLAlchemy
Obtenez la température et l'humidité avec DHT11 et Raspberry Pi
Construction VPN simple de la passerelle IPsec avec CentOS 8 et openSUSE (Raspberry Pi) --1 Introduction de StrongSwan