服务器怎么扩容系统盘?

215 天前
 kandaakihito

现状:服务器有两个硬盘,200GB 的系统盘和 2TB 的数据盘。

服务器从使用开始就没把 2TB 的数据盘挂载上去使用,现在 200GB 的系统盘容量用尽了,什么都做不了。

现状能想到的解决办法是下面三个,不知道有没有更好的办法?

方案一:把 2TB 的数据盘挂到指定路径,作为数据存储空间使用。

尝试结果:服务器内部部署了非常多的东西,并没有按照规范将数据统一挂载在指定路径。

有一堆没人认领的数据分散在系统盘的各个路径下,也没人敢删敢迁移。

现在如果直接挂载到/data 路径的话,最终还是需要有人把 docker 的挂载卷在内等一系列的数据进行迁移;

方案二:通过 LVM 系统,将 2TB 的数据盘和 200GB 的系统盘合并。

尝试结果:系统盘不挂在 LVM 的逻辑卷上,合并不了;

方案三:找运维给系统盘扩容 。

运维说系统盘可以扩容,但是涉及费用变更的问题,需要走工单。;

7230 次点击
所在节点    Linux
75 条回复
fitme
215 天前
补充一下,cicd 这种大量镜像首先可以清理(因为肯定推送到镜像仓库了),然后 dockerd 的日志文件大小需要限制
stcQ2G13k9yxep40
215 天前
你们公司运维是只负责软件运维,不负责硬解服务器的运维吗?系统盘扩容这是标准的运维的活啊
xiaoranj
215 天前
直接对拷扩容
salmon5
215 天前
200G 的系统盘在线扩容到 1024G ,2TB 的数据盘释放。还能省一些钱。
guo4224
215 天前
云盘的话在线扩
salmon5
215 天前
@kandaakihito #28 ,CentOS6 的逻辑分区,需要重启系统生效(等于 umount 再 mount ),CentOS7 及以上系统,逻辑分区都支持在线扩容(上层业务无感知)
salmon5
215 天前
在线扩容的前提:
1 ,kvm 虚拟化支持:virsh blockresize 能在线通知 guest VM 感知到 ≥RHEL6.1[2011-05-19]
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/6.1_release_notes/virtualization#:~:text=Virtual%20disk%20online%20dynamic%20resize%20feature

2 ,partition 逻辑分区需要内核支持:fdisk /dev/vdb 删除重建通知内核,内核≥3.6[2012-10-01] 能够支持在线 https://kernelnewbies.org/Linux_3.6#Block:~:text=Add%20a%20new%20operation%20code%20(BLKPG_RESIZE_PARTITION)%20to%20the%20BLKPG%20ioctl%20that%20allows%20altering%20the%20size%20of%20an%20existing%20partition%2C%20even%20if%20it%20is%20currently%20in%20use

3 ,filesystem 文件系统支持:resize2fs,xfs_growfs 这 2 个工具,resize2fs 需要 kernel≥2.6.10[2004-12-24]和 e2fsprogs 1.36[2005-02-05],这一步对应的是 mkfs -t xfs /dev/vdb1 创建 filesystem 环节
retanoj
215 天前
em..如果是我的话

既然是测试环境,那我会排查下硬盘使用大户,然后联系他们迁移数据到另一块硬盘
kksd0912334
215 天前
这是运维的活,即使是测试环境也是运维的活,docker 的 root 目录挂到系统盘这种事情一定是运维的锅,解决办法也很简单,停掉 docker ,复制所有 docker 文件到数据盘,修改 docker 的 root 目录,重启 docker 就搞定了
brom111
215 天前
走工单就走呗。这有啥问题。
salmon5
215 天前
1 ,云控制台先扩容系统盘(云厂商底层的 kvm 会在线扩容对应系统盘的块设备),一般最大不大于 2T 。
2 ,系统盘:
ext4:
growpart /dev/vda 1
resize2fs /dev/vda1

xfs:
growpart /dev/vda 1
xfs_growfs /dev/vda1
如果内核<3.6 ,就重启系统生效;如果内核>=3.6 就在线生效,无需重启。
78786381
215 天前
你们的运维不行啊
totoro52
215 天前
测试环境怕个得啊 ,直接关机全盘复制到新盘
ZXiangQAQ
215 天前
挂上去,然后把 docker 路径迁移到挂到的路径上,然后软链接回到 /var/lib/docker ,完事
vivisidea
215 天前
@kandaakihito 不能删,删了镜像可能就损坏了,容器可能也起不来,按照我说的挪下 data-root 目录即可
kandaakihito
215 天前
@retanoj pg 数据库的数据目录 91G 现在领导让我迁移,跟着教程走老是报错说指定的新目录 missing or empty
LLaMA2
215 天前
第一步,先在阿里云对系统盘做镜像,除了问题大不了恢复镜像

第二步,先跑完第一步再说
baobao1270
215 天前
如果你们可以用 btrfs/zfs ,那么可以用 subvolume
首先列出所有需要存在数据盘的路径,有很多也没关系
然后每个路径创建一个 subvolume ,把数据迁移进去
然后在 fstab 里配置 subvolume 挂载
LLaMA2
215 天前
第三步,我也同意 @dier @fitme @ZXiangQAQ 的软链接方案,测试方案,不用搞那么完美。
第四步,以上操作完成了,又不是不能用!!!
NewLine
215 天前
两块盘是不同协议的吗?如果是的话,用 LVM 做逻辑分区也要三思

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1035787

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX