콘텐츠로 이동

Cockpit KVM dashboard

Introduction

Cockpit is a server administration tool that provides an easy-to-use dashboard to manage your server. One feature of Cockpit is that with a package, it can manage KVM virtual machines from a web interface similar to VMware ESXi or Proxmox.

Prerequisites

  • A Rocky Linux server with hardware virtualization enabled
  • Access to the Rocky Linux dnf repositories

Installing Cockpit

Cockpit comes by default in Rocky Linux. However, KVM support does not come installed out-of-the-box. We will install it via dnf:

dnf install -y cockpit-machines

Also install libvirtd:

dnf install -y libvirt

Enabling cockpit

To enable both KVM virtualization and Cockpit, enable the systemd services:

systemctl enable --now libvirtd cockpit.socket

After you enable cockpit, open a browser to http://ip_address:9090 (note: replace ip_address with the IP address of your server):

Cockpit login screen

Login as a non-root user, and you should see a dashboard similar to the one shown here:

Cockpit dashboard

Creating a virtual machine

In this guide, you will create a Rocky Linux 9 virtual machine on your host system, using automation to add a username and root password.

To create a virtual machine in Cockpit, first click on the blue Turn on administrative access button, and enter your password if needed:

Cockpit dashboard as root

You are now logged in as root in Cockpit. In the sidebar, click on Virtual Machines:

Cockpit Virtual Machine dashboard

Then click on Create VM:

Virtual Machine create dialog

In the Operating system dropdown, select Rocky Linux 9 (Blue Onyx):

VM create dialog with Rocky Linux 9 selected

Next, click on Automation, and fill in the login details you want on your new VM:

VM create dialog with root password and username filed in

Finally, select Create and run.

In a few minutes, select your newly-created VM, you will have its IP address:

Our VM's IP address

SSH into your hypervisor, and SSH into the IP address from Cockpit. In this example, it is 172.20.0.103. You will be logged into your new server:

Our VM's terminal

Limitations

While Cockpit is great for creating and managing virtual machines, there are a few limitations to be aware of:

  • You cannot create a bridge interface.
  • You cannot create a new image in any storage pool, only the default one.

Fortunately, you can create these at the command line, and then Cockpit can use them.

Conclusion

Cockpit is an invaluable tool for managing a Rocky Linux server via a web interface. It is personally the author's go-to tool for creating virtual machines in their home lab. While cockpit-machines may not be as full-featured as ESXi or Proxmox, it gets the job done for 90% of hypervisor use cases.

Author: Neel Chauhan

Contributors: Ganna Zhrynova