13.2.3.6. 基于 LVM 的存储池
建议
在创建基于 LVM 的存储池前请注意以下几点:
- 基于 LVM 的存储池不能为 LVM 提供完整的灵活性。
- libvirt 支持精简逻辑卷,但不提供精简存储池的功能。
- 基于 LVM 的存储池是卷组。您可以使用逻辑卷管理器命令或 virsh 命令创建卷组。要使用 virsh 接口管理卷组,请使用 virsh 命令创建卷组。有关卷组的详情,请查看 Red Hat Enterprise Linux 逻辑卷管理器管理指南。
- 基于 LVM 的存储池需要一个完整磁盘分区。如果用这些步骤激活新分区或设备,分区将被格式化并删除所有数据。如果使用主机的现有卷组(VG),则不会删除任何内容。建议您在完成以下步骤前备份存储设备。有关创建 LVM 卷组的详情,请参考 Red Hat Enterprise Linux Logical Volume Manager Administration Guide。
- 如果您在现有 VG 上创建基于 LVM 的存储池,则不应运行 pool-build 命令。
确保准备好 VG 后,继续使用 定义存储池来继续创建存储池。
参数
下表提供了 XML 文件、virsh pool-define-as 命令和 Virtual Machine Manager 应用程序所需的参数列表,用于创建基于 LVM 的存储池。
描述 | XML | pool-define-as | 虚拟机管理器 |
---|---|---|---|
存储池的类型 | <pool type='logical'> | [type] logical | 逻辑:LVM 卷组 |
存储池的名称 | <name>name</name> | [name] name | Name |
存储池设备的路径 |
<source> | source-dev device_path | 源路径 |
卷组名称 | <name='VG-name' /> | source-name VG-name | 源路径 |
虚拟组格式 |
<format type='lvm2' /> | source-format lvm2 | 不适用 |
目标路径 |
<target> | target target-path | 目标路径 |
注意
如果逻辑卷组由多个磁盘分区组成,则可能会列出多个源设备。例如:
<source> <device path='/dev/sda1'/> <device path='/dev/sdb3'/> <device path='/dev/sdc2'/> ... </source>
示例
以下是基于 LVM 的存储池的 XML 文件示例:
<pool type='logical'> <name>guest_images_lvm</name> <source> <device path='/dev/sdc'/> <name>libvirt_lvm</name> <format type='lvm2'/> </source> <target> <path>/dev/libvirt_lvm</path> </target> </pool>
以下是创建基于 LVM 的存储池的命令示例:
# virsh pool-define-as guest_images_lvm logical --source-dev=/dev/sdc --source-name libvirt_lvm --target /dev/libvirt_lvm
Pool guest_images_lvm defined
下图显示了虚拟机 XML 配置虚拟机管理器 来添加 New Storage Pool 对话框的例子,用于创建基于 LVM 的存储池:
图 13.9. 添加一个基于 LVM 的新存储池示例