KVM Test
Lab environment
VMwareWorkstation15 pro+Ubuntu18.10 64bit server VM function as hostserver
Pre-installation checklist
Check that your CPU supports hardware virtualization
vmx(Intel),svm(AMD)
$egrep -o '(svm|vmx)' /proc/cpuinfo
vmx vmx vmx vmx
$sudo kvm-ok
INFO: /dev/kvm exists KVM acceleration can be used
Use a 64bit kernel (if possible)
$egrep -c 'lm' /proc/cpuinfo
$uname -m
Install KVM
Install Necessary Packages
$vi /etc/apt/sources.list
deb http://mirrors.163.com/ubuntu cosmic main restricted deb http://mirrors.163.com/ubuntu cosmic-updates main restricted deb http://mirrors.163.com/ubuntu cosmic universe deb http://mirrors.163.com/ubuntu cosmic-updates universe deb http://mirrors.163.com/ubuntu cosmic multiverse deb http://mirrors.163.com/ubuntu cosmic-updates multiverse deb http://mirrors.163.com/ubuntu cosmic-backports main restricted universe multiverse deb http://mirrors.163.com/ubuntu cosmic-security main restricted deb http://mirrors.163.com/ubuntu cosmic-security universe deb http://mirrors.163.com/ubuntu cosmic-security multiverse
$sudo apt update
$sudo apt-get install qemu-kvm qemu-system libvirt-daemon-system libvirt-clients bridge-utils vlan
The libvirt-bin package was split into two parts:
libvirt-daemon-system
libvirt-clients
In most cases you probably want both of them at the same time.
Verify Installation
$virsh list --all
Config libvirtd service
$sudo service libvirtd start
$sudo update-rc.d libvirtd enable
$sudo service libvirtd status
Network configuraton
Config network bridge:br0
$sudo vi /etc/netplan/50-cloud-init.yaml
network: ethernets: ens33: dhcp4: no dhcp6: no version: 2 bridges: br0: interfaces: [ens33] dhcp4: no addresses: [192.168.1.6/24] gateway4: 192.168.1.1 nameservers: addresses: [192.168.1.1]
Try network configuration
$sudo netplan try
Apply configuration
$sudo netplan apply
Check network bridge status
$sudo networkctl status -a
● 2: ens33 Link File: /lib/systemd/network/99-default.link Network File: /run/systemd/network/10-netplan-ens33.network Type: ether State: carrier (configured) Path: pci-0000:02:01.0 Driver: e1000 Vendor: Intel Corporation Model: 82545EM Gigabit Ethernet Controller (Copper) (PRO/1000 MT Single Port Adapter) HW Address: 00:0c:29:0e:d3:06 (VMware, Inc.) ● 3: br0 Link File: /lib/systemd/network/99-default.link Network File: /run/systemd/network/10-netplan-br0.network Type: bridge State: routable (configured) Driver: bridge HW Address: be:82:2a:0d:c9:ef Address: 192.168.1.6 fe80::bc82:2aff:fe0d:c9ef Gateway: 192.168.1.1 (China Mobile (Hangzhou) Information Technology Co., Ltd.) fe80::1 (China Mobile (Hangzhou) Information Technology Co., Ltd.) DNS: 192.168.1.1
$ifconfig
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.6 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::bc82:2aff:fe0d:c9ef prefixlen 64 scopeid 0x20<link> ether be:82:2a:0d:c9:ef txqueuelen 1000 (Ethernet) RX packets 2993 bytes 871683 (871.6 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1918 bytes 179158 (179.1 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 ether 00:0c:29:0e:d3:06 txqueuelen 1000 (Ethernet) RX packets 230935 bytes 179349586 (179.3 MB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2565 bytes 244642 (244.6 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Install Desktop GUI
$sudo apt-get install xinit
$sudo apt-get install gdm3
$sudo apt-get install kubuntu-desktop
Create VM
virt-manager GUI
Prepare image
Download ‘cirros-0.3.6-x86_64-disk.img’ from http://download.cirros-cloud.net/
Put it to /var/lib/libvirt/images/ using winscp
Start virt-manager GUI
$virt-manager