kvm-磁盘资源管理
1、基础知识
1.1、需求
虚拟机在操作过程中,会遇到各种数据容量操作,我们常见的操作就是
初始化时候,磁盘容量不合适,我们可以进行调整
数据容量不足,我们就增加一块数据磁盘
数据容量过大,我们就删减一块数据磁盘
1.2、常见语法
# 磁盘基本信息 virsh domblklist --details 虚拟磁盘名称 # 磁盘容量调整 qemu-img resize 虚拟磁盘名称 +5G # 挂载磁盘 virsh attach-disk <虚拟机名称> --source <新磁盘名> --target <磁盘类型名> --persistent 注意: 磁盘类型名一般是 sda~ 或者 vda~,这里的 vda 不一定是磁盘内部的信息,而是kvm管理的名称 # 卸载磁盘 virsh detach-disk <虚拟机名称> <磁盘类型名>
2、实战
2.1、磁盘容量调整
# 关闭虚拟机 virsh shutdown CentOS-8-x86_64 # 查看当前磁盘状态 qemu-img info /opt/CentOS-8-x86_64.raw # 调整磁盘大小 qemu-img resize /opt/CentOS-8-x86_64.raw +1G # 查看磁盘状态 qemu-img info /opt/CentOS-8-x86_64.raw # 再次调整磁盘大小 qemu-img resize /opt/CentOS-8-x86_64.raw +2G # 查看磁盘状态 qemu-img info /opt/CentOS-8-x86_64.raw # 重启虚拟机 virsh start CentOS-8-x86_64 # 进入虚拟机查看磁盘大小 # fdisk -l 根据上面实验得知: 动态调整磁盘容量大小调整成功
2.2、新增磁盘
# 关闭虚拟机 virsh shutdown CentOS-8-x86_64 # 新增一块磁盘 qemu-img create -f raw /opt/image.raw 2G # 查看效果 ll /opt/ # 编辑配置文件 [root@linux-node1 ~]# virsh edit CentOS-8-x86_64 38 <disk type='file' device='disk'> 39 <driver name='qemu' type='raw'/> 40 <source file='/opt/image.raw'/> 41 <target dev='vda' bus='virtio'/> 42 </disk> ... 注意: 添加 38-42行的内容 和之前的disk配置缺少了<address type='pci'... 的内容。 -- 该部分内容会自动增加 # 连接进入虚拟机确认新增磁盘已识别 fdisk -l # 格式化磁盘 mkfs.ext4 /dev/vdb # 新建一个目录来挂载新硬盘 mkdir /data mount /dev/vdb /data/ mount | grep vdb umount /data # 开机自动挂载 blkid /dev/vdb echo 'UUID=fd53695a-4a6f-4735-8439-f02707ec7a6e /data ext4 defaults 1 2'>> /etc/fstab mount -a mount | grep vdb df -h | egrep 'Files|vd' # 可以看到:新增磁盘的方法调整虚拟机的磁盘容量,在虚拟机中想要看到效果,必须重启虚拟机