作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
虚拟化,简单来说就是把一台服务器/PC电脑,虚拟成多台独立的虚拟机,每台虚拟机之间相互隔离,每个虚拟机都有自己独立的操作系统,磁盘,网络资源。虚拟化是一个很庞大的系统,我的介绍主要是帮助你入门,让你了解基本技术原理,具备搭建操作虚拟化的能力。由于涉及到内容较多,这里的目录就只是以简单分类介绍和说明,不再针对单个小节进行目录列出,主要涉及的分类包括以下几个方面:
1.虚拟化介绍(本小节属于)
2.kvm基本使用
3.kvm进阶使用
4.kvm技术原理
5.vmware介绍&使用
6.小结
介绍镜像格式之前,我们先介绍一种特殊的文件。
稀疏文件(Sparse file)是指在文件系统中分配了实际内容相对较少的存储空间,但是它们能占据的磁盘空间却可能大于它们的实际内容大小。这种文件通常包含大量的空洞(即未写入实际数据的部分),但文件系统仍会为其分配存储空间。
简单来说,我有100G的空间,我可以给你们20个人,每个人分配80G空间,但是你们实际占有的1g,有的10g,平均只有3g,这样我们不仅可以限制所有人的最大使用空间,也可以实现超售。
在目前的公有云你买的磁盘都是这样的。下面我们就来介绍我们创建虚拟机的重要的设备之一存储。
镜像文件(Image File)是一种用于存储操作系统、应用程序和数据的文件。在虚拟化环境中,镜像文件通常用于创建虚拟机的磁盘。在KVM虚拟化中,两种常见的镜像格式是img和qcow2。
#创建镜像文件
qemu-img create -f raw ./image_file.img 20G
qemu-img create -f qcow2 ./image_file.qcow2 20G
这里的2个文件都是空文件,可以用于安装虚拟机使用。但是这个img文件在进行网络传输的时候会会被当成20g的文件的,即便它是空的。我们当然有办法对他进行压缩,然后传输的时候以实际占用大小为准,这个在我们讲kvm-迁移的时候再具体说说。
这几个文件都是已经安装好了系统的文件,如果把这个文件复制出来用kvm启动它,它就是一个可用的虚拟机。根据上面的提示,我们创建虚拟机需要先准备一个qcow2文件,有没有一种方式可以更方便来管理我们的虚拟机的镜像文件呢?
pool
KVM(Kernel-based Virtual Machine)是一种开源的虚拟化技术,而 KVM pool(存储池)是用于管理虚拟机存储资源的一种机制。
一、KVM pool 的作用
二、KVM pool 的操作
查看当前pool
[root@MiWiFi-RD03-srv yum.repos.d]# virsh pool-list
Name State Autostart
-------------------------------------------
创建pool
这样我们在创建虚拟机的时候,就可以直接使用这个pool,而不需要为每个虚拟机先创建一个镜像文件。