k8s 日志备份

部署 filebeat ,把pod日志,保存到另外一个地方。

kubectl apply -f filebeat-rbac.yaml
kubectl apply -f filebeat-config.yaml
kubectl apply -f filebeat-daemonset.yaml

 

然后:由于日志有最大1024个。所以,在达到之前要备份到其他地方。

archive-filebeat-logs.sh内容

 

 

 

拷贝到:/usr/local/bin/archive-filebeat-logs.sh

 

# 检查 cron 是否运行
systemctl status crond

# 设置开机自启
systemctl enable crond
systemctl start crond

 

chmod +x /usr/local/bin/archive-filebeat-logs.sh
安装方式(推荐用 /etc/cron.d/)
比起 crontab -e,更推荐在 /etc/cron.d/ 下建一个独立文件,内容明确、易管理,也不会因为用户切换而丢失:

 

*/5 * * * * 每 5 分钟执行一次
0 * * * * 每小时的第 0 分钟执行一次(即整点)

bash
cat > /etc/cron.d/archive-filebeat-logs <<'EOF'
0 * * * * root /usr/local/bin/archive-filebeat-logs.sh >> /var/log/archive-filebeat.log 2>&1
EOF

 

chmod 644 /etc/cron.d/archive-filebeat-logs

posted @ 2026-09-16 10:34  Supper_litt  阅读(3)  评论(0)    收藏  举报