第九章 KVM虚拟化技术

1.介绍

KVM(Kernel-based Virtual Machine 的缩写)是一个 Linux 虚拟化应用程序,它使用户能够将他们的机器变成管理程序并在隔离的环境中运行多个虚拟机。

2.安装 KVM

2.1检查您的系统是否支持硬件虚拟化

[root@gzh-cs8 ~]# cat /proc/cpuinfo | egrep "vmx|svm"

输入该命令如果返回为空值,要在虚拟机设置里面把虚拟化打开,

如下图:

如果提示该平台不支持嵌套虚拟化

请参考这篇文章:https://blog.csdn.net/qq_44777532/article/details/124662130

启动成功后在输入上面的命令输出如下:

[root@gzh-cs8 ~]# cat /proc/cpuinfo | egrep "vmx|svm"
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl tsc_reliable nonstop_tsc cpuid extd_apicid pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext ssbd ibrs ibpb vmmcall fsgsbase bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero wbnoinvd arat npt svm_lock nrip_save vmcb_clean flushbyasid decodeassists umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor fsrm

2.2安装KVM

yum update
yum install @virt

接下来,启动并启用libvirtd服务:

[root@gzh-cs8 yum.repos.d]# systemctl enable --now libvirtd

安装 KVM 管理所需的工具:

[root@gzh-cs8 yum.repos.d]# yum -y install virt-top libguestfs-tools

3.验证 KVM 安装

[root@gzh-cs8 yum.repos.d]# lsmod | grep kvm
kvm_amd               110592  0
ccp                    98304  1 kvm_amd
kvm                   847872  1 kvm_amd
irqbypass              16384  1 kvm

4.配置桥接接口

从管理程序网络外部访问 VM 需要桥接接口。要创建桥接接口,首先要确定连接到您机器的网络接口:

[root@gzh-cs8 yum.repos.d]# nmcli con
NAME    UUID                                  TYPE      DEVICE 
ens160  af04ba70-cb39-4017-afed-3f23f616c00c  ethernet  ens160 
virbr0  6784c1a0-80cb-49b9-871a-a6fc05068cf0  bridge    virbr0 

因为我们是虚拟机只需要再增加一个桥接网卡即可

5.创建虚拟机

要在 CentOS 8 中通过命令行创建 VM,使用virt-install命令。

[root@gzh-cs8 yum.repos.d]# virt-install --name=Ubuntu-20-04 --file=/var/lib/libvirt/images/ubuntu20-04.dsk --file-size=15 --nonsparse --graphics spice--vcpus=2--ram=2048--cdrom=Downloads/ubuntu-20.04.1-desktop-amd64.iso--network bridge=br1 --0s-type=linux--os-variant=generic

通过这个命令完成虚拟机的创建,还有一种图形化界面的创建方式,这里就不做演示.