问题描述
因小图片较多,导致Inode占用100%(挂载存储格式为ext4),磁盘19T空间虽然还有82%但是无法写入数据,导致minio各节点无法同步,最终导致节点无法启动
查看minio状态,提示:no space left on device
解决方案
注:因为ext4无法动态调整inode空间占比,所以选择将ext4改为xfs(支持动态调整inode空间占比)
1.备份/minio的数据到别的磁盘或机器
备份目录:/minio/bin(minio文件和run.sh启动脚本)、/minio/client(客户端mc)、/minio/data1(数据目录如果太大可不备份,后续恢复的时候创建/minio/data1目录即可)
2.处理挂载分区(Inodes)
说明:/dev/sdb1每台服务器可能不一样,详见Filesystem
强制删除用户关联(可选,如果可以直接umount则忽略此步)
$ fuser -m -k /dev/sdb1
取消挂载
$ umount /dev/sdb1
重新分区
$ parted /dev/sdb1
根据提示,依次输入"mktable","gpt","y","mkpart","minio","ext4","0","100%","ignore","p","q"
强制格式化xfs
$ mkfs.xfs /dev/sdb1 -f
挂载
$ mount /dev/sdb1 /minio
调整永久挂载
$ vim /etc/fstab
#/dev/sdb1 /minio ext4 defaults 0 0
/dev/sdb1 /minio xfs defaults 0 0
检查修改硬盘格式为xfs后Inode情况
3.恢复/minio
恢复/minio目录下的数据成功后,重启
$ reboot
4.修复minio集群节点
参考==>MinIO客户端操作(mc)的递归修复
补充:xfs硬盘格式inode空间占比(默认为5%)
$ xfs_info /minio
xfs文件系统动态扩容inode空间占比为10%(后续可以根据存储情况调整)
$ xfs_growfs -m 10 /minio