KVM虚拟机磁盘无损扩容(非LVM)

2019年6月26日10:49:40 发表评论 1,873 views

1.1 磁盘无损扩容

说明:本次在CentOS中扩容的/分区是这块磁盘上的最后一个分区,也就是磁盘扩展后增加的空间是加在附加在磁盘的最后的,所以可以通过growpart工具修改硬盘的分区表,将这部分空间直接append到最后一个分区(也就是我这里原本/分区的后面了)所以如果你要扩容的分区在你的系统上,并非是磁盘上的最后一个分区的话,可能无法直接无损扩充分区。

1.1.1 虚拟机磁盘扩(缩)容

注意:执行此操作前需先关机删除快照(参看《KVM日常使用》操作)后再执行后续操作!

1.1.1.1 关闭虚拟机

[root@test ~]# shutdown -h now

1.1.1.2 宿主机中对虚拟机磁盘扩(缩)容

提示:qcow2格式可直接扩容,但不支持直接缩容,需转化为raw格式(参看《KVM日常使用》)后方可进行缩容操作。

[root@KVM ~]# qemu-img resize /kvm/CentOS7.4-Test.qcow2 +100G

1.1.1.3 启动虚拟机并查看磁盘容量

[root@KVM ~]# virsh start CentOS7.4-Test-192.168.10.101

[root@test ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
vda 253:0 0 200G 0 disk
├─vda1 253:1 0 1G 0 part /boot
├─vda2 253:2 0 8G 0 part [SWAP]
└─vda3 253:3 0 91G 0 part /

[root@test ~]# fdisk -l
Disk /dev/vda: 214.7 GB, 214748364800 bytes, 419430400 sectors

1.1.2 系统无损识别扩容容量

1.1.2.1 虚拟机安装growpart工具

[root@test ~]# yum install -y cloud-utils-growpart

1.1.2.2 对扩容分区进行容量扩展

[root@test ~]# growpart /dev/vda 3

1.1.2.3 重启虚拟机并查看分区结果

[root@test ~]# reboot

# 使用lsblk命令可以查看已经进行分区扩展,但是使用df –h命令查看分区空间无变化
[root@test ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
vda 253:0 0 200G 0 disk
├─vda1 253:1 0 1G 0 part /boot
├─vda2 253:2 0 8G 0 part [SWAP]
└─vda3 253:3 0 191G 0 part /

[root@test ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda3 91G 2.8G 89G 4% /
devtmpfs 487M 0 487M 0% /dev
tmpfs 497M 28K 497M 1% /dev/shm
tmpfs 497M 6.7M 490M 2% /run
tmpfs 497M 0 497M 0% /sys/fs/cgroup
/dev/vda1 1014M 119M 896M 12% /boot
tmpfs 100M 0 100M 0% /run/user/0
tmpfs 100M 0 100M 0% /run/user/994

1.1.2.4 识别扩展后分区

# xfs分区命令(centos7)
[root@test ~]# xfs_growfs /dev/vda3

# ext4及以下分区命令(centos6)
[root@test ~]# resize2fs /dev/vda3

1.1.3 查看最终分区后效果

[root@test ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda3 191G 2.8G 189G 2% /
devtmpfs 487M 0 487M 0% /dev
tmpfs 497M 252K 496M 1% /dev/shm
tmpfs 497M 6.7M 490M 2% /run
tmpfs 497M 0 497M 0% /sys/fs/cgroup
/dev/vda1 1014M 119M 896M 12% /boot
tmpfs 100M 0 100M 0% /run/user/0
tmpfs 100M 0 100M 0% /run/user/994

[root@test ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
vda 253:0 0 200G 0 disk
├─vda1 253:1 0 1G 0 part /boot
├─vda2 253:2 0 8G 0 part [SWAP]
└─vda3 253:3 0 191G 0 part /

[root@test ~]# fdisk -l
Disk /dev/vda: 214.7 GB, 214748364800 bytes, 419430400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000bdce2
Device Boot Start End Blocks Id System
/dev/vda1 * 2048 2099199 1048576 83 Linux
/dev/vda2 2099200 18876415 8388608 82 Linux swap / Solaris
/dev/vda3 18876416 419430366 200276975+ 83 Linux

参考资料

https://www.moonfly.net/archives/49.html

https://blog.csdn.net/qq_22083251/article/details/80417097

weinxin
我的微信
如果有技术上的问题可以扫一扫我的微信
版权声明
1. 本网站名称:Leon的博客
2. 本站永久网址:https://blog.leonshadow.cn
3. 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长QQ632113590进行删除处理。
4. 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5. 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6. 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
liyang