12.5.4. 使用 virsh 创建基于 iSCSI 的存储池
使用 pool-define-as 从命令行定义池
可以使用 virsh 命令行工具创建存储池定义。使用 virsh 创建存储池对系统管理员使用脚本创建多个存储池非常有用。virsh pool-define-as 命令具有多个参数,它们以以下格式接受:virsh pool-define-as
name type source-host source-path source-dev source-name
target这些参数按如下方式解释:- type
- 将此池定义为特定类型的 iscsi,例如
- name
- 必须是唯一的,并设置存储池的名称
- source-host 和 source-path
- 分别是主机名和 iSCSI IQN
- source-dev 和 source-name
- 基于 iSCSI 的池不需要这些参数,使用 - 字符将字段留空。
- 目标
- 定义在主机物理机器上挂载 iSCSI 设备的位置
下面的示例创建了与上一步骤相同的基于 iSCSI 的存储池。# virsh pool-define-as --name scsirhel6guest --type iscsi \ --source-host server1.example.com \ --source-dev iqn.2010-05.com.example.server1:iscsirhel6guest --target /dev/disk/by-path Pool iscsirhel6guest defined
验证是否列出了存储池
验证存储池对象是否已正确创建,并且状态报告为不活动
。# virsh pool-list --all Name State Autostart ----------------------------------------- default active yes iscsirhel6guest inactive no
启动存储池
对此使用 virsh 命令 pool-start。pool-start 启用目录存储池,允许它用于卷和客户机虚拟机。# virsh pool-start guest_images_disk Pool guest_images_disk started # virsh pool-list --all Name State Autostart ----------------------------------------- default active yes iscsirhel6guest active no
打开自动启动
为存储池打开autostart
。autostart 将libvirtd
服务配置为在服务启动时启动存储池。# virsh pool-autostart iscsirhel6guest Pool iscsirhel6guest marked as autostarted
验证 iscsirhel6guest 池是否设置了 autostart:# virsh pool-list --all Name State Autostart ----------------------------------------- default active yes iscsirhel6guest active yes
验证存储池配置
验证存储池是否已正确创建,报告的大小是否正确,以及状态报告正在运行
。# virsh pool-info iscsirhel6guest Name: iscsirhel6guest UUID: afcc5367-6770-e151-bcb3-847bc36c5e28 State: running Persistent: unknown Autostart: yes Capacity: 100.31 GB Allocation: 0.00 Available: 100.31 GB
现在提供了基于 iSCSI 的存储池。