最近一个项目的存储空间不够用,提示磁盘空间满了。
之前的解决方案是 SWARM集群+CEPH存储模式。
查阅相关资料,使用rbd resize命令来调整块大小。
https://docs.ceph.com/en/latest/rbd/rados-rbd-cmds/#resizing-a-block-device-image
根据命令执行相关操作
rbd resize production-db --size 30720
然后执行查询命令
rbd info production-db
rbd image 'production-db':
size 30 GiB in 7680 objects
order 22 (4 MiB objects)
id: 847ba96b8b4567
block_name_prefix: rbd_data.847ba96b8b4567
format: 2
features: layering
op_features:
flags:
create_timestamp: Mon Jul 12 15:22:55 2021
感觉是扩容成功了哦!
尝试挂载这个存储,发现实际可用空间还是之前的大小,什么原因呢??
原来在Linux上面对ext4文件系统进行扩缩容还需要执行相关指令(e2fsck 和resize2fs)。
执行下面命令即可
# 挂载rbd
rbd map production-db
/dev/rbd2
# 执行resize2fs 和 2dfsck 指令,这个是关键!
e2fsck -fy /dev/rbd2
resize2fs /dev/rbd2
参考资料: