广告
返回顶部
首页 > 资讯 > 操作系统 >如何解决filebeat占用Linux空间未释放的问题
  • 267
分享到

如何解决filebeat占用Linux空间未释放的问题

2023-06-06 04:06:18 267人浏览 独家记忆
摘要

如何解决filebeat占用linux空间未释放的问题,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。我们的一台应用服务器,操作系统是Red Hat Linux,监控报警,/

如何解决filebeat占用linux空间未释放的问题,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

我们的一台应用服务器操作系统是Red Hat Linux,监控报警,/opt/applog文件系统使用率超阈值,整体容量为50G,但发现实际文件容量20G,剩下的30G空间是什么?

我们知道,Linux环境下,任何事物,都是以文件的形式存在,系统在后台,为每个应用程序,分配了一个文件描述符,他为应用程序和操作系统之间的交互操作提供了通用的接口,既然是文件,就会占用空间,此时可以使用lsof指令,他可以列出,当前系统正在打开的文件。

> lsof

COMMAND      PID      USER   FD      TYPE    DEVICE  SIZE/OFF      node NAME

...

filebeat  111442   app  1r      REG     253,3 209715229   1040407 /opt/applog/E.20171016.info.012.log

filebeat  111442   app  2r      REG     253,3 209715254    385080 /opt/applog/E.20171015.info.001.log (deleted)

...

表头各字段,含义如下:

COMMAND:进程的名称
PID:进程标识符
USER:进程所有者
FD:文件描述符,应用程序通过文件描述符识别该文件。如cwd、txt等
TYPE:文件类型,如DIR、REG等
DEVICE:指定磁盘的名称
SIZE:文件的大小
NODE:索引节点(文件在磁盘上的标识)
NAME:打开文件的确切名称

可以看出,有一些行中,NAME标识了(deleted),

/opt/applog/E.20171015.info.001.log (deleted)

他的含义,就是这文件已被删除,但打开文件的句柄,并未关闭,再看COMMAND的名称是filebeat,USER进程所有者是app,这是我们的日志采集进程,app用户开启了filebeat进程。

插播一下日志采集平台


  • elasticsearch是个开源分布式搜索引擎,分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

  • Logstash是一个开源的采集工具,他可以对日志进行收集、过滤,并将其存储供以后使用。

  • Kibana是一个开源的图形WEB工具,可以为Logstash和ElasticSearch提供日志分析友好的Web界面,可以汇总、分析和搜索重要数据日志。

对于上面提到的filebeat又是什么?和elk有什么联系?

知乎上有一段大牛饶琛琳的介绍(《ELKstack权威指南》作者),非常精辟,

引自https://www.zhihu.com/question/54058964/answer/137882919

因为logstash是JVM跑的,资源消耗比较大,所以后来作者又用golang写了一个功能较少但是资源消耗也小的轻量级的logstash-forwarder。不过作者只是一个人,加入Http://elastic.co公司以后,因为es公司本身还收购了另一个开源项目packetbeat,而这个项目专门就是用Golang的,有整个团队,所以es公司干脆把logstash-forwarder的开发工作也合并到同一个golang团队来搞,于是新的项目就叫filebeat了。简单来讲,filebeat就是日志采集的进程agent,负责采集应用日志文件。

对于我上面的这个问题,之所以有大量的(deleted),未释放文件句柄,还有个背景,就是由于磁盘空间非常有限,临时加了任务,每小时删除12小时前的日志,换句话说,定时任务会自动删除此时filebeat正在打开着的一些文件,于是这些文件,就变为了未释放的文件,因此实际文件删除了,但空间未被释放。

解决方案1:


filebeat的配置文件filebeat.yml,其实有两个参数,

close_older: 1h

说明:Close older closes the file handler for which were not modified for longer then close_older. Time strings like 2h (2 hours), 5m (5 minutes) can be used.

即如果一个文件在某个时间段内没有发生过更新,则关闭监控的文件handle,默认1小时。

force_close_files: false

说明:This option closes a file, as soon as the file name changes. This config option is recommended on windows only. Filebeat keeps the files it's reading open. This can cause issues when the file is removed, as the file will not be fully removed until also Filebeat closes the reading. Filebeat closes the file handler after ignore_older. During this time no new file with the same name can be created. Turning this feature on the other hand can lead to loss of data on rotate files. It can happen that after file rotation the beginning of the new file is skipped, as the reading starts at the end. We recommend to leave this option on false but lower the ignore_older value to release files faster.

即当文件名称有变化时,包括改名和删除,会自动关闭一个文件。

这两个参数结合起来,根据应用需求,一个文件30分钟内不更新,则需要关闭句柄,文件改名或删除,需要关闭句柄,

close_older: 30m

force_close_files: true

可以满足,filebeat采集日志,以及定时删除历史文件,这两个任务的基本要求。

关于如何解决filebeat占用Linux空间未释放的问题问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网操作系统频道了解更多相关知识。

--结束END--

本文标题: 如何解决filebeat占用Linux空间未释放的问题

本文链接: https://www.lsjlt.com/news/246108.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何解决filebeat占用Linux空间未释放的问题
    如何解决filebeat占用Linux空间未释放的问题,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。我们的一台应用服务器,操作系统是Red Hat Linux,监控报警,/...
    99+
    2023-06-06
  • Linux文件后删除空间未释放问题怎么解决
    小编今天带大家了解Linux文件后删除空间未释放问题怎么解决,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“Linux文件后删除空间未...
    99+
    2023-06-28
  • Linux文件删除后空间未释放问题详解
    前言 当系统空间使用量过大需要清理空间或者清理某个文件时,有时会出现执行了删除命令之后磁盘空间并没有释放,很多人首次遇到该情况时会比较困惑,在考虑是不是像windows系统的回收站一样,删除只是逻辑删除到回收站一样?其实...
    99+
    2022-06-04
    linux释放空间 linux空间无法释放 linux删除文件后未释放空间
  • 如何解决LINUX中文件已删除但空间不释放的问题
    这篇文章主要介绍“如何解决LINUX中文件已删除但空间不释放的问题”,在日常操作中,相信很多人在如何解决LINUX中文件已删除但空间不释放的问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何解决LINUX...
    99+
    2023-06-13
  • linux中怎样解决文件已删除但空间不释放的问题
    这篇文章给大家介绍linux中怎样解决文件已删除但空间不释放的问题,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、错误现象运维的监控系统发来通知,报告一台服务器空间满了,登录服务器查看,根分区确实没有空间了:[roo...
    99+
    2023-06-28
  • linux中怎么解决文件已删除但空间不释放的问题
    本篇内容主要讲解“linux中怎么解决文件已删除但空间不释放的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中怎么解决文件已删除但空间不释放的问题”吧!导读一般来说不会出现删除文件...
    99+
    2023-06-05
  • MySQL如何解决delete大量数据后空间不释放的问题
    本篇内容主要讲解“MySQL如何解决delete大量数据后空间不释放的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL如何解决delete...
    99+
    2022-10-19
  • Sublime如何释放被无辜占用的磁盘空间
    小编给大家分享一下Sublime如何释放被无辜占用的磁盘空间,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!删除Sublime的Backup目录,释放被无辜占用的磁...
    99+
    2023-06-06
  • Linux如何处理文件已删除但空间不释放的问题
    问题产生背景 一个业务系统的服务器监控系统发来预警通知,磁盘空间使用率已经达到90%了,然后就登陆服务器搜索了下比较大的日志文件,全部都删除了(坑在此处埋上了),磁盘空间释放了一些,当时也是疏忽,没有确认查出并删除...
    99+
    2022-06-03
    Linux 文件删除空间不释放 Linux 删除空间不释放
  • 怎么解决"mysql-bin.000001"占用超大空间的问题
    本篇内容介绍了“怎么解决"mysql-bin.000001"占用超大空间的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情...
    99+
    2022-10-18
  • Linux删除了文件后空间没有释放原因及如何解决
    这篇文章主要介绍了Linux删除了文件后空间没有释放原因及如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Linux删除了文件后空间没有释放原因及如何解决文章都会有所收获,下面我们一起来看看吧。我们的一台...
    99+
    2023-06-28
  • c#非托管内存的释放问题如何解决
    这篇“c#非托管内存的释放问题如何解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“c#非托管内存的释放问题如何解决”文章吧...
    99+
    2023-07-05
  • 如何解决Linux系统80端口被占用的问题
    这期内容当中小编将会给大家带来有关如何解决Linux系统80端口被占用的问题,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。有Linux在centos下面安装webmail服务遇到80端口被占用的问题,导致...
    99+
    2023-06-05
  • 安装win10系统出现占用硬盘空间过多的问题怎么解决
    第一页:安装完win10系统占硬盘空间太多怎么办 第二页:安装完win10系统占硬盘空间太多怎么办2   安装完win10系统之后发现磁盘明显的占用了非常多的空间,针对这个问题,那么要如何来的解决win10系统占用磁...
    99+
    2023-06-13
    硬盘空间 问题 系统 win10
  • 如何解决Oracle RMAN删除归档日志不释放的问题
    这篇文章主要为大家展示了“如何解决Oracle RMAN删除归档日志不释放的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决Oracle RMAN删除...
    99+
    2022-10-18
  • windows如何解决端口被占用的问题
    一、对端口的查看 1、打开黑窗口: 同时按下win+R(快捷键)后,在栏目中输入cmd(命令提示符,即命令窗口),点击确定。  2、查看端口被占用的情况: (1)、输入命令netstat-ano,会显示所用被占用的端口及其相关信息。 ...
    99+
    2023-09-13
    服务器 运维
  • 如何解决System表空间不足的报警问题
    小编给大家分享一下如何解决System表空间不足的报警问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体代码如下所示:--S...
    99+
    2022-10-18
  • 如何解决ie11 SCRIPT5011:不能执行已释放Script的代码问题
    这篇文章将为大家详细讲解有关如何解决ie11 SCRIPT5011:不能执行已释放Script的代码问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。依照我遇到的问题为例...
    99+
    2022-10-19
  • 如何解决img使用br换行后之间有空隙的问题
    本篇内容介绍了“如何解决img使用br换行后之间有空隙的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2022-10-19
  • 如何解决Linux系统之间拷贝文件的问题
    小编给大家分享一下如何解决Linux系统之间拷贝文件的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!  第一种方法  首先,无论本地还是远程,需要移动或拷贝的文件较多且都不太大时,用cp命令和mv命令效率较低,可以先使...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作