欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

程序员文章站 2022-07-03 11:28:50
...

一、环境介绍

1、查看系统版本

[aaa@qq.com ~]# cat /etc/centos-release
CentOS Linux release 7.7.1908 (Core)
[aaa@qq.com ~]# uname -r
3.10.0-1062.el7.x86_64

2、验证CPU是否支持虚拟化

输入有vmx或svm就支持,支持虚拟化则就支持KVM

[aaa@qq.com ~]# 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 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt xsaveopt xsavec arat
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt xsaveopt xsavec arat

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
我们看到我的这台电脑支持的vmx ,intel的虚拟化

3、分区大小

在这里需要注意的是,安装系统的时候建议给var分区大一点,我这里给了根分区150G,所以等下要自定义存储池,不能使用默认的池。

[aaa@qq.com ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 3.8G     0  3.8G    0% /dev
tmpfs                    3.9G     0  3.9G    0% /dev/shm
tmpfs                    3.9G   13M  3.8G    1% /run
tmpfs                    3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/mapper/centos-root  150G  4.0G  147G    3% /
/dev/sda1                497M  177M  321M   36% /boot
/dev/mapper/centos-var   3.5G  518M  3.0G   15% /var
/dev/mapper/centos-home   30G   39M   30G    1% /home
tmpfs                    781M  8.0K  781M    1% /run/user/42
tmpfs                    781M     0  781M    0% /run/user/0

二、安装KVM

yum install qemu-kvm qemu-img \
 virt-manager \
 libvirt libvirt-python libvirt-client  \
 virt-manager \
 virt-install \
 virt-viewer -y
  • qemu-kvm: KVM模块
  • libvirt: 虚拟管理模块
  • virt-manager: 图形界面管理虚拟机
  • virt-install: 虚拟机命令行安装工具
    CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

1、启动libvirt并设置开机自启

[aaa@qq.com ~]# systemctl start libvirtd && systemctl enable libvirtd

2、查看KVM模块加载

lsmod | grep kvm
[aaa@qq.com ~]# lsmod | grep kvm
kvm_intel             188644  0 
kvm                   621480  1 kvm_intel
irqbypass              13503  1 kvm

三、KVM安装虚拟机方法介绍

序号 安装方式 重要程度 难易程度及是否常用
01 图形方式安装 非常重要 非常简单
02 完全文本模式 现场配置虚拟机的规格 一般适用于不带图形界面的宿主机
03 命令行模式 重中之重 非常常用,模板镜像+配置文件
04 通过飞机驾驶舱安装和管理虚拟机 了解

飞机驾驶舱

我们先介绍一下这个飞机驾驶舱模式,其他几种我们在后面分章节重点讲解
首先需要安装cockpit

yum -y intall cockpit
systemctl start cockpit

然后浏览器访问:
服务器地址+9090端口,然后输入kvm服务器的root和密码即可登陆。

127.0.0.1:9090

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

四、图形化安装虚拟机

因为我的服务器是分区是自定义分区,所以根目录空间最大。

[aaa@qq.com ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 3.8G     0  3.8G    0% /dev
tmpfs                    3.9G     0  3.9G    0% /dev/shm
tmpfs                    3.9G   13M  3.8G    1% /run
tmpfs                    3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/mapper/centos-root  150G  9.1G  141G    7% /
/dev/sda1                497M  177M  321M   36% /boot
/dev/mapper/centos-var   3.5G  532M  3.0G   15% /var
/dev/mapper/centos-home   30G   40M   30G    1% /home
tmpfs                    781M     0  781M    0% /run/user/0
tmpfs                    781M   40K  781M    1% /run/user/1000
[aaa@qq.com ~]# 

所以我准备在根目录新建kvmdata目录用来做存储池。

[aaa@qq.com ~]# mkdir /kvmdata

进入图形化

[aaa@qq.com pokes]# virt-manager

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
新建虚拟机
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
我们点击浏览选择镜像位置。但是在选择镜像之前还必须创建存储池。

1、创建存储池

名称可以随便起,但是最好和目录名一致。
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
上图中类型中,我们选择dir:文件系统,从下图中可以看到支持的种类很多:
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
这里我们就不一一介绍了,我们继续我们的实验。

2、选择存储池的路径

抱歉图中的字敲错了,应该是存储池的路径

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
这样我们的存储池就创建完了。接下来我们找到镜像的位置。
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

3、创建存储卷

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
在下图中的格式中有三种选择可供选择,我们这里选择默认qcow2
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)
CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

注意:在这里容易出现报错

我在这里遇到了,引导失败:找不到DEFAULT或UI配置指令! 这个问题是你的iso镜像有问题,我重新在阿里云下载了镜像之后,问题就解决了。

CentOS7.8安装部署KVM虚拟机(并解决找不到DEFAULT或UI配置指令的报错)

五、查看虚拟机

[aaa@qq.com ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 2     centos7.0-01                   running

命令行安装

[aaa@qq.com ~]# virt-install --name template --ram=10240 --vcpus=2 \
--cdrom=/home/iso/CentOS-7-x86_64-DVD-1708.iso \
--disk path=/home/images/template.qcow2,size=10 \
--network network=default --graphics vnc
  • –name:虚拟机的名字
  • –ram:虚拟机的内存
  • –vcpus:虚拟机的cpu个数
  • –cdrom:从本地安装
  • –disk:生成的磁盘文件的路径,可以自动生成,也可以提前创建
  • size:磁盘的大小
  • –network:指定网络模式,default为nat模式

安装完成后,查看

[aaa@qq.com ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 3     centos7.0-2                    running
 4     centos7.0                      running
相关标签: KVM