kvm虚拟化存储管理 1.KVM 存储虚拟化介绍 2.目录类型的 Storage Pool 3. 创建Storage Pool 4. 虚机添加volume

KVM 的存储虚拟化是通过存储池(Storage Pool)和卷(Volume)来管理的。

Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种型;

Volume 是在 Storage Pool 中划分出的一块空间,宿主机将 Volume 分配给虚拟机,Volume 在虚拟机中看到的就是一块硬盘。

2.目录类型的 Storage Pool

文件目录是最常用的 Storage Pool 类型。KVM 将宿主机目录 /var/lib/libvirt/images/ 作为默认的 Storage Pool

Volume 是该目录下面的文件了,一个文件就是一个 Volume。

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

那 KVM 是怎么知道要把 /var/lib/libvirt/images 这个目录当做默认 Storage Pool 的呢?

实际上 KVM 所有可以使用的 Storage Pool 都定义在宿主机的 /etc/libvirt/storage 目录下,每个 Pool 一个 xml 文件,如下:

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

默认有一个 default.xml,其内容如下:注意:Storage Pool 的类型是 “dir”,目录的路径就是/var/lib/libvirt/images

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

3. 创建Storage Pool

(1)在 virt-manager 中打开一台虚拟机,为其添加硬盘,执行如下:

(2)选择管理,弹出如下对话框,点击左侧“+”后弹出添加新存储池,随意起一个名称,点击“前进”

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

(3)在“目标路径”中写入准备新建存储池的路径,点击“完成”:

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

(4)之后新建出一个名为kem-storage的存储池,其路径为/kvm-storag

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

(5)删除存储池:首先停止存储池,再进行删除

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

4. 虚机添加volume

(1)添加volume,取名并设置大小:

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

(2)点击“完成”后,在kvm-storage中新建了一个volume的文件,点击“选择卷”:

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

(3)点击“完成”后,虚机中多了一个“磁盘2”

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

kvm虚拟化存储管理
1.KVM 存储虚拟化介绍
2.目录类型的 Storage Pool
3. 创建Storage Pool
4. 虚机添加volume

以上创建的卷 volume01.qcow2 是一个文件,路径在 /var/lib/libvirt/images/。使用文件做 Volume 有很多优点:存储方便、移植性好、可复制。

KVM 支持多种 Volume 文件格式:

raw:是默认格式,即原始磁盘镜像格式,移植性好,性能好,但大小固定,不能节省磁盘空间。

qcow2:是推荐使用的格式,cow 表示 copy on write,能够节省磁盘空间,支持 AES 加密,支持 zlib 压缩,支持多快照,功能很多。

vmdk:是 VMWare 的虚拟磁盘格式,也就是说 VMWare 虚机可以直接在 KVM上 运行。