Minio主节点存储空间占用异常(较其他节点多30GB)
Minio集群节点存储空间不一致排查思路
验证存储占用数据准确性
用文件系统命令与Minio工具交叉校验:- 执行
df -h查看Node-4磁盘挂载点的实际占用,对比其他节点数据 - 执行
mc admin info <alias>查看Minio集群层面的节点存储统计,确认工具统计与文件系统的差异是否一致 - 用
du -sh /path/to/minio/data/*逐层遍历数据目录,定位占用异常的子目录
- 执行
排查分片分布与纠删码平衡
- 执行
mc admin top disk <alias>查看各节点的对象数、分片数分布,确认Node-4是否存在异常多的分片 - 针对大桶执行
mc ls --recursive <alias>/bucket | wc -l统计对象总量,结合集群纠删码策略(如4节点常用EC:2)计算理论分片数,对比实际分布差异
- 执行
清理未完成上传的临时文件
- 检查Node-4的
.minio.sys/tmp目录,查看是否存在长期未清理的临时上传分片,确认无活跃上传任务后可删除这些文件 - 核对Minio配置中的
tmp_delete_delay参数,确认临时文件自动清理的时间阈值是否合理
- 检查Node-4的
检查垃圾回收(GC)运行状态
- 查看Node-4的Minio日志,搜索
gc关键词,确认垃圾回收任务是否定期执行、是否存在失败记录 - 手动触发垃圾回收:
mc admin gc <alias>,执行完成后再次检查节点空间占用
- 查看Node-4的Minio日志,搜索
修复集群对象完整性
- 执行
mc admin heal <alias>检查集群中是否存在损坏或未愈合的对象,这类对象可能导致分片残留 - 添加
--recursive参数对所有桶执行全面愈合操作,完成后重新对比节点空间差异
- 执行
排查文件系统级额外占用
- 检查
lost+found目录是否有大量残留文件,这类文件多由磁盘异常导致 - 查看系统日志目录(如
/var/log)、core dump存储路径,确认是否有大文件占用空间 - 执行
lsof | grep deleted查看是否存在已删除但未释放的文件句柄,此类文件仍会占用磁盘,需重启对应进程释放
- 检查
验证Minio版本兼容性
- 对比各节点Minio版本:
minio --version,确认是否存在版本不一致情况 - 查阅对应版本的官方release notes,排查是否有已知的空间泄漏或分片分布异常bug
- 对比各节点Minio版本:
内容的提问来源于stack exchange,提问作者KDS
相关产品推荐
相关产品推荐

