centos7上对LVM根分区扩容vg无法添加pv故障解决
在内网服务器进行docker部署的时候,发现新增docker镜像的时候会导致镜像导入失败,显示的原因是磁盘空间不足,为此我们进行了根分区扩容,在进行扩容时遇到了无法扩容vg的异常,查找问题并解决了问题
因为根分区默认是采用LVM,所以我就想着直接添加一块硬盘,然后添加到LVM里面,直接对根分区扩容。以下为扩容步骤:
1、fdisk -l 查看分区
2、df -TH
3、pvdisplay 查看pv
我们接下来对进行扩容操作。
扩容顺序:
创建新的PV---将新的PV加入到当前VG---扩容现有LV----扩容文件系统/
4、fdisk /dev/xvdb
输入p 检查是否有已存在的分区
输入n 创建新的分区
选择p 初次创建分区
剩余的选择默认选项
因为根分区默认的是8e LVM所以我们修改类型为8e
选择T
修改新的分区为8e LVM
查看VG
Vgdisplay
可以单独新建(vgcreate VGname /dev/xvdb1)
创建PV
Pvcreate /dev/xvdb1
查看PV
Pvdispaly
查看LV
Lvdisplay
5.扩容需要的LV
Vgextend (VGname) /dev/xvdb1
[root@10 ~]# vgextend cl /dev/xvdb1
Couldn't create temporary archive name.
但是在执行到vgextend命令时,一直提示错误,无法对vg进行扩充
Couldn't create temporary archive name.
后来查询到问题所在
原来是根分区满了,无法创建归档名称,至少需要1M的剩余空间才能操作。所以必须先删除一些临时文件.
首先使用如下命令,查找根分区中大于1G的文件。
删除文档,留出可供建档的空间
再次执行Vgextend (VGname) /dev/xvdb1命令
6.扩容LV
Lvextend –L 20G (LVname)
7.生效
resize2fs (LVname)或者xfs_growfs(LVname)
由于我的根分区是xfs格式的所以使用的xfs_growfs命令,如果是ext3格式的请使用resize2fs
至此扩容服务器空间并挂载进行完成。