解决k8s的filebeat安装报错(Could not init registrar: Registry file path must be a file.)

【问题】

部署filebeat-7.13.4,然后卸载重新部署7.4.1,提示初始化registry失败

查看报错:

kubectl logs -n xxx filebeat-hzrj7

【分析】

Filebeat会将自己处理日志文件的进度信息写入到registry文件中,以保证filebeat在重启之后能够接着处理未处理过的数据,而无需从头开始。

    但是在filebeat-7.X之后,registry是以文件夹方式存在,里面存储了两份文件 { data.json  meta.json }。

    所以先部署filebeat-7.13.4,将会创建registry文件夹,然后你再部署filebeat-7.4.1时registry文件就会冲突

【解决】

切换到对应节点,删除filebeat文件夹容器就会恢复

rm -rf /var/lib/filebeat

注意:/var/lib 是默认日志采集目录,如果你更改了,请切换至对应目录删除。

猜你喜欢

转载自blog.csdn.net/kali_yao/article/details/127565928