Turing Pi 2 – partie 3 – Systèmes d’exploitations

turing pi

BMC

Nous devons d’abord nous intéresser à une caractéristique particulière de cette carte Turing PI 2. À savoir le contrôleur présent dessus. Nommé Baseboard Management Controller (BMC) Il s’agit d’un LinuxOS peu puissant qui permet de monitorer, gérer les 4 nodes PCI.

Fait intéressant, il dispose d’une interface web (minimaliste) pour effectuer quelques opérations. Dans la mesure où il s’agit d’une puce faisant tourner un système aussi léger que LinuxOS, nous pouvons interagir avec lui via SSH ou Serial.

Cela veut aussi dire que nous pouvons utiliser BMC comme vecteur pour automatiser des opérations sur la carte, comme flasher les OS sur les Raspberry PI (à confirmer)

Nous allons effectuer quelques étapes manuelles dans un premier temps. Une fois cela fini, il sera temps d’automatiser ce qui peut l’être via Ansible par exemple

1. Flasher BMC sur la version la plus récente

Il se peut que l’accès SSH ne soit pas actif, ou encore que la version BMC soit un peu vieille, aussi flasher BMC a du sens pour obtenir les dernières fonctionnalités offertes par la carte

  1. Se rendre sur GitHub pour télécharger la version la plus récente de BMC. Il faut télécharger le fichier .swu dans la liste des assets disponibles. Ce fichier sera utiliser pour faire la mise à jour OTA (Over the Air). On va donc utiliser l’interface web pour cette opération.
  2. Détecter l’adresse IP de l’interface web. En allant par exemple sur votre routeur pour obtenir l’adresse IP. Entrer celle-ci sur votre navigateur comme ci-dessous
  3. Dans l’onglet “update”, déposer le fichier .swu précédemment téléchargé et cliquer sur update.
  4. Si tout se passe bien, vous devriez avoir un écran comme celui-ci

Plus d’informations ici Baseboard-Management-Controller-BMC-#f2ad128d

2. Fixer l’adresse IP et adresse MAC

  1. Éditer le fichier /etc/network/interfaces afin qu’il ressemble à quelque chose comme suit:
# interface file auto-generated by buildroot

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
  hwaddress ether 12:34:56:78:9A:BC
  address 192.168.1.100
  netmask 255.255.255.0
  gateway 192.168.1.1
  pre-up /etc/network/nfs_check
  wait-delay 15
  hostname $(hostname)

Raspberry Pi

Une fois la BMC en place, nous pouvons passer à l’installation des différentes nodes présentes sur la carte.

Nous pouvons suivre ce document pour des explications détaillées.

1. Connecter la carte à l’ordinateur

Pour cette opération, on utilise un câble USB A Mâle-Mâle. Le port de la carte se situe à côté du port HDMI.

2. Installer usbboot

Suivre les instructions de cette page GitHub pour compiler l’outil usbboot. Cet outil va écouter les ports USB et va effectuer le montage de la carte SD quand elle sera exposée au PC. (À la suite de l’étape 3)

3. Monter la carte SD sur l’ordinateur

3.1 Définir le mode USB sur device

Ici, il faut dans un premier temps définir le mode USB sur device pour une node. Ceci aura pour effet d’exposer la carte SD a l’ordinateur.

Nous allons dans l’onglet USB pour changer le mode USB comme suit

Une fois cette opération faite, on peut démarrer la node comme suit via l’interface.

À ce moment-là, la carte SD est exposée au PC. Il faut maintenant effectuer le montage

3.2 Lancer l’outil usbboot

Si l’opération 2. S’est correctement déroulée, il suffit de lancer la commande sudo ./rpiboot pour lancer l’outil. Il va découvrir la carte SD exposée dans l’étape 3.1 et va effectuer le montage effectif de la ressource sur le PC.

À partir de maintenant, on peut commencer à copier limage

4. flahser la carte SD avec Raspbarry Pi Imager

Commencer par installer Raspberry Pi imager. Instructions ici.

Dans la liste des systèmes d’exploitations, sélectionnez “Raspberry Pi OS LITE 64-bit”

Dans la liste des périphériques de stockage, choisissez la carte SD précédemment montée.

Il y a possibilité d’étendre les options avec notamment l’accès SSH, la définition du nom de la machine, etc.

— Répéter les opérations 3 (3.1 et 3.2)

Leave a Comment

Your email address will not be published. Required fields are marked *