HCRM博客

CentOS 7.3在线扩展根分区教程

CentOS 7.3在线扩容根分区(无需LiveCD)

线上业务跑着跑着,根分区突然飙红,监控短信一条接一条,谁不慌?关机插光盘、找机房、排队重启,这一套流程下来,老板的脸色早就比告警灯还红。其实,CentOS 7.3自带的热扩容能力就能把这事在运行中搞定,不用LiveCD,也不用重启,键盘敲几下,空间就长出来。

CentOS 7.3在线扩展根分区教程-图1

先搞清楚:到底能不能热扩

很多人担心在线操作会把系统搞崩,先把顾虑打消:只要根分区落在LVM上,磁盘接口是virtio/scsi,文件系统用的是ext4/xfs,就能原地扩容。用lsblk看一眼,如果根分区对应的是/dev/mapper/centos-root,基本稳了;要是直接落在物理盘/dev/sda2,那就别硬撑,老老实实走LiveCD更保险。

动手之前:快照+多开一条SSH

线上操作再稳也要留后路。云平台先打一份快照,物理机就让备份同事拉一份全量。自己开两条SSH窗口,一条用来干活,一条闲着待命,万一第一条手抖断开,还能靠第二条救场。顺便把tmuxscreen启起来,断网也不怕命令丢失。

第一步:把新磁盘喂给系统

云主机就在控制台点“扩容磁盘”,物理机直接插盘。完成后dmesg | grep -i block能看到容量变化,再用fdisk -l确认新空间已经识别。记住,只扩容不重启的话,千万别动现有分区表,直接走LVM把空闲段吞掉最干净。

CentOS 7.3在线扩展根分区教程-图2

第二步:创建物理卷

假设新空间在/dev/sdb,一条命令:

pvcreate /dev/sdb

系统回显“Successfully created”就算完成。如果之前已经把旧盘扩容,比如/dev/sda从100G变200G,那就用fdisk /dev/sda新建一个Linux LVM类型的分区,再pvcreate /dev/sda3,效果一样。

第三步:把物理卷塞进卷组

vgdisplay找到根分区所在的卷组,默认一般是centos。接着:

CentOS 7.3在线扩展根分区教程-图3

vgextend centos /dev/sdb

执行完用vgdisplay | grep Free能看到一堆Free PE,这就是待会儿要分给根分区的“原材料”。

第四步:在线拉伸逻辑卷

根分区对应的逻辑卷名叫/dev/centos/root,直接:

lvextend -l +100%FREE /dev/centos/root

系统瞬间把刚加的Free PE全部吃光,lvdisplayLV Size一栏立刻变大,但这时候文件系统还没意识到自己被“整容”了。

第五步:让文件系统认下新空间

ext4和xfs两条路:

ext4resize2fs /dev/centos/root

xfsxfs_growfs /

执行过程秒级完成,df -h再一看,根分区容量已经在线膨胀,业务进程毫无感知,告警灯瞬间转绿。

踩坑记录:这些报错别慌

1. Device or resource busy:八成是文件系统没挂载对,确认命令路径别写错。

2. Cannot allocate memory:老内核偶尔抽风,先sync; echo 3 > /proc/sys/vm/dropcaches清缓存再试。

3. NOSPACE:卷组Free PE被别的逻辑卷抢光,用vgdisplay确认剩余,再精确指定扩容大小。

验证:写个1G大文件试试

dd if=/dev/zero of=/test.img bs=1M count=1024

写满1G后df -h看剩余空间是否同步减少,确认扩容真实生效,再rm /test.img把垃圾清掉。

脚本化:下次10秒搞定

把上面五步写成脚本,放在跳板机,下次谁再喊根分区满,直接复制粘贴:

#!/bin/bash

自动扩容根分区,前提:新盘已识别为/dev/sdb

pvcreate /dev/sdb

vgextend centos /dev/sdb

lvextend -l +100%FREE /dev/centos/root

if [[ $(df -T / | awk 'NR==2{print $2}') == xfs ]]; then

xfs_growfs /

else

resize2fs /dev/centos/root

fi

df -h /

保存成growroot.sh,加执行权限,一键运行,老板都来不及发飙。

根分区在LVM就能热扩,不在就认怂;先扩卷再扩文件系统,顺序别反;快照+双SSH是底线,别偷懒。把这套流程吃透,下次告警再闪,你能淡定喝完咖啡再把空间拍回去。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/41685.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~