在 Debian 系统上备份 Filebeat 主要是备份其**配置文件、证书、模块配置、注册表(可选)**等,而不是程序本身(程序可通过 apt 重装)。
下面按推荐程度给你几种常见备份方式。
Filebeat 默认配置在:
/etc/filebeat/
常用备份命令:
sudo tar czf filebeat-config-$(date +%F).tar.gz -C / etc/filebeat
包含内容:
filebeat.ymlmodules.d/certs/(如果有 TLS 证书)inputs.d/如果证书不在 /etc/filebeat 中:
sudo tar czf filebeat-certs.tar.gz /etc/filebeat/certs
或你实际存放证书的位置,例如:
/var/lib/filebeat/certs
/var/lib/filebeat/
重点文件:
registry/ —— 记录日志读取位置(恢复后避免重复发送或漏发)备份命令:
sudo systemctl stop filebeat
sudo tar czf filebeat-data-$(date +%F).tar.gz -C / var/lib/filebeat
sudo systemctl start filebeat
⚠️ 建议停止 Filebeat 再备份 registry,避免文件不一致
示例备份脚本 /root/backup_filebeat.sh:
#!/bin/bash
DATE=$(date +%F)
BACKUP_DIR=/backup/filebeat
mkdir -p $BACKUP_DIR
systemctl stop filebeat
tar czf $BACKUP_DIR/filebeat-$DATE.tar.gz \
/etc/filebeat \
/var/lib/filebeat/registry
systemctl start filebeat
赋予执行权限:
chmod +x /root/backup_filebeat.sh
加入 cron(每天凌晨 2 点):
0 2 * * * /root/backup_filebeat.sh
dpkg -l | grep filebeat
重装时:
sudo apt install filebeat
然后恢复配置即可。
sudo systemctl stop filebeat
sudo tar czf filebeat-backup.tar.gz /etc/filebeat /var/lib/filebeat
sudo systemctl start filebeat
sudo systemctl stop filebeat
sudo tar xzf filebeat-backup.tar.gz -C /
sudo systemctl start filebeat
❌ 以下一般不用备份:
/usr/share/filebeat(程序文件)/var/log/filebeat✅ 只备份:
/etc/filebeat/var/lib/filebeat/registry✅ 使用版本管理(如 git)管理 filebeat.yml
✅ 定期验证备份可恢复
如果你愿意,我可以: