Raspberry-Pi-LOGO

Provisionnement du module de calcul Raspberry Pi

Approvisionnement-du-PRODUIT-Module-de-calcul-Raspberry-Pi

Provisionnement du module de calcul Raspberry Pi (versions 3 et 4)
Raspberry Pi Ltd.
2022-07-19: githash: 94a2802-clean

Colophon
© 2020-2022 Raspberry Pi Ltd (anciennement Raspberry Pi (Trading) Ltd.)
Cette documentation est sous licence Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND). date de construction : 2022-07-19 version de construction : githash : 94a2802-clean

Mentions légales

LES DONNÉES TECHNIQUES ET DE FIABILITÉ DES PRODUITS RASPBERRY PI (Y COMPRIS LES FICHES TECHNIQUES) TELLES QUE MODIFIÉES DE TEMPS À AUTRE (« RESSOURCES ») SONT FOURNIES PAR RASPBERRY PI LTD (« RPL ») « TELLES QUELLES » ET TOUTE GARANTIE EXPRESSE OU IMPLICITE, Y COMPRIS, MAIS SANS S'Y LIMITER À, LES GARANTIES IMPLICITES DE QUALITÉ MARCHANDE ET D'ADÉQUATION À UN USAGE PARTICULIER SONT DÉCLINÉES. DANS LA MESURE MAXIMALE AUTORISÉE PAR LA LOI APPLICABLE, RPL NE SERA EN AUCUN CAS RESPONSABLE DE TOUT DOMMAGE DIRECT, INDIRECT, ACCESSOIRE, SPÉCIAL, EXEMPLAIRE OU CONSÉCUTIF (Y COMPRIS, MAIS SANS S'Y LIMITER, L'ACQUISITION DE BIENS OU SERVICES DE SUBSTITUTION ; PERTE D'UTILISATION, DE DONNÉES , OU BÉNÉFICES ; OU INTERRUPTION D'ACTIVITÉ) QUELLE QU'EN SOIT LA CAUSE ET SUR TOUTE THÉORIE DE RESPONSABILITÉ, QU'ELLE SOIT CONTRACTUELLE, RESPONSABILITÉ STRICTE OU DÉLICTUELLE (Y COMPRIS LA NÉGLIGENCE OU AUTRE) RÉSULTANT DE QUELQUE MANIÈRE QUE CE SOIT DE L'UTILISATION DES RESSOURCES, MÊME SI AVISÉ DE LA POSSIBILITÉ DE TELS DOMMAGES.
RPL se réserve le droit d'apporter des améliorations, des améliorations, des corrections ou toute autre modification aux RESSOURCES ou à tout produit qui y est décrit à tout moment et sans préavis. Les RESSOURCES sont destinées à des utilisateurs qualifiés ayant des niveaux appropriés de connaissances en conception. Les utilisateurs sont seuls responsables de leur sélection et de leur utilisation des RESSOURCES et de toute application des produits qui y sont décrits. L'utilisateur accepte d'indemniser et de dégager RPL de toute responsabilité, coût, dommage ou autre perte découlant de son utilisation des RESSOURCES. RPL accorde aux utilisateurs l'autorisation d'utiliser les RESSOURCES uniquement en conjonction avec les produits Raspberry Pi. Toute autre utilisation des RESSOURCES est interdite. Aucune licence n'est accordée à tout autre RPL ou autre droit de propriété intellectuelle de tiers. ACTIVITÉS À HAUT RISQUE. Les produits Raspberry Pi ne sont pas conçus, fabriqués ou destinés à être utilisés dans des environnements dangereux nécessitant des performances de sécurité, tels que l'exploitation d'installations nucléaires, les systèmes de navigation ou de communication d'aéronefs, le contrôle du trafic aérien, les systèmes d'armes ou les applications critiques pour la sécurité (y compris les systèmes de survie systèmes et autres dispositifs médicaux), dans lesquels la défaillance des produits pourrait entraîner directement la mort, des blessures corporelles ou des dommages physiques ou environnementaux graves ("Activités à haut risque"). RPL décline spécifiquement toute garantie expresse ou implicite d'adéquation aux activités à haut risque et n'accepte aucune responsabilité pour l'utilisation ou l'inclusion de produits Raspberry Pi dans les activités à haut risque. Les produits Raspberry Pi sont fournis sous réserve des conditions générales de RPL. La fourniture des RESSOURCES par RPL n'étend ni ne modifie autrement les Conditions générales de RPL, y compris, mais sans s'y limiter, les clauses de non-responsabilité et les garanties qui y sont exprimées.

Historique des versions de documents Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-1Portée du documentment
Ce document s'applique aux produits Raspberry Pi suivants :Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-2

Introduction

Le CM Provisioner est un web application conçue pour rendre la programmation d'un grand nombre d'appareils Raspberry Pi Compute Module (CM) beaucoup plus facile et plus rapide. Il est simple à installer et simple à utiliser. Il fournit une interface à une base de données d'images du noyau pouvant être téléchargées, ainsi que la possibilité d'utiliser des scripts pour personnaliser diverses parties de l'installation pendant le processus de flashage. L'impression d'étiquettes et la mise à jour du micrologiciel sont également prises en charge. Ce livre blanc suppose que le serveur Provisioner, version logicielle 1.5 ou plus récente, s'exécute sur un Raspberry Pi.

Comment tout cela fonctionne

CM4
Le système Provisioner doit être installé sur son propre réseau câblé ; le Raspberry Pi exécutant le serveur est branché sur un commutateur, avec autant de périphériques CM4 que le commutateur peut prendre en charge. Tout CM4 branché sur ce réseau sera détecté par le système d'approvisionnement et flashé automatiquement avec le firmware requis par l'utilisateur. La raison d'avoir son propre réseau câblé devient claire lorsque vous considérez que tout CM4 branché sur le réseau sera provisionné, il est donc essentiel de garder le réseau séparé de tout réseau en direct pour empêcher la reprogrammation involontaire des appareils.

Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-3CHANGEMENTS D'IMAGE Cartes CM 4 IO avec CM 4 -> CM4 Cartes IO avec CM4

En utilisant un Raspberry Pi comme serveur, il est possible d'utiliser un réseau filaire pour l'approvisionneur tout en permettant l'accès aux réseaux externes à l'aide de la connectivité sans fil. Cela permet de télécharger facilement des images sur le serveur, prêtes pour le processus d'approvisionnement, et permet au Raspberry Pi de servir l'approvisionneur web interface. Plusieurs images peuvent être téléchargées ; l'approvisionneur conserve une base de données d'images et facilite la sélection de l'image appropriée pour la configuration de différents appareils.
Lorsqu'un CM4 est connecté au réseau et sous tension, il essaie de démarrer, et une fois que d'autres options ont été essayées, le démarrage du réseau est tenté. À ce stade, le système DHCP (Provisioner Dynamic Host Configuration Protocol) répond au CM4 de démarrage et lui fournit une image de démarrage minimale qui est téléchargée sur le CM4, puis exécutée en tant que racine. Cette image peut programmer la carte multimédia intégrée (eMMC) et exécuter tous les scripts requis, selon les instructions de l'approvisionneur.

Plus de détails
Les modules CM4 sont livrés avec une configuration de démarrage qui essaiera d'abord de démarrer à partir d'eMMC ; si cela échoue parce que l'eMMC est vide, il effectuera un démarrage réseau de l'environnement d'exécution de pré-démarrage (PXE). Ainsi, avec les modules CM4 qui n'ont pas encore été provisionnés et qui ont un eMMC vide, un démarrage réseau sera effectué par défaut. Lors d'un démarrage réseau sur un réseau d'approvisionnement, une image de système d'exploitation (OS) utilitaire léger (en fait un noyau Linux et un scriptexecute initramfs) sera servie par le serveur d'approvisionnement au module CM4 sur le réseau, et cette image gère l'approvisionnement.

CM 3 et CM 4s

Les périphériques CM basés sur le connecteur SODIMM ne peuvent pas démarrer en réseau, la programmation est donc réalisée via USB. Chaque appareil devra être connecté à l'approvisionneur. Si vous devez connecter plus de 4 appareils (le nombre de ports USB sur le Raspberry Pi), un hub USB peut être utilisé. Utilisez des câbles USB-A vers Micro-USB de bonne qualité, en vous connectant du Raspberry Pi ou du concentrateur au port USB esclave de chaque carte CMIO. Toutes les cartes CMIO auront également besoin d'une alimentation, et le cavalier d'activation de démarrage de l'esclave USB J4 doit être réglé sur activer

Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-4IMPORTANT
Ne connectez PAS le port Ethernet du Pi 4. La connexion sans fil est utilisée pour accéder à la gestion web interface.

Installation

Les instructions suivantes étaient correctes au moment de la publication. Les toutes dernières instructions d'installation sont disponibles sur la page Provisioner GitHub.

Installation de l'approvisionneur web application sur un Raspberry Pi
AVERTISSEMENT
Assurez-vous que eth0 se connecte à un commutateur Ethernet auquel seules les cartes d'E/S CM4 sont connectées. Ne connectez pas eth0 à votre bureau/réseau public, sinon il pourrait également "provisionner" d'autres appareils Raspberry Pi de votre réseau. Utilisez la connexion sans fil Raspberry Pi pour vous connecter à votre réseau local.

La version Lite du système d'exploitation Raspberry Pi est recommandée comme système d'exploitation de base sur lequel installer l'approvisionneur. Pour plus de simplicité, utilisez rpi-imager et activez le menu des paramètres avancés (Ctrl-Maj-X) pour configurer le mot de passe, le nom d'hôte et les paramètres sans fil. Une fois l'OS installé sur le Raspberry Pi, il vous faudra paramétrer le système Ethernet :

  1. Configurez eth0 pour avoir une adresse IP (Internet Protocol) statique de 172.20.0.1 à l'intérieur d'un sous-réseau /16 (masque de réseau 255.255.0.0) en modifiant la configuration DHCP :
    • sudo nano /etc/dhcpcd.conf
    • Ajouter au bas de la file:
      interface eth0
      adresse IP statique=172.20.0.1/16
    • Redémarrez pour permettre aux modifications de prendre effet.
  2. Assurez-vous que l'installation du système d'exploitation est à jour :
    sudo apt mise à jour
    sudo apt full-upgrade
  3. L'approvisionneur est fourni sous la forme d'un fichier .deb prêt à l'emploi file sur la page GitHub de l'approvisionneur. Téléchargez la dernière version à partir de cette page ou à l'aide de wget, et installez-la à l'aide de la commande suivante :
    sudo apt install ./cmprovision4_*_all.deb
  4. Réglez le web nom d'utilisateur et mot de passe de l'application :
    sudo /var/lib/cmprovision/artisan auth:create-user

Vous pouvez désormais accéder à la web interface de l'approvisionneur avec un web navigateur en utilisant l'adresse IP sans fil Raspberry Pi et le nom d'utilisateur et le mot de passe entrés dans la section précédente. Entrez simplement l'adresse IP dans la barre d'adresse de votre navigateur et appuyez sur Entrée.

Usage

Lorsque vous vous connectez pour la première fois à l'approvisionneur web candidature avec votre web navigateur, vous verrez l'écran du tableau de bord, qui ressemblera à ceci :Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-5

Cette landing page donne simplement quelques informations sur la dernière action effectuée par le Provisioner (dans l'exampci-dessus, un seul CM4 a été provisionné).

Téléchargement d'images

La première opération requise lors de la configuration est de charger votre image sur le serveur, d'où elle pourra être utilisée pour provisionner vos cartes CM4. Cliquez sur l'élément de menu "Images" en haut de la web page et vous devriez obtenir un écran similaire à celui illustré ci-dessous, affichant une liste des images actuellement téléchargées (qui seront initialement vides).Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-6

Sélectionnez le bouton Ajouter une image pour télécharger une image ; vous verrez cet écran :
Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-7

L'image doit être accessible sur l'appareil où web navigateur est en cours d'exécution et dans l'un des formats d'image spécifiés. Sélectionnez l'image de votre machine en utilisant le standard file boîte de dialogue, puis cliquez sur "Télécharger". Cela va maintenant copier l'image de votre machine vers le serveur Provisioner exécuté sur le Raspberry Pi. Cela peut prendre un certain temps. Une fois l'image téléchargée, vous la verrez sur la page Images.

Ajouter un projet

Vous devez maintenant créer un projet. Vous pouvez spécifier n'importe quel nombre de projets, et chacun peut avoir une image, un ensemble de scripts ou une étiquette différents. Le projet actif est celui qui est actuellement utilisé pour le provisionnement.
Cliquez sur l'élément de menu 'Projets' pour faire apparaître la page Projets. L'ex suivantample a déjà un projet, appelé 'Projet test', mis en place.

Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-8Cliquez maintenant sur "Ajouter un projet" pour configurer un nouveau projetApprovisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-9

  • Donnez au projet un nom approprié, puis sélectionnez l'image que vous souhaitez que ce projet utilise dans la liste déroulante. Vous pouvez également définir un certain nombre d'autres paramètres à ce stage, mais souvent seule l'image suffit.
  • Si vous utilisez la version 1.5 ou une version plus récente de l'approvisionneur, vous avez la possibilité de vérifier que le clignotement s'est terminé correctement. La sélection de cette option relira les données de l'appareil CM après le clignotement et confirmera qu'elles correspondent à l'image d'origine. Cela ajoutera du temps supplémentaire à l'approvisionnement de chaque appareil, le temps ajouté dépendra de la taille de l'image.
  • Si vous sélectionnez le micrologiciel à installer (ceci est facultatif), vous avez également la possibilité de personnaliser ce micrologiciel avec des entrées de configuration spécifiques qui seront fusionnées dans le binaire du chargeur de démarrage. Les options disponibles se trouvent sur le Raspberry Pi website.
  • Cliquez sur 'Enregistrer' lorsque vous avez entièrement défini votre nouveau projet ; vous reviendrez à la page Projets et le nouveau projet sera répertorié. Notez qu'un seul projet peut être actif à la fois et vous pouvez le sélectionner dans cette liste.

Scénarios
Une fonctionnalité très utile de Provisioner est la possibilité d'exécuter des scripts sur l'image, avant ou après l'installation. Trois scripts sont installés par défaut dans l'approvisionneur et peuvent être sélectionnés lors de la création d'un nouveau projet. Ils sont listés sur la page Scripts

Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-10

Un exampL'utilisation des scripts peut consister à ajouter des entrées personnalisées à config.txt. Le script standard Add dtoverlay=dwc2 to config.txt le fait, en utilisant le code shell suivant :Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-11

Cliquez sur "Ajouter un script" pour ajouter vos propres personnalisations :Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-12

Étiquettes
L'approvisionneur a la possibilité d'imprimer des étiquettes pour l'appareil en cours d'approvisionnement. La page Étiquettes affiche toutes les étiquettes prédéfinies qui peuvent être sélectionnées pendant le processus d'édition du projet. Par exempleample, vous souhaiterez peut-être imprimer des codes DataMatrix ou de réponse rapide (QR) pour chaque carte provisionnée, et cette fonctionnalité rend cela très facile.Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-13

Cliquez sur "Ajouter un libellé" pour spécifier le vôtre : Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-14

Micrologiciel

L'approvisionneur permet de spécifier la version du micrologiciel du chargeur de démarrage que vous souhaitez installer sur le CM4. Sur la page Firmware, il y a une liste de toutes les options possibles, mais la plus récente est généralement la meilleure.Approvisionnement-du-Module-de-calcul-Raspberry-Pi-FIG-15Pour mettre à jour la liste avec les dernières versions du bootloader, cliquez sur le bouton 'Download new firmware from github'.

Problèmes possibles

Micrologiciel obsolète du chargeur de démarrage
Si votre CM4 n'est pas détecté par le système Provisioner lorsqu'il est branché, il est possible que le micrologiciel du chargeur de démarrage soit obsolète. Notez que tous les appareils CM4 fabriqués depuis février 2021 ont le bon chargeur de démarrage installé en usine, donc cela ne se produira qu'avec les appareils qui ont été fabriqués avant cette date.

eMMC déjà programmé
Si le module CM4 a déjà un démarrage files dans l'eMMC à partir d'une précédente tentative de provisionnement, il démarrera à partir de l'eMMC et le démarrage réseau requis pour le provisionnement ne se produira pas.
Si vous souhaitez réapprovisionner un module CM4, vous devrez :

  • Connectez un câble USB entre le serveur d'approvisionnement et le port micro USB de la CM4 IO Board (étiqueté « esclave USB »).
  • Placez un cavalier sur la CM4 IO Board (J2, 'Fit jumper to disable eMMC boot').

Cela entraînera le module CM4 à effectuer un démarrage USB, auquel cas le serveur de provisionnement transférera le files du système d'exploitation utilitaire via USB.
Une fois le système d'exploitation utilitaire démarré, il contactera le serveur de provisionnement via Ethernet pour recevoir des instructions supplémentaires et télécharger des files (par exemple, l'image du système d'exploitation à écrire sur eMMC) comme d'habitude. Ainsi, une connexion Ethernet en plus du câble USB est toujours nécessaire.

Protocole Spanning Tree (STP) sur les commutateurs Ethernet gérés
Le démarrage PXE ne fonctionnera pas correctement si STP est activé sur un commutateur Ethernet géré. Cela peut être la valeur par défaut sur certains commutateurs (par exemple Cisco), et si tel est le cas, il devra être désactivé pour que le processus de provisionnement fonctionne correctement.
Raspberry Pi est une marque déposée de la Fondation Raspberry Pi
Raspberry Pi Ltd.

Documents / Ressources

Raspberry Pi Provisionnement du module de calcul Raspberry Pi [pdf] Guide de l'utilisateur
Approvisionnement du module de calcul Raspberry Pi, Approvisionnement, du module de calcul Raspberry Pi, Module de calcul

Références

Laisser un commentaire

Votre adresse email ne sera pas publiée. Les champs obligatoires sont marqués *