存储池可以把多块硬盘资源池化使用,Libvirt可以以存储池的形式对存储进行统一管理,简化操作。
对虚拟机操作来说,存储池和卷不是必须的,管理员保证配置正确和连接即可。
目前我的环境有三个存储池
找到它们的配置文档
里面有一些参数,但是不建议直接改动XML,通过virsh pool-edit iso改动不会出异常。
virsh pool-edit iso
发现就是打开了一个vi
过一下存储池的操作
pool-list
poolL-info
基于目录的存储池
准备一个目录,设置目录权限,配置目录的SELinux上下文,隔离虚拟机与虚拟机的操作。
semanage fcontext -a -t virt_image_t '/guest_images(/.*)?'
因为/guest_images这个目录是手工建立的,并不是系统默认目录,所以并没有默认安全上下文,需要我们手工设定。
这条命令会给/guest_images目录及目录下的所有内容设定默认安全上下文类型是virt_image_t
创建存储池也有两种方法:
通过virt-manager创建存储池
目标路径选择刚才的/guest_images
删除池的时候必须先停止池,加号右边有圆点停止,然后最右边delete,删掉这个池。
通过virsh创建存储池
virsh pool-define as guest_images dir --target "/guest_images"
启动起来
设置自动启用
virsh pool-autostart guest_images
这就是通过virsh来创建存储池
同样,删除池需要先停止池
virsh pool-destroy guest_images
virsh pool-delete guest_images
但是配置文件依然再,所有要用undefine来清除
扫描二维码关注公众号,回复:
8995533 查看本文章
virsh pool-undefine guest_images
基于分区的存储池
libvirtd会自动mount分区