Linux Fu : VM faciles | Hackaday

Nous avons récemment examiné comment créer facilement des conteneurs Docker à partir de la ligne de commande afin que vous puissiez facilement créer un environnement virtuel pour le développement. Ne serait-ce pas formidable si vous pouviez également faire cela pour les machines virtuelles ? Tu peux le faire. En utilisant Multipass de Canonical, les fabricants d’Ubuntu, vous pouvez facilement faire tourner des machines virtuelles sous Linux, Mac ou Windows. Certes, la plupart des machines virtuelles en question sont des variantes d’Ubuntu, mais il existe des images supplémentaires disponibles et vous pouvez créer les vôtres.

Une fois que vous l’avez installé, démarrer une nouvelle instance d’Ubuntu est trivial. Si vous avez une configuration définie, vous pouvez également configurer des configurations prédéfinies à l’aide d’un fichier YAML.

Installation

Le processus varie selon la plate-forme, mais sur Ubuntu, l’installation de Multipass est aussi simple que :

sudo snap install multipass

Vous devez vous assurer que vous êtes sur un ordinateur qui peut prendre en charge les machines virtuelles. La /proc/cpuinfo le fichier doit avoir un vmx o svm drapeau (en fait, plusieurs d’entre eux ; un pour chaque cœur).

Catalogue

Vous pouvez voir toutes les images disponibles en exécutant :

multipass find

Naturellement, la plupart des images sont des versions d’Ubuntu, bien qu’il existe d’autres appareils comme anbox et nextcloud disponibles.

Supposons que vous souhaitiez effectuer des tests sur une instance Ubuntu bionic (18.04). Vous pouvez lancer une instance par défaut en exécutant la commande :

multipass launch bionic

Cependant, vous souhaitez généralement un peu plus de contrôle, car la valeur par défaut est un cœur de processeur, un gigaoctet de RAM et 5 Go de stockage sur disque. Supposons que vous vouliez 4 processeurs, 6 Go de RAM et un disque de 10 Go. Vous pouvez également fournir un nom pour la machine virtuelle :

multipass launch -c 4 -m 6G -d 10G -n hackaday-vm bionic

s’enfuir

Une fois que vous avez un groupe de machines virtuelles, vous voudrez peut-être voir comment elles fonctionnent :

multipass list

Vous pouvez les contrôler au démarrage et à l’arrêt. Vous pouvez également supprimer une machine.

multipass stop hackaday-vm
multipass start hackday-vm
multipass stop hackaday-vm
multipass delete hackaday-vm

Accéder

Alors qu’est-ce que tu en fais ? Par défaut, la machine démarre sur un réseau privé auquel vous ne pouvez accéder qu’à partir de la machine hôte. Il existe des moyens d’acheminer le trafic si vous en avez besoin.

Cependant, souvent, vous voulez juste un shell sur une nouvelle machine. C’est facile:

multipass shell hackaday-vm

Si vous souhaitez partager des données, vous pouvez monter un dossier hôte sur la machine virtuelle :

multipass mount ~/hackaday hackaday-vm

Si vous perdez tout, vous pouvez poser des questions sur une machine spécifique :

multipass info hackaday-vm

Name:           hackaday-vm 
State:          Running 
IPv4:           10.134.147.131 
Release:        Ubuntu 18.04.6 LTS 
Image hash:     5269cad5bc26 (Ubuntu 18.04 LTS) 
Load:           0.78 0.41 0.16 
Disk usage:     1.2G out of 9.5G 
Memory usage:   143.2M out of 5.8G 
Mounts:         /home/alw/hackaday => /home/alw/hackaday 
                   UID map: 0:default 
                   GID map: 0:default

C’est vraiment simple. Il existe d’autres commandes disponibles pour exécuter des programmes sur une machine ou configurer un réseau. Il y a aussi une interface graphique qui se trouve dans votre barre d’état système, mais si vous n’exécutez pas de machines virtuelles en tant que votre propre utilisateur, cela ne vous est pas utile.

Configuration

Si vous avez des choses que vous devez constamment configurer, vous pouvez automatiser cela. Vous créez un fichier yaml (appelé fichier d’initialisation cloud) et configurez des éléments tels que des utilisateurs, des packages, des clés ssh, etc. Notez que la norme autorise plusieurs formats, mais Multipass semble ne supporter que YAML.

L’autre chose que vous pouvez faire est d’utiliser Packer pour créer une nouvelle image de vous-même. C’est un peu compliqué, mais vous pouvez lire la documentation pour savoir comment procéder.

Avez-vous déjà mis en place un environnement de développement et au bout de quelques années vous constatez que tout est cassé à cause des mises à jour ? Avec des machines virtuelles, cela ne se reproduira plus jamais. Vous pouvez archiver tout l’environnement. Cela peut être important dans les environnements de production lorsque vous devez revenir à la manière exacte dont le code a été créé pour résoudre un problème. C’est également très important pour les logiciels critiques pour la sécurité où vous devez parfois créer exactement le même exécutable et prouver que vous pouvez le faire. Les machines virtuelles rendent cela facile et Multipass est un moyen facile de créer et d’utiliser même plusieurs types de machines virtuelles. Le fait qu’il fonctionne lui-même sur plusieurs plates-formes est également une fonctionnalité intéressante.

Leave a Reply

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