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
相关推荐
瞬间&永恒~2 分钟前
【Kubernetes】(十五)维护与升级、ETCD 备份和恢复
linux·运维·docker·云原生·kubernetes
susplus11 分钟前
【linux应用软件编程】进程间的通信方式2【网络通信从入门到UDP编程】
linux·udp·ip
MSTcheng.12 分钟前
【Linux】Linux学习第三弹——Linux基本指令2
linux·windows·学习·ubuntu·操作系统
姚永强17 分钟前
gitlab安装
运维·gitlab
希望奇迹很安静18 分钟前
Linux基本使用命令
linux·运维·服务器
邪修king24 分钟前
Re:Linux 系统篇(十七):进程篇(六):环境变量深度解析|命令行参数、环境变量表、4 种获取方式与继承机制万字详解
linux·服务器·c++
姚永强37 分钟前
安装Jenkins
运维·jenkins
张小姐的猫1 小时前
【C++开发脚手架】 —— Jsoncpp上手
java·linux·开发语言·网络·c++·tcp/ip·udp
昌原的儿子LEO1 小时前
Linux网络编程:TCP/UDP与HTTP协议核心笔记
linux·网络·tcp/ip
好评1241 小时前
【Linux】应用层协议HTTP
linux·运维·http