文章目录
- 0-背景
- 1-用df -TH命令查看到/dev/mapper/centos-root爆满
- 2-用fdisk -l命令查看磁盘空间信息
- 3-lsblk命令可以列出所有可用块设备的信息,比如我们说的逻辑磁盘,而df -h查看的是文件系统级别的信息。
- 4-查看当前PV,VG,LV信息
- 5-如果更改了虚拟机磁盘大小,进入系统后使用fdisk -l查看的磁盘空间大小未变化,可以用下面命令扩展空间而无需重启虚拟机。现在运行如下命令,通过重新扫描 SCSI (注:Small Computer System Interface 小型计算机系统接口)总线并添加 SCSI 设备,系统就可以扩展操作系统的物理卷磁盘空间,而且不需要重启虚拟机。
- 6-使用下面的命令来检查 SCSI 设备的名称,然后重新扫描 SCSI 总线。
- 7-安装growpart命令工具
- 8-运行growpart 命令扩容分区
- 9-接下来需要对LVM的PV,VG,LV进行扩容
- 10-查看centos-root文件系统类型
- 11-文件系统的在线扩容
- 12-最后使用df -TH命令查看/dev/mapper/centos-root是否扩容成功
特别提醒: 为防止操作失误导致数据丢失,建议您操作前使用快照备份数据。
0-背景
日常使用中虚拟机中的数据未做定时清理,导致磁盘爆满后服务异常。
这里要说明的是虚拟磁盘已扩容到120G,然后登录操作系统用命令扩容文件系统,而且不需要重启虚拟机。
1-用df -TH命令查看到/dev/mapper/centos-root爆满
[root@k8s-node2]# df -TH
2-用fdisk -l命令查看磁盘空间信息
[root@k8s-node2]# fdisk -l
3-lsblk命令可以列出所有可用块设备的信息,比如我们说的逻辑磁盘,而df -h查看的是文件系统级别的信息。
[root@k8s-node2]# lsblk
4-查看当前PV,VG,LV信息
[root@k8s-node2]# pvsPV VG Fmt Attr PSize PFree/dev/vda2 centos lvm2 a-- <39.00g 4.00m
[root@k8s-node2]# vgsVG #PV #LV #SN Attr VSize VFreecentos 1 2 0 wz--n- <39.00g 4.00m
[root@k8s-node2]# lvsLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertroot centos -wi-ao---- <35.12g swap centos -wi-ao---- <3.88g
5-如果更改了虚拟机磁盘大小,进入系统后使用fdisk -l查看的磁盘空间大小未变化,可以用下面命令扩展空间而无需重启虚拟机。现在运行如下命令,通过重新扫描 SCSI (注:Small Computer System Interface 小型计算机系统接口)总线并添加 SCSI 设备,系统就可以扩展操作系统的物理卷磁盘空间,而且不需要重启虚拟机。
[root@k8s-node2]# ls /sys/class/scsi_host/
[root@k8s-node2]# echo "- - -" > /sys/class/scsi_host/host0/scan
[root@k8s-node2]# echo "- - -" > /sys/class/scsi_host/host1/scan
6-使用下面的命令来检查 SCSI 设备的名称,然后重新扫描 SCSI 总线。
[root@k8s-node2]# ls /sys/class/scsi_device/
[root@k8s-node2]# echo 1 > /sys/class/scsi_device/0\:0\:0\:0/device/rescan
然后就会重新扫描 SCSI 总线,随后我们在虚拟机客户端设置的磁盘大小会正常显示。
7-安装growpart命令工具
安装growpart的时候要先把盘里面的数据备份到其它系统中,因为磁盘已满是无法安装工具的。只有腾出来部分空间才能安装成功。
[root@k8s-node2]# yum install cloud-utils-growpart
8-运行growpart 命令扩容分区
[root@k8s-node2]# growpart /dev/vda 2
CHANGED: partition=2 start=2099200 old: size=81786880 end=83886080 new: size=249559007,end=251658207
9-接下来需要对LVM的PV,VG,LV进行扩容
[root@k8s-node2]# pvresize /dev/vda2
[root@k8s-node2]# lsblk
[root@k8s-node2]# lvextend -l +100%free -n /dev/centos/root
10-查看centos-root文件系统类型
[root@k8s-node2]# lsblk -f
11-文件系统的在线扩容
[root@k8s-node2]# xfs_growfs /dev/mapper/centos-root
12-最后使用df -TH命令查看/dev/mapper/centos-root是否扩容成功
df -TH