Questa guida spiega cos'è il Multipass e come creare e avviare istantaneamente VM Ubuntu con Multipass in pochi secondi in Linux.
Cos'è Multipass?
Sono disponibili numerosi programmi e strumenti per distribuire VM Ubuntu a scopo di test e apprendimento. Alcuni di loro sono Docker , KVM , LXD , LXC , Proxmox , Vagabondo , VirtualBox e Vmware ecc.
Uso spesso KVM, Vagrant e Virtualbox per testare varie applicazioni su più distribuzioni Linux. Oggi impareremo a conoscere un'altra utilità di virtualizzazione denominata Multipass .
Che tu sia un utente normale, uno sviluppatore o un amministratore di sistema, puoi creare e avviare istantaneamente macchine virtuali Ubuntu con Multipass in Linux.
Multipass è un gestore di macchine virtuali a riga di comando leggero, sviluppato da Canonical team, per distribuire rapidamente istanze Ubuntu sul tuo computer locale.
Dal momento che Multipass ti fornisce le istanze aggiornate, non devi perdere tempo con gli aggiornamenti al lancio! Usando Multipass, puoi avviare rapidamente nuove VM Ubuntu e usarle per testare il tuo codice o applicazione.
Utilizza KVM su Linux, Hyper-V su Windows e HyperKit su macOS per eseguire la macchina virtuale con un sovraccarico minimo. Può anche utilizzare VirtualBox su Windows e macOS.
Puoi eseguire comandi nelle macchine virtuali direttamente dal tuo host locale o accedere alla shell della macchina virtuale ed eseguire da lì. È anche possibile montare una directory del tuo sistema host nelle istanze e condividere file e cartelle tra il sistema host e le VM.
Multipass è un'applicazione multipiattaforma che supporta GNU/Linux, macOS e Windows.
Installa Multipass su Linux
Multipass è disponibile come scatto pacchetto, quindi può essere installato su qualsiasi sistema operativo Linux che supporta snapd
.
Snap è preinstallato in tutte le versioni di Ubuntu a partire dalla versione 16.04 LTS, versioni di Ubuntu, Solus 3 e superiori, Zorin OS ecc. Su altri sistemi Linux, puoi installare Snapd come descritto in questo link .
Dopo aver installato Snapd, installa Multipass usando il comando:
$ sudo snap install multipass
Se non funziona per qualsiasi motivo, prova il seguente comando:
$ sudo snap install multipass --classic
Al termine dell'installazione Multipass, vedrai il seguente output:
multipass 1.0.2 from Canonical* installed
Ora andiamo avanti e distribuiamo le istanze di Ubuntu nel nostro sistema locale.
Crea e avvia VM Ubuntu con Multipass su Linux
L'esecuzione di macchine virtuali Ubuntu con Multipass è incredibilmente facile e diretta.
1. Avvia le macchine virtuali Ubuntu
Per scaricare e avviare una nuova macchina virtuale Ubuntu, esegui semplicemente:
$ multipass launch --name ostechnix-instance
Oppure,
$ multipass launch -n ostechnix-instance
Qui istanza ostechnix è il nome della mia macchina virtuale Ubuntu. Puoi nominare le VM a tuo piacimento.
Il comando precedente scaricherà un'istanza Ubuntu fresca e minima e la avvierà automaticamente.
Per impostazione predefinita, Multipass scaricherà la versione attuale di Ubuntu LTS.
2. Elenca le macchine virtuali
Per elencare le VM attualmente scaricate sul tuo sistema, esegui:
$ multipass list
Risultato di esempio:
Name State IPv4 Image ostechnix-instance Running 10.39.86.203 Ubuntu 18.04 LTS
Come puoi vedere nell'output sopra, una nuova istanza di Ubuntu denominata "otechnix-instance " viene lanciato ed è in esecuzione con Ubuntu 18.04 LTS versione. E l'indirizzo IP dell'istanza è 10.39.86.203 .
3. Esegui comandi nelle macchine virtuali dal sistema locale
Multipass ti consente di eseguire comandi all'interno delle tue istanze Ubuntu. Ad esempio, possiamo trovare i dettagli di sistema di una VM in esecuzione usando il comando:
$ multipass exec ostechnix-instance -- lsb_release -a
4. Avvia la shell di Ubuntu VM
Invece di eseguire comandi dal tuo sistema locale su Ubuntu VM, puoi avviare direttamente la sua SHELL ed eseguire i comandi o eseguire qualsiasi test a tuo piacimento.
$ multipass shell ostechnix-instance
Digita "exit"
per disconnettersi dall'istanza.
5. Trova le istanze disponibili da avviare
Come ho già detto, Multipass ti darà l'attuale versione LTS, che è Ubuntu 18.04 . Puoi, tuttavia, avviare altre VM disponibili, se lo desideri.
Per elencare tutte le macchine virtuali disponibili, esegui:
$ multipass find
Risultato di esempio:
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
Come vedi, sono disponibili Snapcraft core, Ubuntu core, Ubuntu 16.04, 18.04, 19.10 e 20.04 build giornaliere.
Per avviare qualsiasi altra istanza, specifica il nome dell'immagine come di seguito.
$ multipass launch --name ostechnix-instance 19.10
Questo comando avvierà un'istanza in esecuzione con Ubuntu 19.10.
6. Crea istanze con specifiche personalizzate (numero di CPU, dimensione del disco rigido e dimensione della memoria)
Per impostazione predefinita, Multipass creerà macchine virtuali Ubuntu con 1 CPU , Disco rigido da 5 GB e 1 GB di RAM . Questo è sufficiente per i test di base.
Tuttavia, a volte potresti voler creare una macchina virtuale con una configurazione inferiore o superiore a quella predefinita. È anche possibile!
Il comando seguente avvierà una macchina virtuale con 2 CPU, 2 GB di RAM e 20 GB di dimensione del disco rigido.
$ multipass launch -c 2 -m 2G -d 20G -n ostechnix-instance
La dimensione può essere specificata con il suffisso K (per KB), M (per MB), G (per GB).
- Numero minimo di CPU consentite:1
- Dimensione minima consentita del disco rigido:512 MB
- Dimensione minima consentita della memoria:128 MB
7. Trova le informazioni sulle istanze in esecuzione
Le informazioni sulle istanze in esecuzione possono essere visualizzate con il seguente comando:
$ multipass info ostechnix-instance
Risultato di esempio:
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. Sospendi le istanze
Per sospendere un'istanza in esecuzione, esegui:
$ multipass suspend ostechnix-instance
Verifica se è sospeso o meno utilizzando info
comando:
$ multipass info ostechnix-instance
Risultato di esempio:
Name: ostechnix-instance State: Suspended IPv4: -- Release: -- Image hash: 3c3a67a14257 (Ubuntu 18.04 LTS) Load: -- Disk usage: -- Memory usage: --
Come puoi vedere, la mia istanza ostechnix è sospeso.
9. Avvio e arresto di istanze
Per arrestare una macchina virtuale in esecuzione, esegui:
$ multipass stop ostechnix-instance
Per avviare la VM:
$ multipass start ostechnix-instance
10. Gestisci le VM Ubuntu dall'icona della barra delle applicazioni Multipass
Se non sei a tuo agio con le opzioni della riga di comando Multipass, puoi gestire le VM dall'icona Multipass nella barra delle applicazioni.
Avvia Multipass GUI dal menu o dal trattino del tuo sistema host. Vedrai quindi l'icona Multipass sulla barra delle applicazioni.
Dall'icona della barra multipass, puoi:
- Avvia/arresta VM
- Accesso alla shell aperta delle VM in esecuzione,
- Disabilita/abilita l'opzione di avvio automatico Multipass,
- Esci da Multipass.
11. Elimina le macchine virtuali
Una volta che hai finito con le tue istanze di Ubuntu, puoi eliminarle se non sono più necessarie.
Per prima cosa arresta la VM che desideri eliminare.
$ multipass stop ostechnix-instance
Quindi, eliminalo dal tuo host locale usando i comandi:
$ multipass delete ostechnix-instance
$ multipass purge
12. Ottenere aiuto
Esegui il comando seguente per visualizzare l'elenco delle opzioni e dei sottocomandi disponibili insieme alla descrizione.
$ multipass help
Risultato di esempio:
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
Per visualizzare la sezione della guida per ogni sottocomando:
$ multipass help <sub-command>
Esempio:
$ multipass help launch