filebeat占用 cpu和mem资源过多问题说明

filebeat处理日志异常

摘要

用du -sh看到sql.log日志大小128M ,实际占用14G磁盘空间,文件句柄并没有释放。filebeat处理sql.log日志异常,导致cpu和mem飙升。说明:用true时,运行的filebeat进程持有已经被删除了的文件的句柄(closed_renamed: false不会释放句柄),因此sql.log文件不会真正在磁盘中被删除,分区超级块中的信息也不会更改。用rm -f时,filebeat的close_removed:true,会释放文件句柄。

故障现象

  • 生产k8s集群一个项目的4个副本中2个pod个运行异常,原因是宿主机filebeat资源利用过高导致k8s-worker异常;
  • 生产k8s集群部分项目输出日志过大, 采用*.log通配符搜集,单个sql.log日志文件超过30G,导致生产k8s集群不稳定。

排查过程

  • 2020-8-14 上午多次收到生产k8s集群磁盘容量不足告警,经排查发现为xxx日志量过大引起(该项目单pod 12h内有超过100G日志),尤其是sql.log(单个文件超过30G);通知研发手动删除大日志,临时解决。

  • 2020-8-14下午,xxx研发反映4个pod中有2个异常,经排查发现为filebeat占用的cpu和mem过大引起。删除xxx日志后,重启filebeat解决问题。与研发讨论后,使用true方式每个6小时置空一次sql.log日志。

  • 2020-8-16 上午生产k8s集群出现netchecker 网络异常告警,发现filebeat占用cpu和mem过高。驱逐异常机器后,逐个添加xxx的日志并观察filebeat资源占用。发现是xxx sql.log日志引起。1个k8s-worker节点虽然用du -sh看到sql.log日志大小128M ,但是实际占用14G磁盘空间,文件句柄并没有释放。故cat打开很慢, 看上去就像打开异常。filebeat实际采集的还是14G的sql日志文件。

  • 2020-8-16 晚上调整生产环境xxx sql.log日志置空脚本,将true方式改为rm -f 后touch方式,filebeat问题不再出现。

解决方案

  • 运维侧添加日志清除脚本: rm -f /data/web_logs/xxx/sql.log && touch /data/web_logs/xxx/sql.log && rm -f /data/web_logs/xxx/.log.
  • 研发侧取消优化日志输出: xxx研发已经升级xxx版本,以优化日志输出。

参考资料

1. du查看的文件大小与df查看的大小相差太大~ 你遇到过吗?
2. df和du显示的磁盘空间使用情况不一致的原因及处理

附录

filebeat.yml 关键配置

- type: log
  enabled: true
  paths:
    - /data/web_logs/xxx/*.log
 fields:
    type: xxx
    node: nm
    logtopic: docker-xxx
  close_inactive: 5m
  close_renamed: false
  clean_removed: true
  ignore_older: 24h
  tail_files: false
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CPU-MEM Monitor是一种计算机监控工具,用于实时监测系统的CPU内存使用情况。它通常用于服务器、云计算平台以及大型数据中心等环境中,以帮助管理员了解系统资源的利用率和瓶颈情况。 CPU-MEM Monitor可以提供实时的CPU利用率和内存利用率数据,并通过图表或图形方式展示出来。管理员可以通过这些数据来判断系统的资源利用情况,识别CPU内存的瓶颈,并及时采取措施来优化系统性能。 通过CPU-MEM Monitor,管理员可以了解到系统中哪些进程或应用程序占用过多CPU内存资源,从而定位和解决问题。同时,CPU-MEM Monitor还可以记录系统资源的历史使用情况,帮助管理员进行性能分析和预测。 在云计算平台或大型数据中心中,CPU-MEM Monitor的作用尤为重要。它可以帮助管理员合理规划和管理系统资源,以最大限度地提高资源利用效率和性能,同时避免资源过度分配或单点故障。通过持续监控CPU内存的使用情况,管理员可以及时调整资源分配策略,确保系统的稳定性和高可用性。 总之,CPU-MEM Monitor是一种重要的监控工具,它通过实时监测和统计CPU内存的使用情况,帮助管理员了解系统资源的利用率和瓶颈情况,并提供数据支持进行性能优化和资源调整。它在服务器、云计算平台以及大型数据中心等环境中具有广泛应用和重要作用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值