继续 教程的第三部分,我们将讨论如何使用 virt-manager GUI 工具创建和管理 KVM 存储卷和池。
我们日常会使用到不同文件系统的存储设备,当然还有一些网络存储技术,例如 ISCSI、SAN、NAS等。
作为虚拟环境,其基本概念也没有什么不同,只是把日常使用基本概念部署到强大且可扩展的虚拟存储平台。
在 KVM 环境中,可以将块设备或文件用作客户机操作系统中的本地存储设备。
实际操作是使用主机的物理存储设备来创建虚拟机的卷。可以把这个卷理解为虚拟机的虚拟磁盘。如之前所说,这里的卷可以是块设备或文件。
出于性能的考虑,块设备具有较高的优势。同样,块文件在系统管理和存储容量使用方面同样占有较高的优势。当然,如果虚拟机操作系统对于磁盘性能没有特殊要求,则倾向使用磁盘映像文件。
同时,存储卷又可以是存储池的一部分。事实上,我们至少要拥有一个存储池才能够创建存储卷。
我们继续本部分的内容,如果想了解系列的全部内容,点击 >>这里<<
1] 在 KVM 中创建存储池
首先,我们先查看一下 KVM 主机的存储池情况,以便更加系统的了解资源分配。打开虚拟机管理器,选中本地 KVM 服务器,点击鼠标右键,选择”Details”,就会见到如下信息窗口,选择”Storage”选择卡,就可以了解当前存储池情况:
图.1 KVM 主机存储信息
可以看到,当前主机具有两个存储池,一个是系统的默认存储池”default”,另一个是之前添加操作系统镜像时系统自动添加的文件目录。两个存储池的类型都是文件系统目录,如果在对应的存储池中添加存储卷,则生成的文件会保存在该池的目录中。
创建新的存储池,点击存储池列表下面的加号按钮,就会弹出创建存储池窗口,通过下拉列表框,可以创建不同类型的存储池:
图.2 创建新的存储池
存储池的类型不尽相同,说明如下:
- dir:指文件目录
- disk:指物理磁盘
- fs:指未格式化的块设备
- glustr:指群集文件系统
- iscsi:指 iSCSI 目标
- logical:指 LVM 卷组
- mpath:指多路径设备模拟器
- netfs:指网络输出目录
- rbd:指 RADOS 块设备
- scsi:指 SCSI 主同适配器
- sheepdog:指 Sheepdog 文件系统
- zfs:指 ZFS 存储池
我们当然没有必要了解以上类型的全部细节,熟悉其中的几个常类型即可。首先创建一个最为常见的目录(dir)类型存储池。
目录类型存储池不需要过多的设置,创建时选择该类型,输入存储池名称:
图.3 创建文件目录型存储池
点击”Forward”继续,设置好存储池的实际文件目录后,就完成了存储池的创建:
图.4 设置文件存储池目标路径
此时,存储池列表中就会增加一个存储池”myPool”:
图.5 KVM 存储池列表
我们将在系列的第四部分演示使用命令行添加其他类型的存储池,这里就不再演示其他类型。
2] 创建存储卷
其实创建存储卷我们之前已经操作过,这里再说明一下。所谓的存储卷,事实上虚拟机所使用的磁盘。当然,这个存储卷也有几种格式可选,最为常用的是”raw”格式,因为它具有很好的兼容性,可以方便的切换至其他虚拟化服务器中使用。
选择一个存储池,点击”Volumes”后面的加号按钮,就可以添加一个存储卷到该存储池,供虚拟机使用:
图.6 在存储池中添加存储卷
选择”raw”格式并输入文件名,设置好存储卷的最在容量和当前分配容量(即该存储卷当前占用的容量)后,就可以点击”Finish”完成存储卷的创建:
创建完成后,就可以在存储池中看到该存储卷了:
图.8 KMV 主机存储池及存储卷信息
至此,我们讲解了存储池和卷之间的区别,并演示如何使用 virt-manager GUI 工具在 KVM 环境下创建和管理它们。
现在到大家了,是时候动手练习下了。