DEV Community

Karim
Karim

Posted on • Originally published at Medium on

Son Micro Cloud avec ses Machines Virtuelles dans sa carte Raspberry Pi 4 à l’aide de Multipass et…

J’avais précédemment écrit un article sur la virtualisation dans une carte Raspberry Pi 4 avec KVM et Cockpit :

Virtualisation légère avec la carte Raspberry Pi 4, KVM et Cockpit …

Dans ce nouvel article, je vais utiliser une autre variante via l’utilisation de Multipass et LXD. Je pars d’une carte Raspberry Pi 4 avec 8Gb de mémoire vive :

Le Raspberry Pi 4 arrive en version 8 Go de RAM !

Pour rappel, Raspberry Pi est un SBC (Single Board Computer) à bas prix créé par une équipe de professeurs de l’Université de Cambridge, afin d’encourager l’apprentissage de la programmation et le lancement de différents projets. Avec un processeur plus puissant et un grand choix en matière de connectivité, le Raspberry Pi 4 consomme beaucoup moins d’énergie.

Dans le souci de rendre le Raspberry Pi 4 modèle B encore plus performant, la fondation Raspberry Pi a misé sur un nouveau SOC Broadcom BCM2711, quad-core Cortex-A72 (ARM v8) 64-bits à 1.5GHz, pour remplacer le Cortex A53 quadricoeurs cadencé à 1,4 GHz, utilisé dans la version précédente …

J’utilise Raspberry Pi Imager pour charger une image Ubuntu 20.10 ARM 64 Bits dans cette dernière avec une carte SD à 64 Go :

Raspberry Pi Downloads - Software for the Raspberry Pi

La carte SD est prête à être inserée :

Cette carte Raspberry Pi 4 démarre avec Ubuntu 20.10 (Groovy Gorilla) :

J’initialise l’hyperviseur LXD (déjà installé) :

Et j’y installe via Snap, Multipass :

Multipass orchestrates virtual Ubuntu instances

Avec la dernière version de Multipass, je peux effectuer une liaison avec l’hyperviseur LXD :

Release 1.3.0 · canonical/multipass

Je vais donc pouvoir lancer avec Multipass des machines virtuelles utilisant LXD en backend …

Lancement de trois machines virtuelles sous Ubuntu 20.04 LTS qui formeront l’ossature d’un futur cluster k3s :

Les machines virtuelles sont actives :

Je peux utiliser la clé SSH privée par défaut avec Multipass pour me connecter à ces machines virtuelles :

Utilisation de k3sup pour la création du cluster k3s dans ces machines virtuelles :

Création donc du noeud maître avec la première machine virtuelle :

Puis ajout des machines virtuelles restantes comme noeud Worker dans ce cluster k3s :

Le cluster k3s est actif et opérationnel :

Déploiement rapide du Démonstrateur FCA en utilisant l’Ingress Controller via Traefik dans ce cluster :

deployment.yml

Pour rendre accessible le démonstrateur FCA depuis Internet, j’utilise encore une fois Cloudflare Argo :

Quickstart · Cloudflare Argo Tunnel docs

avec le binaire ARM 64 Bits fourni :

Lancement du tunnel depuis la carte Raspberry Pi 4 :

Le démonstrateur FCA est accessible depuis l’URL fournie :

Pour le rendre accessible sur le réseau local je vais réutiliser Node.js et Reverse-Projy.js :

@cedx/reverse-proxy

Et lancement de ce Reverse Proxy local :

avec le démonstrateur FCA en local :

Je peux aussi ne pas utiliser ici Multipass et exécuter ces machines virtuelles directement avec l’hyperviseur LXD. En effet, la virtualisation par Qemu est possible au travers de LXD depuis les versions récentes (4.X) :

J’utilise pour cela les images Cloud ARM 64 Bits d’Ubuntu en version 20.10 :

Et encore une fois, j’initie au travers de ces trois machines virtuelles un cluster k3s :

Le fichier Kubeconfig est à récupérer sur le noeud maître du cluster :

et avec lui je peux accéder au cluster :

Je redéploie le démonstrateur FCA :

et j’utilise le même Reverse Proxy pour pouvoir y accéder localement :

Netdata me permet ici de monitorer la carte :

netdata/netdata

avec ce script :

qui une fois exécuté et terminé me permet de visualiser un dashboard de monitoring …

Le tout m’aura consommé moins de 4 Go de RAM …

Le même procédé peut être appliqué dans le dernier modèle Raspberry Pi 400 avec son processeur Broadcom Cortex A72 à 4 coeurs cadencés à 1,8Ghz mais avec seulement 4 Gb de mémoire vive :

Le Raspberry Pi 400 vient de sortir, un ordinateur DANS un clavier pour 70€ !

Il y a donc diverses méthodes pour lancer ses machines virtuelles dans un carte de type Raspberry Pi 4 et l’actualité récente a notamment été marquée par l’introduction de l’hyperviseur VMware ESXi pour cette dernière :

et son application avec encore une fois un cluster k3s 🙂. De quoi favoriser son développement dans le contexte de l’Edge Computing …

Edge-native Linux | Ubuntu

À suivre !

Top comments (0)