Ubuntu uses KVM as the back-end virtualization technology primarily for non-graphic servers and libvirt as its toolkit/API. Libvirt front ends for managing VMs include virt-manager (GUI) or virsh (CLI).
Installation - Installation and removal of KVM
Networking - Network configuration; includes bridging
Guest Creation - Creation of different kinds of guests
Guest Management - Management of guests; command line or graphically
Guest Console Access Direct access to the guest via the serial console
KVM Directly - Using KVM directly (without libvirt)
FAQ - Frequently asked questions, troubleshooting tips and other recommendations
Also check out the official docs, https://ubuntu.com/server/docs/virtualization-introduction
The use case targeted when KVM was moved into main is "server virtualization". This means that even though KVM can be used to serve other purposes, it has been designed to be run on Ubuntu Server Edition to host non-graphical server operating systems. If you are looking for software to serve graphically-based virtual machines, VirtualBox, Parallels Workstation (or Parallels Desktop for Mac), or VMware Player/Server are more suitable alternatives.