web-dev-qa-db-fra.com

MaaS peut-il commander une Raspberry Pi 3B?

J'ai un petit laboratoire (littéralement) de 3 unités RBP-3B avec des lecteurs SATA et SD connectés sous Ubuntu 16.04 LTS. J'ai installé un logiciel sur eux pour créer un cluster Ceph mais c'est délicat et assez fragile.

RP3B Ceph Cluster

En fin de compte, je voudrais administrer ce concept de "Worlds Smallest Cloud Storage Cluster" avec Juju et en faire le back-end de stockage d’un vBlock Intel NUC que j’ai gagné du concours OSIC au sommet Openstack. Malheureusement, je n'arrive pas à trouver un moyen de démarrer PXE avec le Raspberry Pi 3B, et le support de cette fonctionnalité est à l’horizon mais n’est pas présent.

Je veux utiliser MaaS pour bootstrap le système d'exploitation et alimenter ces petits gars dans des déploiements Juju car il est si facile à partir de là de tout gérer , mais j’ai du mal à trouver une solution qui marche. Je sais que Juju peut ajouter des machines après l’installation du système d’exploitation, mais il n’est pas évident de le faire non plus. Si je le configure pour utiliser des machines existantes, je ne sais pas si je peux toujours le pointer vers les systèmes contrôlés MaaS. créer un mélange hétérogène de matériel sans compromettre la fonctionnalité.

Des pensées?

15
spyderdyne

Bien que vous ne puissiez peut-être pas démarrer PXE via MAAS sur le RPi3, juju prend en charge le provisionnement manuel, y compris le nœud bootstrap - https://jujucharms.com/docs/1.24/config-manual

Avec cela, vous pouvez installer les systèmes avec 16.04, puis autoriser juju à les provisionner dans l'environnement via SSH.

3
Gareth Woolridge

EDIT: J'ai pu me rendre à la partie rpi_3_config, mais la commande suivante a généré une erreur.

EDIT # 2: Je peux maintenant compiler u-boot avec succès à partir du dépôt officiel git u-boot

EDIT # 3: Jusqu'à présent, il semble avoir réussi avec son démarrage. Je ne peux pas le tester pour le moment, mais j'essaierai avec MaaS plus tard!

Bien que vous ne puissiez peut-être pas démarrer PXE avec Raspberry Pi 3 sans carte SD, vous pouvez obtenir une partie du chemin avec U-Boot chargé sur la carte SD, paramétré sur PXE à partir du réseau.

Malheureusement, je suis exactement dans votre situation, essayant de démarrer PXE avec des tartes à la framboise pour MaaS, mais je me suis retrouvé un peu coincé lorsque le pi est arrivé. J'ai pu obtenir une adresse via DHCP aussi loin que possible, mais quand il s'agissait d'analyser le fichier pxelinux, il rencontrait une sorte d'erreur.

Juste au cas où vous auriez plus de chance avec vos tartes aux framboises, et en gardant à l'esprit que je le faisais il y a bien longtemps avant la sortie du Pi 3, je vais brièvement décrire les étapes que j'ai prises pour atteindre ce stade, bien que je puisse t vous aider plus loin.

  1. git clone git://git.denx.de/u-boot.git && cd u-boot
  2. git checkout rpi_dev
  3. À ce stade, j’ai fait une simple modification du fichier de configuration pour que la carte Raspberry Pi initialise automatiquement les périphériques USB au démarrage, mais il semble que l’instruction #DEFINE appropriée a déjà été ajoutée depuis.
  4. Vous devez maintenant vous procurer un compilateur croisé pour le Raspberry Pi. La façon la plus simple de procéder consiste à utiliser ici sur le site Web de Raspberry Pi et à suivre les étapes décrites sous INSTALL TOOLCHAIN, pour votre version de pi. N'oubliez pas d'ajouter les entrées de chemin d'accès, qui ne sont nécessaires que pour l'étape suivante. Un suffixe exportsuffira.
  5. Accédez à la racine du référentiel git u-boot et exécutez ce qui suit avec make installé: make CROSS_COMPILER=arm-linux-gnueabi- rpi_3_config, puis effectuez la construction: make CROSS_COMPILER=arm-linux-gnueabi-
  6. Vous devriez maintenant avoir un fichier u-boot.bin dans votre répertoire actuel.
  7. wget https://raw.githubusercontent.com/raspberrypi/linux/rpi-4.4.y/scripts/mkknlimg
  8. ./mkknlimg --dtok u-boot.bin kernel7.img
  9. Copiez kernel7.img sur votre carte SD

Bonne chance et si vous réussissez, assurez-vous de poster votre propre réponse en indiquant exactement ce que vous avez fait et acceptez-la.

1
tcnj

berryboot vous permettra d’amorcer le réseau mais ce n’est pas un véritable PXE http://www.berryterminal.com/doku.php/berryboot

0
Amias