RustFS 修改配置文件开启 Lifecycle 定期清理完整教程
RustFS 修改配置文件开启 Lifecycle 定期清理完整教程
本文档适用于通过修改 /etc/rustfs/rustfs.toml 配置文件,开启 RustFS 全局自动定期清理功能,全程无外部脚本、无需定时任务,服务内置后台自动执行。
核心说明:配置为全局规则,对所有存储桶生效,重启服务即可生效,适合统一全局文件清理策略。
一、编辑 RustFS 主配置文件
提供两种编辑器,新手推荐 nano,熟悉命令行用 vim。
方式1:nano 编辑器(新手友好)
nano /etc/rustfs/rustfs.toml
操作快捷键:
-
编辑完成后:
Ctrl+O保存,回车确认 -
退出编辑:
Ctrl+X
方式2:vim 编辑器(常用)
vim /etc/rustfs/rustfs.toml
操作步骤:
-
按
i进入编辑模式 -
文末添加生命周期配置
-
按
Esc,输入:wq保存并退出
二、添加 Lifecycle 自动清理配置
在配置文件末尾新增如下配置,可根据业务需求自定义文件保留天数、匹配目录前缀。
# 全局生命周期自动清理规则(所有桶统一生效)
[lifecycle]
rules = [
# 临时文件目录:7天自动删除
{ prefix = "temp/", days = 7, action = "delete" },
# 日志文件目录:30天自动删除
{ prefix = "logs/", days = 30, action = "delete" },
# 全局所有文件:90天自动删除(不需要可注释/删除)
# { prefix = "", days = 90, action = "delete" },
]
配置参数详解
-
prefix:文件目录前缀,
""空字符串代表桶内所有文件 -
days:文件创建后存活天数,到期自动执行操作
-
action=delete:核心动作,到期自动删除文件(用于定期清理)
三、校验配置文件语法(必做)
防止 TOML 语法错误导致 RustFS 启动失败,修改后必须执行配置校验。
rustfs --config /etc/rustfs/rustfs.toml check
结果判断:
-
无任何报错 = 配置合法
-
提示语法错误 = 修正逗号、换行、字符格式后重新校验
四、重启服务使配置生效
1. Systemd 服务器部署(主流)
# 重启服务
systemctl restart rustfs
# 查看服务运行状态,确认启动成功
systemctl status rustfs
2. Docker 容器部署
docker restart rustfs
五、验证生命周期配置加载成功
通过日志查看规则是否成功加载:
tail -f /var/log/rustfs/rustfs.log | grep lifecycle
出现 loaded lifecycle rules 日志,即代表配置生效。
六、重要注意事项
-
生效延迟:Lifecycle 为后台轮询机制,不会实时删除文件,延迟约 10~30 分钟,属于正常现象。
-
全局规则限制:该配置对所有桶生效,无法单独为某个桶设置不同清理策略;多业务隔离场景建议使用 rc/mc 客户端单桶配置。
-
禁止手动删本地文件:直接操作磁盘数据目录会破坏 RustFS 元数据,导致文件异常、服务报错。
-
测试建议:正式使用前可先设置
days=1测试清理效果,验证无误后再调整为业务所需天数。 -
语法避坑:TOML 数组末尾禁止多余逗号、禁止中文标点、严格区分换行格式。
七、补充:关闭全局 Lifecycle 方法
如需关闭全局自动清理,直接注释或删除配置文件中 [lifecycle] 整段内容,保存后重启服务即可。
本文来自博客园,作者:南風未起,转载请注明原文链接:https://www.cnblogs.com/Andy-Blog/p/21326822

浙公网安备 33010602011771号