KVM是什么?KVM 全称是 基于内核的虚拟机(Kernel-based Virtual Machine),它是一个 Linux 的一个内核模块,该内核模块使得 Linux 变成了一个 Hypervisor:
它由 Quramnet 开发,该公司于 2008年被 Red Hat 收购。
它支持 x86 (32 and 64 位), s390, Powerpc 等 CPU。
它从 Linux 2.6.20 起就作为一模块被包含在 Linux 内核中。
它需要支持虚拟化扩展的 CPU。
它是完全开源的。
KVM 是基于虚拟化扩展(Intel VT 或者 AMD-V)的 X86 硬件的开源的 Linux 原生的全虚拟化解决方案。KVM 中,虚拟机被实现为常规的 Linux 进程,由标准 Linux 调度程序进行调度;虚机的每个虚拟 CPU 被实现为一个常规的 Linux 进程。这使得 KMV 能够使用 Linux 内核的已有功能。
但是,KVM 本身不执行任何硬件模拟,需要客户空间程序通过 /dev/kvm 接口设置一个客户机虚拟服务器的地址空间,向它提供模拟的 I/O,并将它的视频显示映射回宿主的显示屏。目前这个应用程序是 QEMU。
环境:
centos7服务器一台
qemu-kvm为 kvm 提供底层仿真支持
libvirt-daemon为libvirtd 守护进程,管理虚拟机
libvirt-client为用户端软件,提供客户端管理命令
libvirt-daemon-driver-qemu为libvirtd 连接 qemu 的驱动
virt-manager为图形管理工具
要求:
关闭本机的SELinux保护、防火墙服务
挂载光盘到 /mnt/dvd,将其配置为本机YUM源(baseurl = file:///mnt/dvd)
安装KVM相关包组,确保已启用 libvirtd 服务
一 配置本地yum仓库
1.在光驱中插入CentOS7的系统光盘(若是虚拟机则连接相应ISO文件),然后在系统中将光盘挂载到/mnt目录
<font size="3">[root@kvmsvr ~]# mkdir /mnt/dvd //创建挂载点
[root@kvmsvr ~]# vim /etc/fstab //添加开机挂载配置
.. ..
/dev/cdrom /mnt/dvd iso9660 ro 0 0
[root@kvmsvr ~]# mount -a //根据fstab配置挂载光盘
mount: /dev/sr0 is write-protected, mounting read-only</font>
复制代码
2.确认/mnt/dvd访问点
<font size="3">[root@kvmsvr ~]# ls /mnt/dvd/Packages/*.rpm //确认软件包位置
.. ..
/mnt/Packages/zsh-5.0.2-14.el7.x86_64.rpm
/mnt/Packages/zziplib-0.13.62-5.el7.i686.rpm
/mnt/Packages/zziplib-0.13.62-5.el7.x86_64.rpm</font>
复制代码
3.将本地目录/mnt/dvd配置为本机的yum源
<font size="3">[root@kvmsvr ~]# vim /etc/yum.repos.d/mnt_dvd.repo
[mnt_dvd]
name=added from: file:///mnt/dvd
baseurl=file:///mnt/dvd
enabled=1
gpgcheck=0 //禁止GPG检查
[root@kvmsvr ~]# yum repolist //列出可用仓库
……</font>
复制代码
<font size="3">[root@kvmsvr ~]# yum -y install qemu-kvm libvirt-daemon libvirt-client libvirt-daemon-driver-qemu virt-manager</font>
复制代码
2.确保libvirtd服务可用
<font size="3">[root@kvmsvr ~]# systemctl restart libvirtd
[root@kvmsvr ~]# systemctl enable libvirtd</font>
复制代码
3.确保虚拟系统管理器(virt-manager)可用
在KVM服务器的桌面环境中,可以通过“应用程序”菜单组找到“系统工具”-->“虚拟系统管理器”快捷方式,如图所示。
单击可以成功开启KVM管理工具(如下图所示),可以看到还没有任何虚拟机。
推荐文章++++
文章好看点这里