kvm磁盘管理
- 虚拟磁盘类型
- raw
- qcow2
- qemu-img常用参数
- 主要参数:
- 查看磁盘信息--info
- 创建磁盘文件--create
- 磁盘容量调整--resize
- 磁盘增加容量
- 磁盘缩小容量(生产环境下禁止操作)
- 磁盘调整容量到指定大小
- 转换磁盘格式--convert
- 检查磁盘镜像
- 在线热添加磁盘
- 附加磁盘到vm实例--attach-disk
- 从vm实例中分离磁盘--detach-disk
虚拟磁盘类型
raw
raw为裸格式,占用空间比较大,不支持快照功能,性能较好,不方便传输,创建多大的磁盘就占用多大的空间。
qcow2
qcow2(quick copy on wire --写时复制),占用空间小,支持快照,性能比 raw差一些,方便传输,磁盘的实际大小时动态的(当写入数据时宿主机的磁盘占用才会变大)。
qemu-img常用参数
https://www.cnblogs.com/wshenjin/p/11079469.html
https://www.cnblogs.com/wshenjin/p/11063867.html
主要参数:
- info : 查看镜像的信息;
- create: 创建镜像;
- check: 检查镜像;
- convert: 转化镜像的格式;
- snapshot :管理镜像的快照;
- rebase: 在已有的镜像的基础上创建新的镜像;
- resize: 增加或减小镜像大小
查看磁盘信息–info
# 查看磁盘信息
qemu-img info disk_name.raw
qemu-img info disk_name.qcow2
创建磁盘文件–create
创建的磁盘文件后缀名
不用关注,工作中经常会以.img
为磁盘文件后缀。
# 创建raw
qemu-img create /data/vm1.raw 1G
# 创建qcow2
## 不指定参数,默认创建的是raw格式的磁盘文件
## -f 指定磁盘格式
qemu-img create -f qcow2 /data/vm2.qcow2 1G
磁盘容量调整–resize
磁盘增加容量
# 增加10G容量
qemu-img resize /data/vm1.raw +10G
磁盘缩小容量(生产环境下禁止操作)
# raw磁盘缩小容量
qemu-img resize /data/vm2.raw -500M
# qcow2磁盘缩小容量---不支持缩容
qemu-img resize /data/vm2.qcow2 -500G
!!!**qcow2**
只能加**不能减**
!
磁盘调整容量到指定大小
# 将磁盘容量调整至1T
qemu-img resize /data/vm2.qcow2 1T
转换磁盘格式–convert
运行中的VM实例,要先关机后才能转换VM实例的磁盘格式,转换完成后,要执行virsh edit vm实例
修改disktype
和diskpath
为正确值才能启动VM实例。
# 将vm实例关机
virsh shutdown vm名称
# 将raw磁盘转换为qcow2磁盘
qemu-img convert -f raw -O qcow2 vm1.raw vm2.qcow2
# 修改vm实例的磁盘type和path
virsh edit vm名称
原来的磁盘格式是raw
修改成qcow2
格式磁盘
检查磁盘镜像
对磁盘镜像文件进行一致性检查,查找镜像文件中的错误,目前仅支持对qcow2
、qed
、vdi
格式文件的检查。
在线热添加磁盘
附加磁盘到vm实例–attach-disk
附件磁盘是热生效的
# 将磁盘挂载到vm实例--立即且永久生效
## --live 热生效,但不保存到配置文件
## --config 写入到配置文件永久生效
virsh attach-disk vm名称 [--source] /data/raw/disk02.qcow2 sdb --subdriver=qcow2 --live --config
从vm实例中分离磁盘–detach-disk
# 从vm实例中删除磁盘--立即且永久生效
virsh detach-disk vm名称 [--target] sdc --live --config