Centos7 服务器挂载一块新的硬盘,硬盘空间为 1T,在系统内对新的硬盘进行分区和格式化操作,没有做 lvm 操作,然后直接挂载倒 /data 目录下,这个 data 目录已经占用了 900 多 G 空间了,但是想对这个目录做在线扩容,应该怎么处理,之前接触过 lvm 扩容,但是 lvm 扩容需要是之前就已经做好的,像这种没有做过 lvm 的,不能影响原来数据,该怎么扩容?
1
likuku 2019-11-08 19:42:52 +08:00
做不到的,总会中断对这个目录的访问。
另外,你 /data 原本所在的硬盘不能在线扩容么?如今云端机器的弹性存储设备,本身就可以直接扩容, 之后只要对旧有的 FS 进行 resize 操作就可以了( ext4, xfs 都可以) 。 |
2
likuku 2019-11-08 19:43:46 +08:00
当然,动到存储了,任何有风险的操作之前,先确保你的数据已经有了可靠的备份。
|
3
laminux29 2019-11-08 19:58:50 +08:00
服务器在装机时,就需要对未来做规划。明确不需要在线扩容的,才可以不用 LVM。
现在除了特殊应用以及低成本的 HA 节点之外,几乎不会不做 LVM。 但问题是,就算做了 LVM,在线扩容时也会小卡那么一下。 |
4
aaa5838769 OP @likuku 不是云端,假设硬盘就 1t 了,已经全部分一个区了。
|
5
harde 2019-11-08 22:54:02 +08:00
再挂一块硬盘,挂在 /data/xxx 目录。
调整程序,让新数据写入到 /data/xxx。 之后再调整 /data 其他目录。 以后再满了,就继续在 /data/下挂载多个硬盘。多个目录 虽然浪费点磁盘。 但可以解决问题。 |
6
wind315 2019-11-09 00:33:23 +08:00 via iPhone
新建好 lvm,将 /data 内容复制到新建的 lvm 中,挂载 lvm 到 /data,不过不中断一下下貌似不太可能
|
7
msg7086 2019-11-09 01:19:40 +08:00
扩容到哪呢?如果是云盘的话重做分区表然后扩展一下磁盘就行了,物理的话要提前规划好,否则 LVM 直接 JBOD 出来,等你丢数据的时候就准备好跑路吧。
|
8
aaa5838769 OP @wind315 主要是没有新建好
|
9
aaa5838769 OP @harde 的确是一种解决办法,如果是数据库存储目录,这种方式不方便解决。
|
10
ps1aniuge 2019-11-09 23:19:16 +08:00
@aaa5838769 我的回答是,没法解决。
@harde 的解决方法,是不太好的。是卖拐。 挂在 /data/xxx ,和新硬盘挂在 /data2 没区别。甚至不如挂在 /data2, /data2 后,可以 umount/data。 挂在 /data/xxx,并没有“真的” 让 /data 的那块盘扩容。 |