安装KVM并且在KVM中安装rhel7
KVM简单介绍
KVM是Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块。KVM是一块开源软件,基于内核的虚拟化技术,实际是嵌入系统的一个虚拟化模块,通过优化内核来使用虚拟化技术,该内核模块使得linux变成了一个hypervisor,虚拟机使用linux自身的调度器进行管理。
KVM的内核模块为kvm.ko,只用于管理虚拟CPU和内存。IO的虚拟化是交给linux内核和qemu来实现的。
libvirt是KVM的管理工具。libvirt包含后台daemon程序libvirtd、API库和命令行工具virsh,其中libvirtd是运行在后台的服务程序,接收和处理API请求;API库使得其他人可以开发基于libvirt的高级工具,比如virt-manager这个图形化的kvm管理工具;virsh是经常要使用的kvm命令行工具。
接下来演示在redhat7主机上安装KVM。
在安装kvm之前需要查看主机是否支持虚拟化?
主机支持虚拟化必须具备三个条件:
1、CPU必须是64位
2、CPU具有虚拟化功能
3、在BIOS中要开启虚拟化
因为kvm是要安装在redhat主机上,因此要查看redhat上是否支持虚拟化,通过查看CPU信息的命令来查看。
从flags字段中可以看到CPU两个标志,lm表明CPU为64位,vmx表示此CPU支持虚拟化功能。
当然也可以使用命令直接查看
KVM是基于内核的虚拟机,因此还要查看redhat系统也必须加载kvm模块。
安装KVM
KVM的软件都在redhat安装镜像里面,所以需要将安装镜像作为软件源。redhat的镜像文件作为redhat里面的虚拟机的软件源,我这里通过搭建ftp服务器来创建软件源。
1、首先安装vsftpd软件包
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
└─sda3 8:3 0 35G 0 part /
sr0 11:0 1 3.5G 0 rom
[root@localhost ~]# mount /dev/sr0 /mnt
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 35G 3.0G 33G 9% /
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.9G 84K 3.9G 1% /dev/shm
tmpfs 3.9G 9.0M 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sda1 1014M 169M 846M 17% /boot
tmpfs 781M 16K 781M 1% /run/user/42
tmpfs 781M 0 781M 0% /run/user/0
/dev/sr0 3.6G 3.6G 0 100% /mnt
[root@localhost ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm
warning: /mnt/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:vsftpd-3.0.2-21.el7 ################################# [100%]
安装ftp服务后,创建软件仓库目录/var/ftp/dvd,将镜像文件永久挂载到此目录下。
[root@localhost ~]# mkdir /var/ftp/dvd
[root@localhost ~]# vi /etc/fstab
[root@localhost ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Wed Feb 24 15:34:07 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=e260d75c-d83a-45fe-b084-a5016087f284 / xfs defaults 0 0
UUID=bbce0f47-6db0-4d4a-a37f-025ed12a45ca /boot xfs defaults 0 0
UUID=c299518f-7ce3-430b-872d-7d30e5ec3b98 swap swap defaults 0 0
/dev/sr0 /var/ftp/dvd iso9660 defaults 0 0
[root@localhost ~]# mount /dev/sr0 /var/ftp/dvd
重新启动vsftpd服务,并设置开机启动vsftpd服务,再创建软件仓库的配置文件dvd.repo,指向前面新建的/var/ftp/dvd中存放的软件仓库。
安装kvm,通常需要三个包:qemu-kvm,libvirt和virt-manager。qemu-kvm主要提供kvm模拟器,libvirt提供相关的库文件,virt-manager提供虚拟机管理器。
[root@localhost ~]# yum -y install qemu-kvm libvirt virt-manager
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-