Read on:

Beginners’ Guide for Microsoft Hyper-V: Overview of Hyper-V – Part 1
Beginners’ Guide for Microsoft Hyper-V: How to Install Microsoft Hyper-V Using Server Manager – Part 2
Beginners’ Guide for Microsoft Hyper-V: How to Install Microsoft Hyper-V with PowerShell – Part 3
Read More

Spinning new virtual machines by hand in Hyper-V is relatively easy. However, if you are spinning up new Linux virtual machines in Hyper-V for testing and other use cases like installing Kubernetes, Canonical provides a tool allowing you to install cloud-style VMs using a CLI. The tool is called Multipass, making provisioning new Linux virtual machines in Hyper-V extremely easy. Let’s see how to use it.

Protect Your Data with BDRSuite

Cost-Effective Backup Solution for VMs, Servers, Endpoints, Cloud VMs & SaaS applications. Supports On-Premise, Remote, Hybrid and Cloud Backup, including Disaster Recovery, Ransomware Defense & more!

What is Multipass?

Before diving into Multipass functionality, let’s first look at Multipass and what the tool is designed to do. Multipass is a free and open-source utility that provides a CLI interface to provision cloud-ready Ubuntu virtual machines in your environment.

One of the pain points with virtual machines is they are usually tedious to install and configure. However, using Multipass, you can easily create Ubuntu VMs on Linux, macOS, and Windows platforms, making this experience akin to spinning up new containers. In addition, you can pull down and provision new Linux virtual machines that are fully configured and ready to start applications from the command line.

It makes creating development environments quick and easy. Canonical also mentions creating use cases, including sandbox environments, and eliminating the need to dual boot. With Hyper-V, using Multipass provides a great way to create Kubernetes hosts.

Download Banner

Multipass Ubuntu VMs have the following advantages:

  • Hypervisor agnostic – Multipass is not specifically aligned with a particular hypervisor. It works with Hyper-V on Windows, QEMU, and HyperKit for macOS and LXD on Linux
  • Optimized performance – Multipass VMs are tuned for performance out of the box and have cloud-init baked into the virtual machine instance. If you have a cloud-init configuration file, you can import this into Multipass and fully customize your Multipass VM instances
  • VM catalog – Multipass provides access to a catalog of prebuilt VM images
  • Ubuntu appliance images – There are appliance images found in the Multipass catalog containing preconfigured software and configurations

Installing Multipass on a Hyper-V host

Once you have enabled the Hyper-V role on your Windows host, you need to install Multipass. The process of installing Multipass is straightforward. To download the Multipass installer on your host, browse the link here: Multipass orchestrates virtual Ubuntu instances.

Once you have downloaded the Multipass installer, simply run the installer, which is a relatively small .exe file of around 40 MB. Below, we are kicking off the installation of Multipass.

Multipass on Windows Hyper-V

Beginning the installation of Multipass

Accept the EULA for the Multipass installation.

Multipass on Windows Hyper-V

Accept the EULA

Next, we choose our hypervisor. Here, we are selecting Hyper-V.

Multipass on Windows Hyper-V

Select the hypervisor to use with Multipass

Add Multipass to the PATH configuration.

Multipass on Windows Hyper-V

Configuring PATH with Multipass

Choose the installation location for Multipass.

Multipass on Windows Hyper-V

Choose the installation location for Multipass

Here, we can leave the default components selected for installation.

Multipass on Windows Hyper-V

Configure and Install Multipass components

Finalize the installation of Multipass. Click Finish.

Multipass on Windows Hyper-V

Finish out the installation of Multipass

Command line installation

You can also install Multipass from the command line using Chocolatey. For example, to install Multipass using Chocolatey, you can use the command:

choco install multipass

Multipass commands

Now that we have Multipass installed let’s see how to pull down images for virtual machines. You can easily view the command available with Multipass by issuing the command:

multipass –help

Multipass on Windows Hyper-V

Viewing Multipass command help

You can view the images available with Multipass with the command:

multipass find

Multipass on Windows Hyper-V

Running the Multipass find command

Additional Multipass commands

Many other Multipass commands allow launching VMs to fit your specific needs. These include the following:

  • Launch a specific image – multipass launch
  • Name your Multipass image on launch – multipass launch –name
  • Create a new instance with specific CPU and memory configuration – multipass launch –cpus 4 –disk 20G –mem 8G
  • Launch an instance with additional network connections – multipass launch –network en0 –network name=External,mode=manual

Creating a new virtual machine using Multipass

How easy is it to create a new Hyper-V virtual machine with Multipass? You can use the two-word command:

multipass launch

When you issue the command, it will pull down the latest available Ubuntu cloud image for installation and automatically provision a new Hyper-V virtual machine. To view your Multipass instances, use the following:

multipass list

Multipass on Windows Hyper-V

Launching and listing Multipass instances

Multipass includes an easy way to interact with provisioned instances, with the task tray Multipass icon. When you click the icon in the task tray, you will see your running instance and the ability to Open Shell.

When you open the shell to your new Multipass instance, a new terminal session will open to your Multipass-provisioned VM. At this point, you can interact with the Ubuntu instance as if you are SSH’ed into the Linux virtual machine.

Multipass on Windows Hyper-V

Opening the shell to a running Multipass instance

Below, we are running a sudo apt update && sudo apt upgrade in the Multipass session.

Multipass on Windows Hyper-V

Updating a Multipass Ubuntu virtual machine instance

Deleting Multipass Virtual Machines

After provisioning virtual machines with Multipass, you can easily tear down your virtual machine environments as quickly as you create them. From the command line, you can use the following workflow:

  • multipass list – List your Multipass instances
  • multipass stop – Stop your running Multipass instances
  • multipass delete – Delete Multipass instances
  • multipass purge – Purge deleted Multipass instances

Multipass on Windows Hyper-V

Stopping and deleting Multipass instances

Multipass on Windows Hyper-V FAQs

What is Multipass?

Multipass is a free and open-source utility from Canonical, allowing you to launch Linux virtual machines from the command line. With Multipass, you have a very “container-like” experience when launching new virtual machines. The virtual machine images are tweaked and cloud-ready with cloud-init capability baked into the images. You can feed the Multipass command line a cloud-init configuration file, and it uses it to customize your VM image fully.

Can you launch Windows instances with Multipass?

Multipass is only for provisioning, configuring, and customizing Linux virtual machines.

Is Multipass free?

Yes, Multipass is a free tool from Canonical, the maker of Ubuntu. It is free to download; you don’t have to register with an email address to download the tool.

Wrapping Up

Multipass provides a quick and easy way to spin up virtual machines in a very “container-like” experience. In addition, it is a powerful and robust tool allowing you to create and delete virtual machines from the command line. For developers, DevOps professionals, IT admins with home labs, and others needing to spin up new virtual machines, Multipass is a great tool. It is also a great way to easily create virtual machines to learn and experiment within the Hyper-V environment for beginners working with Hyper-V.

Beginners Guide for Microsoft Hyper-V: How to Install Microsoft Hyper-V in Windows Server Core – Part 4
Beginners Guide for Microsoft Hyper-V: Remote Management of Hyper-V – Part 5
Beginners Guide for Microsoft Hyper-V: How to Install Hyper-V Server – Part 6
Beginner’s Guide for Microsoft Hyper-V: What is Azure Stack HCI – Part 7
Beginner’s Guide for Microsoft Hyper-V: Windows Admin Center Hyper-V Management – Part 8
Beginner’s Guide for Microsoft Hyper-V: Configuration of Hyper-V Networking Best Practices – Part 9
Beginner’s Guide for Microsoft Hyper-V: Hyper-V Storage Best Practices and Configuration – Part 10
Beginner’s Guide for Microsoft Hyper-V: How to build a Virtual Lab with Hyper-V – Part 11
Beginner’s Guide for Microsoft Hyper-V: Top 10 PowerShell Commands for Hyper-V – Part 12
Beginner’s Guide for Microsoft Hyper-V: How to Create a Hyper-V Virtual Machine – Part 13
Beginner’s Guide for Microsoft Hyper-V: Hyper-V Shared Storage for Beginners – Part 14
Beginner’s Guide for Microsoft Hyper-V: How to Create Hyper-V Cluster – Part 15
Beginner’s Guide for Microsoft Hyper-V: What is Non-Uniform Memory Access (NUMA) – Part 16
Beginner’s Guide for Microsoft Hyper-V: Hyper-V Dynamic Memory – Part 17
Beginner’s Guide for Microsoft Hyper-V: Cluster Aware Updating (CAU) – Part 18
Beginner’s Guide for Microsoft Hyper-V: Hyper-V Containers – Part 19
Beginner’s Guide for Microsoft Hyper-V: Managing Windows Server Containers with Windows Admin Center – Part 20
Beginner’s Guide for Microsoft Hyper-V: What are Hyper-V Checkpoints – Part 21
Beginners Guide for Microsoft Hyper-V: How to Create Cluster Shared Volumes (CSVs) – Part 22
Beginners’ Guide for Microsoft Hyper-V: VHD vs VHDX Vs AVHD/AVHDX: Overview of Virtual Disk Formats – Part 23
Beginners’ Guide for Microsoft Hyper-V: Hyper-V Live Migration – Part 24
Beginners’ Guide for Microsoft Hyper-V: Hyper-V High Availability – Part 25
Beginners’ Guide for Microsoft Hyper-V: How to Export and Import Hyper-V VM’s – Part 26
Beginners’ Guide for Microsoft Hyper-V: How To Install Docker Container on Windows Server – Part 27
Beginners’ Guide for Microsoft Hyper-V: How to Run Linux Containers on Hyper-V – Part 28
Beginners’ Guide for Microsoft Hyper-V: Containers vs Virtual Machines – Part 29
Beginners’ Guide for Microsoft Hyper-V: What is Azure Arc VM Management – Part 30
Beginners’ Guide for Microsoft Hyper-V: Azure Features in Windows Admin Center – Part 31
Beginners’ Guide for Microsoft Hyper-V: What is Microsoft Azure Arc – Part 32
Beginners Guide for Microsoft Hyper-V: How to Create a Virtual Switch in Hyper-V using Windows Admin Center – Part 33
Beginners Guide for Microsoft Hyper-V: Managing Hyper-V Server with Azure Arc – Part 34
Beginners Guide for Microsoft Hyper-V: Learn How to Install MicroK8s on Windows Kubernetes – Part 35
Beginners Guide for Microsoft Hyper-V: Top 8 Basic Docker Commands You Should Know – Part 36
Beginners’ Guide for Microsoft Hyper-V: Windows Docker Container Networking in Hyper-V – Part 37
Beginners’ Guide for Microsoft Hyper-V: How to run IIS in Docker Container – Part 38
Beginners’ Guide for Microsoft Hyper-V: How to install and run Linux on Windows with WSL – Part 39

Follow our Twitter and Facebook feeds for new releases, updates, insightful posts and more.

Rate this post