Centos7 下通过KVM创建虚拟机
注:该Centos7也是虚拟机,由VMware创建,兵器开启了虚拟化支持:
1、安装KVM:
centos7环境 yum install qemu virt kvm -y
启动服务 : systemctl start libvirtd
2、通过图形化界面创建虚拟机
执行 virt-manager 打卡图形化界面 报错:
Failed to probe QEMU binary with QMP: /usr/libexec/qemu-kvm: symbol lookup error: /usr/libexec/qemu-kvm: undefined symbol: epoxy_eglExportDMABUFImageQueryMESA
解决办法:补充安装 yum install libepoxy -y
如果点击没有反应,卡住,请执行 virt-manager -debug 边创建边 查看日志,发现日志,KVM出现 GDK 图形界面异常:
DEBUG (cli:257) Uncaught exception:
Traceback (most recent call last):
File “/usr/share/virt-manager/virtManager/createnet.py”, line 830, in finish
self.set_finish_cursor()
File “/usr/share/virt-manager/virtManager/baseclass.py”, line 272, in set_finish_cursor
cursor = Gdk.Cursor.new_from_name(gdk_window.get_display(), “progress”)
TypeError: constructor returned NULL
需要编辑 /usr/share/virt-manager/virtManager/baseclass.py 将其中涉及Gdk.Cursor.new_from_name行注释掉
#cursor = Gdk.Cursor.new_from_name(gdk_window.get_display(), “progress”)
#gdk_window.set_cursor(cursor)
#cursor = Gdk.Cursor.new_from_name(gdk_window.get_display(), “default”)
#gdk_window.set_cursor(cursor)
同样编辑 /usr/share/virt-manager/virtManager/asyncjob.py 将其中涉及 Gdk.Cursor.new_from_name 行注释掉:
#gdk_window.set_cursor(
参考:https://blog.csdn.net/weixin_40762393/article/details/106406441
https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=49136
客户端安装完成后,需要为其设置网络接口,以便和主机网络、客户机之间的网络通信。事实上,如果要在安装时使用网络通信,需要提前设置客户机的网络连接。
kvm客户机网络连接有两种方式:
用户网络(User Networking):NAT方式,让虚拟机访问主机、互联网或本地网络上的资源的简单方法,但是不能从网络或其他的客户机访问客户机,性能上也需要大的调整。
虚拟网桥(Virtual Bridge):Bridge方式,这种方式要比用户网络复杂一些,但是设置好客户机与互联网,客户机与主机之间的通信都很容易。
Bridge方式原理:
Bridge方式即虚拟网桥的网络连接方式,是客户机和子网里面的机器能够互相通信。可以使虚拟机成为网络中具有独立IP的主机。
桥接网络(也叫物理设备共享)被用作把一个物理设备复制到一台虚拟机。网桥多用作高级设置,特别是主机多个网络接口的情况。
Bridge方式的适用范围:服务器主机虚拟化。
由于图形化界面安装太卡,最后用命令行安装:
virt-install --name=centos7kvm02 --memory=2048,maxmemory=2048 --vcpus=1,maxvcpus=2 --os-type=linux --location=/var/lib/docker/CentOS-7-x86_64-DVD-1611.iso --disk path=/kvm_data/centos7kvm02.qcow2,size=8 --graphics=none --console=pty,target_type=serial --extra-args=“console=tty0 console=ttyS0”
开始安装后,正常的情况下会进入到这样一个界面:
这是让我们配置语言、时区、安装源、网络、密码等信息,就和我们在VMware里安装CentOS虚拟机是一样的,只不过这个是命令行形式,而VMware里是图形界面罢了:
首先设置语言,按数字1,回车进入以下界面:
例如我要选Chinese就按数字68并回车即可,回车之后会让你选择是中文简体还是繁体,也是按下相应的数字并回车即可:
配置完成之后又会再次回到配置界面,这次我们来设置时区:
设置系统安装盘:
按 C 键,继续其他设置,操作步奏类似,在此设置root密码、网络、用户过程略,最后 按 B 键 开始安装:
最后安装完成,输入root密码直接进入创建的虚拟机:
如果发现不能上外网,ip a 查看网卡发现网卡没有获取到 IP地址,可以通过重启网卡重新通过DHCP方式获取IP地址,一般可以解决:
或者 dhclient ifcfg-ens2 或者 service network start 都可以试试。