Ce guide explique ce qu'est Multipass et comment créer et lancer instantanément des machines virtuelles Ubuntu avec Multipass en quelques secondes sous Linux.
Qu'est-ce que le multipass ?
Il existe une multitude de programmes et d'outils disponibles pour déployer des machines virtuelles Ubuntu à des fins de test et d'apprentissage. Certains d'entre eux sont Docker , KVM , LXD , LXC , Proxmox , Vagabond , VirtualBox et Vmware etc
J'utilise souvent KVM, Vagrant et Virtualbox pour tester diverses applications sur plusieurs distributions Linux. Aujourd'hui, nous allons découvrir un autre utilitaire de virtualisation nommé Multipass .
Que vous soyez un utilisateur régulier, un développeur ou un administrateur système, vous pouvez créer et lancer instantanément des machines virtuelles Ubuntu avec Multipass sous Linux.
Multipass est un gestionnaire de VM léger en ligne de commande développé par Canonical team, pour déployer rapidement des instances Ubuntu sur votre machine locale.
Étant donné que Multipass vous fournit les instances à jour, vous n'avez pas à perdre de temps sur les mises à jour au lancement ! Grâce à Multipass, vous pouvez lancer rapidement de nouvelles machines virtuelles Ubuntu et les utiliser pour tester votre code ou votre application.
Il utilise KVM sous Linux, Hyper-V sous Windows et HyperKit sous macOS pour exécuter la machine virtuelle avec une surcharge minimale. Il peut également utiliser VirtualBox sous Windows et macOS.
Vous pouvez exécuter des commandes dans des machines virtuelles directement à partir de votre hôte local ou vous connecter au shell de la machine virtuelle et exécuter à partir de là. Il est également possible de monter un répertoire de votre système hôte dans les instances et de partager des fichiers et des dossiers entre le système hôte et les VM.
Multipass est une application multiplateforme prenant en charge GNU/Linux, macOS et Windows.
Installer Multipass sur Linux
Le multipass est disponible en tant que snap package, afin qu'il puisse être installé sur n'importe quel système d'exploitation Linux prenant en charge snapd
.
Snap est préinstallé dans toutes les versions d'Ubuntu à partir de la version 16.04 LTS, les saveurs d'Ubuntu, Solus 3 et supérieur, Zorin OS, etc. Sur d'autres systèmes Linux, vous pouvez installer Snapd comme décrit dans ce lien .
Après avoir installé Snapd, installez Multipass à l'aide de la commande :
$ sudo snap install multipass
Si cela ne fonctionne pas pour une raison quelconque, essayez la commande suivante :
$ sudo snap install multipass --classic
Une fois l'installation Multipass réussie, vous verrez le résultat suivant :
multipass 1.0.2 from Canonical* installed
Maintenant, allons-y et déployons des instances Ubuntu dans notre système local.
Créer et lancer des machines virtuelles Ubuntu avec Multipass sur Linux
L'exécution de machines virtuelles Ubuntu avec Multipass est incroyablement simple et directe.
1. Lancer les machines virtuelles Ubuntu
Pour télécharger et lancer une nouvelle machine virtuelle Ubuntu, exécutez simplement :
$ multipass launch --name ostechnix-instance
Ou,
$ multipass launch -n ostechnix-instance
Ici ostechnix-instance est le nom de ma machine virtuelle Ubuntu. Vous pouvez nommer les machines virtuelles selon votre goût.
La commande ci-dessus téléchargera une instance Ubuntu fraîche et minimale et la démarrera automatiquement.
Par défaut, Multipass téléchargera la version actuelle d'Ubuntu LTS.
2. Lister les VM
Pour répertorier les VM actuellement téléchargées sur votre système, exécutez :
$ multipass list
Exemple de résultat :
Name State IPv4 Image ostechnix-instance Running 10.39.86.203 Ubuntu 18.04 LTS
Comme vous pouvez le voir dans la sortie ci-dessus, une nouvelle instance Ubuntu nommée "ostechnix-instance " est lancé et fonctionne avec Ubuntu 18.04 LTS version. Et l'adresse IP de l'instance est 10.39.86.203 .
3. Exécuter des commandes dans les VM à partir du système local
Multipass vous permet d'exécuter des commandes dans vos instances Ubuntu. Par exemple, nous pouvons trouver les détails système d'une machine virtuelle en cours d'exécution à l'aide de la commande :
$ multipass exec ostechnix-instance -- lsb_release -a
4. Lancez le shell de la machine virtuelle Ubuntu
Au lieu d'exécuter des commandes de votre système local sur Ubuntu VM, vous pouvez directement lancer son SHELL et exécuter les commandes ou effectuer des tests à votre guise.
$ multipass shell ostechnix-instance
Tapez "exit"
pour vous déconnecter de l'instance.
5. Trouver des instances disponibles à lancer
Comme je l'ai déjà dit, Multipass vous fournira la version actuelle de LTS, qui est Ubuntu 18.04 . Vous pouvez cependant lancer d'autres VM disponibles si vous le souhaitez.
Pour répertorier toutes les VM disponibles, exécutez :
$ multipass find
Exemple de résultat :
Image Aliases Version Description snapcraft:core core16 20200221 Snapcraft builder for Core 16 snapcraft:core18 20200221 Snapcraft builder for Core 18 core core16 20200213 Ubuntu Core 16 core18 20200210 Ubuntu Core 18 16.04 xenial 20200218.1 Ubuntu 16.04 LTS 18.04 bionic,lts 20200218 Ubuntu 18.04 LTS 19.10 eoan 20200129 Ubuntu 19.10 daily:20.04 devel,focal 20200226 Ubuntu 20.04 LTS
Comme vous le voyez, le noyau Snapcraft, le noyau Ubuntu, la version quotidienne d'Ubuntu 16.04, 18.04, 19.10 et 20.04 sont disponibles.
Pour lancer d'autres instances, spécifiez le nom de l'image comme ci-dessous.
$ multipass launch --name ostechnix-instance 19.10
Cette commande lancera une instance fonctionnant avec Ubuntu 19.10.
6. Créez des instances avec des spécifications personnalisées (nombre de processeurs, taille du disque dur et taille de la mémoire)
Par défaut, Multipass créera des machines virtuelles Ubuntu avec 1 processeur , Disque dur de 5 Go et 1 Go de RAM . C'est suffisant pour les tests de base.
Cependant, il se peut que vous souhaitiez parfois créer une machine virtuelle avec une configuration inférieure ou supérieure à la configuration par défaut. C'est aussi possible !
La commande suivante lancera une machine virtuelle avec 2 processeurs, 2 Go de RAM et 20 Go de disque dur.
$ multipass launch -c 2 -m 2G -d 20G -n ostechnix-instance
La taille peut être spécifiée avec le suffixe K (pour Ko), M (pour Mo), G (pour Go).
- Nombre minimal de processeurs autorisés :1
- Taille minimale autorisée du disque dur :512 Mo
- Taille de mémoire minimale autorisée :128 Mo
7. Trouver des informations sur les instances en cours d'exécution
Les informations sur les instances en cours d'exécution peuvent être visualisées par la commande suivante :
$ multipass info ostechnix-instance
Exemple de résultat :
Name: ostechnix-instance State: Running IPv4: 10.39.86.203 Release: Ubuntu 18.04.4 LTS Image hash: 3c3a67a14257 (Ubuntu 18.04 LTS) Load: 0.08 0.02 0.01 Disk usage: 999.1M out of 4.7G Memory usage: 74.0M out of 985.1M
8. Suspendre les instances
Pour suspendre une instance en cours d'exécution, exécutez :
$ multipass suspend ostechnix-instance
Vérifiez s'il est suspendu ou non en utilisant info
commande :
$ multipass info ostechnix-instance
Exemple de résultat :
Name: ostechnix-instance State: Suspended IPv4: -- Release: -- Image hash: 3c3a67a14257 (Ubuntu 18.04 LTS) Load: -- Disk usage: -- Memory usage: --
Comme vous pouvez le voir, mon ostechnix-instance est suspendu.
9. Démarrage et arrêt des instances
Pour arrêter une VM en cours d'exécution, exécutez :
$ multipass stop ostechnix-instance
Pour démarrer la VM :
$ multipass start ostechnix-instance
10. Gérer les machines virtuelles Ubuntu à partir de l'icône de la barre multipasse
Si vous n'êtes pas à l'aise avec les options de ligne de commande Multipass, vous pouvez gérer les machines virtuelles à partir de l'icône de la barre d'état Multipass.
Lancez l'interface graphique multipasse à partir du menu ou du tableau de bord de votre système hôte. Vous verrez alors l'icône Multipass sur votre barre d'état système.
Depuis l'icône du bac multipasses, vous pouvez :
- Démarrer/arrêter les VM,
- Accès au shell ouvert des VM en cours d'exécution,
- Désactiver/activer l'option de démarrage automatique multipasse,
- Quitter le multipasse.
11. Supprimer les VM
Une fois que vous avez terminé avec vos instances Ubuntu, vous pouvez les supprimer si elles ne sont plus nécessaires.
Arrêtez d'abord la machine virtuelle que vous souhaitez supprimer.
$ multipass stop ostechnix-instance
Ensuite, supprimez-le de votre hôte local à l'aide des commandes :
$ multipass delete ostechnix-instance
$ multipass purge
12. Obtenir de l'aide
Exécutez la commande suivante pour afficher la liste des options et sous-commandes disponibles avec la description.
$ multipass help
Exemple de résultat :
Usage: multipass [options] <command> Create, control and connect to Ubuntu instances. This is a command line utility for multipass, a service that manages Ubuntu instances. Options: -h, --help Display this help -v, --verbose Increase logging verbosity, repeat up to three times for more detail Available commands: delete Delete instances exec Run a command on an instance find Display available images to create instances from get Get a configuration setting help Display help about a command info Display information about instances launch Create and start an Ubuntu instance list List all available instances mount Mount a local directory in the instance purge Purge all deleted instances permanently recover Recover deleted instances restart Restart instances set Set a configuration setting shell Open a shell on a running instance start Start instances stop Stop running instances suspend Suspend running instances transfer Transfer files between the host and instances umount Unmount a directory from an instance version Show version details
Pour afficher la section d'aide de chaque sous-commande :
$ multipass help <sub-command>
Exemple :
$ multipass help launch