扩容 KVM qcow2 虚拟机磁盘映像

虚拟机磁盘 根文件系统用 LVM, 格式化成 xfs 文件系统,遇到 磁盘满,需要扩容,怎么办? 假设虚拟机名称为 elk-01,虚拟机根文件系统位于分区 /dev/vda2

  1. 关闭虚拟机:host # virsh shutdown elk-01
  2. 扩容虚拟磁盘: host # qemu-img resize +5g elk-01.qcow2
    host # qemu-img info elk-01.qcow2

  3. 登录虚拟机删除并重建分区 2
    guest # fdisk /dev/vda
    指令分别为: p 打印, d 2,删除第二个分区, n p 新建 Primary 类型分区,然后敲回车确认新分区大小,w 写入并退出,fdisk 完成。sync;sync; 或者重启虚拟机。
  4. 扩展 pv: # pvresize /dev/vda2 ,这个时候会成功扩容
  5. 扩展 lv: # lvresize -L +5g /dev/mapper/centos-root
  6. 扩展文件系统: # xfs_growfs / (如果是 ext2/3/4,用 resize2fs)
  7. 确认: # df -h /

以上办法理论上适用于所有操作系统的虚拟机,Windows 虚拟机,也是先 qemu-img resize 虚拟机磁盘映像,再重新建立分区(partd),然后进 Windows 虚拟机磁盘管理(diskmgmt.msc)扩容。

作者: 甬洁网络

--移动互联网&物联网技术提供商