某重要服务器硬盘扩容失败,宕机。
解决思路复盘
询问得知,某重要网站数据库服务器,因磁盘爆满,扩容失败,LVM 配置信息错误,进不了系统。
遂答应第二天考完试前去帮忙。使用 Live CD 进入系统后,简单的查看了一下情况,原硬盘大小 40GB,分为一个主分区 /root,一个扩展分区下分一个逻辑分区 (30GB) 加入到 LVM 卷组中,LVM 卷组划分为 16GB (SWAP),14GB (/)。
执行了错误的命令后,VG 的大小变为 40GB,但是 /dev/sda5 实际的大小还是 30GB,/ 分区 LV 的大小更是变为了 174GB,LVM 配置信息发生错误。
好在服务器是虚拟化出来的,备份了 N 个后开始了修复尝试。
扩展 /dev/sda5 到 200GB,使 LVM 能够认到 200GB 的真实空间。失败,LVM 模式下不能扩展。
尝试备份整个 /dev/sda5 后,重新建立一个 200GB 的 /dev/sda5,并恢复 LVM 信息。失败,大小不匹配恢复失败。
尝试手工修改 LVM 配置文件,将 /root LV 更改至原来的 14GB 大小。失败,尝试了 N 多数值,根本猜不到原来的大小。
失败了 N 次后,得知还有一台 Web 服务器是同时安装的,可以去上面看看 LVM 的配置信息。发现两台服务器根本就是 VMware 直接克隆出来的,主机名都一样,读取 LVM 配置信息,VG、LV 的 ID 都是相同,大喜。在 Web 服务器上导出 LVM 的配置信息,同时在数据库服务器上恢复 LVM 配置信息,重启解决。
1
2
3
4
5#备份LVM配置信息(Web服务器上执行)
vgcfgbackup -f /tmp/lvm.conf /dev/ubuntumb-vg
#恢复LVM配置信息(DB服务器上执行)
vgcfgrestore -f /tmp/lvm.conf /dev/ubuntumb-vg
恢复系统后重新扩展 VG
使用新加的空间创建 /dev/sda6,并调整卷 ID 为 LVM 卷组。
1
2
3
4pvcreate /dev/sda6
vgextend /dev/ubuntumb-vg /dev/sda6
lvextend -l +100%FREE /dev/ubuntumb-vg/root
resize2fs -p /dev/ubuntumb-vg/root
本文链接:https://www.kinber.cn/post/4148.html 转载需授权!
推荐本站淘宝优惠价购买喜欢的宝贝: