Artifactory监控binaries size与实际磁盘占用不符,双倍存储是否正常?
Artifactory存储占用翻倍问题解答
这种情况不正常,不符合Artifactory的标准存储预期。
核心原理说明
Artifactory的设计逻辑是:var/data/artifactory/filestore是唯一存储二进制文件的核心目录,所有仓库的二进制内容都通过引用机制指向这里的唯一副本,避免重复存储。而current/repositories目录默认仅存储仓库的元数据(如索引、属性、权限配置等),不应该存储完整的二进制文件副本。
可能的触发原因
- 仓库配置错误:部分
local类型仓库被误配置为使用仓库本地路径存储二进制文件,而非默认的filestore;或手动修改过$ARTIFACTORY_HOME/etc/artifactory.system.properties中的存储路径参数,导致二进制文件被双写。 - 迁移/升级遗留问题:近期完成Artifactory迁移或版本升级后,未清理临时文件、或配置未正确同步,导致二进制文件被重复写入两个目录。
- 第三方脚本/插件干扰:自定义插件、外部同步脚本未通过Artifactory标准API写入文件,直接将二进制文件放到了
current/repositories目录下。
排查与修复步骤
验证仓库存储配置
进入Artifactory管理后台,逐个检查仓库的Storage配置项,确认所有仓库的二进制存储都指向默认的filestore,而非自定义的仓库本地路径。对比文件哈希确认重复
随机选取current/repositories中的二进制文件,计算其SHA1/MD5哈希值,在filestore目录下查找是否存在相同哈希的文件。若存在,说明是冗余副本。检查系统日志定位根源
查看var/log/artifactory.log,搜索包含storage path、binary write等关键词的日志条目,定位导致双写的具体操作或配置错误。安全清理冗余文件
- 先对
current/repositories中的冗余文件做完整备份; - 使用Artifactory内置的Binary Cleanup工具(路径:Admin > Maintenance > Cleanup)清理未被元数据引用的二进制文件;
- 若清理工具未覆盖,可手动删除
current/repositories中确认重复的二进制文件(需确保这些文件在filestore中存在有效副本)。
- 先对
内容的提问来源于stack exchange,提问作者Doron Gombosh
相关产品推荐
相关产品推荐

