filebeat收集不上k8s日志排查小记

背景:

在一个k8s集群上,以daemonset的方式部署的filebeat,收集k8s各节点运行容器的日志。发现其中有一个宿主机节点的日志无法被收集上来,其他节点日志收集正常。

排查:

1. Filebeat运行的POD状态为Running状态。

2. 查看该filebeat运行日志,无异常信息。

3. 登录该异常的宿主机节点,进入filebeat配置文件配置的收集容器日志的目录,存在日志文件。

似乎看起来都正常。

再仔细看filebeat运行日志,在harvester相关的日志条目中,没有容器日志的目录。

同事找到了相关的文章,记一次EFK采集不到k8s日志数据的解决过程 - 代码天地

此文章出现问题的原因和我们的情况相似,但没有具体分析root cause。我来展开分析一下root cause:

filebeat pod挂载的容器Volume映射到宿主机上默认是/var/lib/docker/containers,而该k8s节点安装的docker不按标准的方式,放在了另外一个位置,导致宿主机的该目录,没有被挂载到filebeat pod中。而filebeat在pod收集的日志文件,需要通过软链接的方式,指向到/var/lib/docker/containers目录中。结果,在pod中,该软链接指向到了一个不存在的文件。尽管,在宿主机中,此软链接能正常指向。

兼容解决办法:

在filebeat的daemonset yaml配置文件中,添加该特殊目录至volumes和volumeMounts中。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
问题: k8s filebeat的部署方式是什么? 回答: 在k8s中部署filebeat有多种方式。一种常见的方式是使用DaemonSet模式,即在每个节点上运行一个filebeat实例,用于收集该节点上所有容器的日志。这种方式可以确保每个节点都有filebeat实例运行,从而保证日志收集的全面性和高可用性。可以通过使用官方提供的filebeat-kubernetes.yaml文件进行部署。可以通过以下命令来下载该文件:curl -L -O https://raw.githubusercontent.com/elastic/beats/7.9/deploy/kubernetes/filebeat-kubernetes.yaml。另外,也可以使用Elastic Cloud on Kubernetes (ECK)来部署filebeat,并与Elasticsearch和Kibana集群进行集成。这种方式需要先使用ECK部署Elasticsearch和Kibana集群,然后再部署filebeat并配置与集群的连接。详细的部署步骤可以参考相关文档。123 #### 引用[.reference_title] - *1* *2* [filebeat收集K8S日志,写入自动创建的索引](https://blog.csdn.net/yanggd1987/article/details/108414587)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] - *3* [【k8s容器日志收集】EFK收集日志,kubernetes守护进程方式部署filebeat收集k8s集群容器日志elasticsearch+...](https://blog.csdn.net/qq_35270805/article/details/124862134)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值