12.3.3. 使用 virsh 创建基于目录的存储池
创建存储池定义
使用 virsh pool-define-as 命令定义新的存储池。创建基于目录的存储池需要两个选项:- 存储池的名称。这个示例使用名称 guest_images。本例中使用的所有进一步 virsh 命令使用此名称。
- 用于存储客户机镜像文件的文件系统目录的路径。如果该目录不存在,virsh 将创建该目录。这个示例使用 /guest_images 目录。
# virsh pool-define-as guest_images dir - - - - "/guest_images" Pool guest_images defined
验证是否列出了存储池
验证存储池对象是否已正确创建,状态则报告为不活动
。# virsh pool-list --all Name State Autostart ----------------------------------------- default active yes guest_images inactive no
创建本地目录
使用 virsh pool-build 命令为目录 guest_images (例如,如下所示)构建基于目录的存储池:# virsh pool-build guest_images Pool guest_images built # ls -la /guest_images total 8 drwx------. 2 root root 4096 May 30 02:44 . dr-xr-xr-x. 26 root root 4096 May 30 02:44 .. # virsh pool-list --all Name State Autostart ----------------------------------------- default active yes guest_images inactive no
启动存储池
使用 virsh 命令 pool-start 启用目录存储池,从而允许池的卷用作客户机磁盘镜像。# virsh pool-start guest_images Pool guest_images started # virsh pool-list --all Name State Autostart ----------------------------------------- default active yes guest_images active no
打开自动启动
为存储池打开autostart
。autostart 将libvirtd
服务配置为在服务启动时启动存储池。# virsh pool-autostart guest_images Pool guest_images marked as autostarted # virsh pool-list --all Name State Autostart ----------------------------------------- default active yes guest_images active yes
验证存储池配置
验证存储池是否已正确创建,其大小会被正确报告,并且报告为运行 状态。如果希望池可以被访问,即使客户机虚拟机没有运行,请确保将
永久
报告为yes
。如果您希望池在服务启动时自动启动,请确保将Autostart
报告为yes
。# virsh pool-info guest_images Name: guest_images UUID: 779081bf-7a82-107b-2874-a19a9c51d24c State: running Persistent: yes Autostart: yes Capacity: 49.22 GB Allocation: 12.80 GB Available: 36.41 GB # ls -la /guest_images total 8 drwx------. 2 root root 4096 May 30 02:44 . dr-xr-xr-x. 26 root root 4096 May 30 02:44 .. #
现在可以使用基于目录的存储池。