在使用 PnetLab 搭建网络实验环境时,随着虚拟设备的增加和实验规模的扩大,存储空间可能会逐渐不足。本文将介绍如何通过 LVM(Logical Volume Manager)扩展 PnetLab 的存储容量,以满足不断增长的需求。
扩容思路
添加新的物理卷
由于我之前是在 Proxmox Virtual Environment (PVE) 上部署的 PnetLab,我们可以直接在 PVE 中操作虚拟机来为 PnetLab 扩展磁盘容量。如下图所示,通过 PVE 的管理界面,可以方便地添加新的虚拟磁盘,并进行后续的扩容操作。
然后会弹出如下图的提示框,按照自己的需求填入需求扩容的容量大小:
添加成功后,登录pnetlab虚拟机中,查看该硬盘容量增加了,如下图:
添加新的物理卷(PV)
由于 PnetLab 采用了 LVM 模式,如下图所示,我们可以方便地通过 LVM 进行磁盘扩容。
接着,我们把扩容的容量创建新的分区,执行如下命令:
fdisk /dev/sda
执行上述命令后,根据提示进行操作,如下图:
最后,通过执行如下命令把新的分区创建PV:
pvcreate /dev/sda4
创建完成后,通过pvdisplay查看,如下图:
扩展卷组(VG)
将新的物理卷添加到现有的卷组中 ,扩展之前,通过vgdisply查看当前系统存在的vg组,如下图:
接着通过,如下命令进行扩展:
vgextend ubuntu-vg /dev/sda4
执行成功后会出现如下的提示:
root@pnetlab:~# vgextend ubuntu-vg /dev/sda4
Volume group "ubuntu-vg" successfully extended
再次查看PV的状态如下图所示:
扩展逻辑卷(LV)
首先确认需要扩展的逻辑卷名称 ,可以通过lvdisplay命令查看当前系统存在的LV,如下图所示:
接着,执行如下命令进行扩容LV:
lvextend -L +49G /dev/ubuntu-vg/ubuntu-lv
执行成功后会出现如下的提示:
root@pnetlab:~# lvextend -L +49G /dev/ubuntu-vg/ubuntu-lv
Size of logical volume ubuntu-vg/ubuntu-lv changed from <38.00 GiB (9727 extents) to <87.00 GiB (22271 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
通过vgdisply命令查看当前vg的具体信息,如下图所示:
扩展文件系统
据文件系统类型使用不同的命令来扩展文件系统。常见的文件系统有 ext4 和 xfs。
ext4 文件系统:
resize2fs /dev/vg0/lv_data
xfs 文件系统:
xfs_growfs /dev/vg0/lv_data
由于pnetlab使用的是ext4 文件系统,所以,执行如下命令进行扩展文件系统:
resize2fs /dev/ubuntu-vg/ubuntu-lv
验证结果
通过lvdisplay查看是否扩容成功。如下图:
总结
通过上述步骤,你已经成功使用 LVM 扩展了 PnetLab 的存储容量。在实际操作过程中,可能会遇到一些具体问题,请根据错误提示进行相应调整。LVM 提供了灵活且强大的存储管理能力,是处理存储扩展需求的理想选择。