kvm存储池
在vmware里面的虚拟机可以装在系统里的任何位置
在kvm只能装在存储池,存储池本质就是一个目录,KVM必须要配置一个目录当作他存储磁盘镜像(存储卷)的目录,我们称这个目录为存储池。
存储池是专门存储磁盘镜像文件,它有各种类型,最常见的就是目录。
只有在刚开始安装虚拟机的时候去定义一下存储池,一般情况下都使用默认存储池。如果存储池所在目录空间不够了,可以在定义一个其他的存储池,可以同时使用多个存储池的。
1.图形的方式去创建使用存储池
2.命令的方式去创建使用存储池
3生产环境存储池使用
用命令唯一的原因就是,因为它快,方便,能批量执行,当不需要批量执行还是图形快。
默认存储池 /var/lib/libvirt/images/
1.图形的方式去创建使用存储池
centos7里面有4个标签,(8和9)有三个
存储池的名字就叫default,对应的目录/var/lib/libvirt/images
如果磁盘空间不够了,怎么扩容?
1.把虚拟机的镜像先挪出来,挂一个远程的存储挂载到这个目录下,再挪回去就扩容了
2.建立一个全新的存储池,建立的存储池放哪都行,然后挂一个远程存储
新建存储池,起一个名字,类型就默认的就行,路径放在其他地方,比如根下创建一个目录,叫teststorage。
创建好了,名字可以随便改,打了对勾就是开机自动启动。
这个存储池,创建虚拟机的时候就可以把磁盘镜像文件指定到这个位置,就可以用了。
平时想创建一个全新的卷,这个卷就是磁盘镜像文件。这里它是开的,相当于全新的硬盘,
删除卷 xx
停掉池,停了之后就变灰了。
删池,先停止,在删掉
2.命令的方式去创建使用存储池
先创建目录 mkdir /testst1
virsh pool-define-as st2--type dir --target /testst1
pool池 define定义 as起个名 类型 对应的目录是/testst1 现在只是定义了关系还没创建, 创建已经定义的池
virsh pool-build st2
池创建完了,创建卷
virsh vol-create-as st2 vm16.qcow2 2G --format qcow2或者qemu-img create -f qcow2 vm16.qcow2 2G
放在st2池里 叫vm16.qcow2 大小是2个G 格式是qcow2
之前创建好没有激活,现在给它激活
virsh pool-start st2
virsh vol-create-as st2 vm16.qcow2 2G --format qcow2 再运行一遍
创建好了,就可以当做虚拟机的卷用了。
存储池相关管理命令
1在存储池中删除虚拟机存储卷virsh vol-delete --pool st2 oeltest03.qcow2
2取消激活存储池virsh pool-destroy st2
3删除存储池定义的目录/data/vmfs virsh pool-delete st2
4取消定义存储池virsh pool-undefine st2
3生产环境存储池使用
一定要考虑它的扩容,如果是用的本地存储,尽量做lvm,带扩容的,存储池不够的时候可以扩容,或者是用之前给它挂载一个远程存储。将来在扩容的时候非常容易扩容。