Skip to main content

How to manage virtual machines in Cockpit

Create and manage virtual machines through Cockpit's centralized control panel.
Cockpit with pilot at controls

Photo by ThisIsEngineering from Pexels

Cockpit is an easy application to love. It puts your entire fleet of servers and workstations in a centralized control panel and gives you a fair amount of control over them. Perhaps it's unsurprising that this includes virtual servers and workstations, but many sysadmins don't realize they can manage virtual machine creation from Cockpit.

Suppose you've been using virt-manager, GNOME Boxes, or some other tool to spin up virtual machines, but you use Cockpit for diagnostics and maintenance. In that case, you can now consolidate your tasks by managing virtual machines in the same interface.

Install Cockpit

To create and manage virtual machines with Cockpit, you must install the cockpit-machines module on the computer you run Cockpit on:

$ sudo dnf install cockpit-machines

This assumes you already have Cockpit and virtual machines running on the machine. If you're just starting out with these tools, install these requirements:

$ sudo dnf install \
cockpit cockpit-machine libvirtd

Start Cockpit and libvirtd:

$ sudo systemctl start libvirtd
$ sudo systemctl start Cockpit

To log in to Cockpit, open your web browser to localhost:9090 and enter your username and password.

Virtual machines in Cockpit

After installing the cockpit-machines module, there's a new Virtual Machines entry in the left column of Cockpit. Click on it to open the virtual machine panel.

If you run existing virtual machines with libvirt, Cockpit likely detects them and lists them in this panel. Should Cockpit fail to detect existing virtual machines, you can import them by clicking the Import VM button.

Just as GNOME Boxes or virt-manager do, Cockpit knows the virtual machine's state and can start or stop it. In the pop-up menu on the right, you can clone, rename, and delete the virtual machine.

Cockpit virtual machine view
(Seth Kenlon, CC BY-SA 4.0)

Create storage pools with Cockpit

A storage pool is space that you designate as being available to store virtual machine images. There's nothing necessarily special about it, but there's flexibility in what you can use.  For instance, you can set a network location, an iSCSI target, or a filesystem.

To create a storage pool, click the Storage pool button at the top of the virtual machine panel.

Cockpit storage pools
(Seth Kenlon, CC BY-SA 4.0)

Create a new virtual machine

You can create a virtual machine directly from Cockpit. To create a new one, click the Create VM button on the right side of the virtual machine panel.

[ Download the free Advanced Linux cheat sheet. ]

All the usual options are present. You can download a recent operating system version from a drop-down list, or you can choose an ISO image on your local drive, or you can have the virtual machine boot from a Preboot Execution Environment (PXE) server.

Creating a new VM
(Seth Kenlon, CC BY-SA 4.0)

Manage everything

Cockpit doesn't quite manage everything on your network, but it can manage a lot more than you might think from its default settings. Start using Cockpit to manage your virtual machines today, and you just might find yourself adding other modules to manage your Red Hat Enterprise Linux (RHEL) subscriptions, Podman containers, and more!

Topics:   Virtualization   Monitoring   Software  
Author’s photo

Seth Kenlon

Seth Kenlon is a UNIX geek and free software enthusiast. More about me

Try Red Hat Enterprise Linux

Download it at no charge from the Red Hat Developer program.