之前分享过3种不同环境的磁盘扩容方式,有兴趣的可以去看看。《e2fsck+resize2fs实现Linux分区扩容 》、《lvm在线扩容根分区 》、《VMware下虚拟机扩展磁盘不需重启系统 》
我们知道KVM的磁盘格式有raw和qcow2两种;扩容方式有直接对原有磁盘扩容和新添加一块磁盘加入lvm中两种方法。
今天要分享的就是KVM环境下新添加一块格式为qcow2磁盘加入lvm中的扩容方法。
0x01 KVM虚拟机添加磁盘
1、查找虚拟机磁盘目录
要添加新磁盘,首先得找到原有磁盘的目录
$ virsh list --all ##查看虚拟机列表 $ virsh shutdown Name ##关闭名称为Name的虚拟机 $ virsh edit Name ##Name为虚拟机名称
找到source file行,后面的就是磁盘的存放目录
<disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='none'/> <source file='/xxx/xxx/xxx/image.qcow2'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </disk>
2、创建新硬盘
创建一个名称为image_1.qcow2的5G磁盘
$ qemu-img create -f qcow2 /xxx/xxx/xxx/image_1.qcow2 50G
3、配置XML文件
$ virsh edit Name ##编辑虚拟机
添加新的磁盘文件信息,原来的是vda新的就是vdb,以此类推
4、重新注册vm配置信息
$ virsh define /etc/libvirt/qemu/xxx.xml
5、启动虚拟机
$ virsh start Name ##启动虚拟机 $ fdisk -l ##可以看到新增的磁盘
到此,KVM环境下虚拟机新增磁盘完成,接下去通过pv,vg,lv扩容。
0x02 LVM方式扩容
1、查看硬盘容量,发现根分区用了将近9成。
$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 47G 41G 5.8G 88% / devtmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 3.9G 8.4M 3.9G 1% /run tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/vda1 497M 120M 378M 25% /boot tmpfs 783M 0 783M 0% /run/user/0
2、创建PV
$ pvcreate /dev/vdb ##vdb为上面新增的磁盘 Physical volume "/dev/vdb" successfully created
3、扩充VG
##先查看vg组 $ vgs VG #PV #LV #SN Attr VSize VFree centos 2 2 0 wz--n- 49.50g 3.00g ##把新增的vdb磁盘加入到vg中 $ vgextend centos /dev/vdb Volume group "centos" successfully extended 再查看下vg组发现已经扩容 $ vgs VG #PV #LV #SN Attr VSize VFree centos 3 2 0 wz--n- 99.50g 52.99g
4、扩充LV
##查看下lv组的大小,没有变化 $ lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 46.31g ##扩容LV,+50G位新增硬盘大小 $ lvextend -L +50G /dev/mapper/centos-root Size of logical volume centos/root changed from 46.31 GiB (11855 extents) to 96.31 GiB (24655 extents). Logical volume root successfully resized ##再查看下lv,扩容成功 $ lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 96.31g
5、系统更新
##使系统重新读取大小 $ xfs_growfs /dev/mapper/centos-root ##查看硬盘大小,发现扩容成功。 $ df -h

聂扬帆博客
一个分享IT运维相关工作经验和实战技巧的个人博客
2017年11月20日 下午1:01 沙发
为什么感觉~~~你的幻灯图片看起来比我好看多了。
2017年11月21日 上午10:31 1层
@Amoy厦门 跟图片有关吧
2017年11月23日 下午5:16 板凳
一篇很好的文章
2018年8月6日 上午10:24 地板
很不错的