CentOS虚机在线扩容系统盘数据盘

最近在制作Openstack下的镜像,用户需要CentOS6以及CentOS7的虚机镜像,遇到了些关于系统盘以及数据盘在线扩容的问题,故此整理一下。

​ 传统我们想对磁盘在线热扩容,必然会想到LVM逻辑卷。如果没有LVM逻辑卷的情况下,则可以考虑使用growpart命令。

复制代码
#yum -y install cloud-utils-growpart

在内核3.6.0 以上,是可以实现系统盘在线扩容的,如果低版本内核则需要reboot或者重新挂载磁盘。

复制代码
#growpart /dev/sda 1  #将sda剩余空间全部扩容给sda1
#resize2fs /dev/sda1   #ext使用resize2fs, xfs使用xfs_growfs

所以,假如虚机镜像大小20G,创建系统盘大小是50G的虚机时,默认情况下cloud-init会调用growpart以及resize2fs扩容系统盘。

​ 如果是centos7的系统镜像,虚机开机过程中cloud-init调用growpart和resize2fs即可直接在线扩容系统盘。

​ 如果是centos6的系统镜像,虚机开机过程中cloud-init调用growpart和resize2fs并不能在线扩容系统盘。如何解决?可以通过给initramfs添加growroot的module,growroot 模块用于在启动过程中自动调整根文件系统的大小。

复制代码
#dracut --force --add growroot /boot/initramfs-$(uname -r).img
相关推荐
AlfredZhao14 小时前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐2 天前
Linux内存扩容指南
linux
zylyehuo2 天前
Linux 彻底且安全地删除文件
linux
用户805533698033 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297913 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF3 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者4 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo5 天前
Linux系统中网线与USB网络共享冲突
linux
荣--5 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森5 天前
动手实战学 Docker — 从零到集群编排完全指南
运维