Linux下如何安装Filebeat,步骤详解 (linux 安装filebeat)

Filebeat是一款轻量级的开源日志数据收集器,可以将来自各种来源的日志转发至Elasticsearch集群中进行统一管理和分析。它适用于各种不同的系统和服务器,包括Linux操作系统。本文将详细介绍在Linux下安装Filebeat的步骤。

1.准备工作

在安装Filebeat之前,需要先满足以下条件:

– 确认已经安装了支持Filebeat的Linux版本,如CentOS、Debian或Ubuntu等;

– 确认已经安装了最新版本的Java虚拟机(JVM),因为Filebeat需要JVM运行环境才能正常工作;

– 确认已经连接到Internet或者已经下载了Filebeat二进制文件。

2.下载Filebeat

可以在Elasticsearch的官网上下载最新的Filebeat版本,下载地址是:https://www.elastic.co/downloads/beats/filebeat。选择对应的操作系统,点击“Download”按钮即可。

也可以使用wget命令直接下载,并存储到指定的目录下:

“`

$ wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.14.1-linux-x86_64.tar.gz

$ tar xzvf filebeat-7.14.1-linux-x86_64.tar.gz

“`

此时,Filebeat的二进制文件将被解压到当前目录下的filebeat-7.14.1-linux-x86_64/文件夹中。

3.配置Filebeat

Filebeat有两个主配置文件:filebeat.yml和filebeat.reference.yml,我们可以使用filebeat.yml作为参考配置,根据自己的需求进行修改。下面是一个基本的filebeat.yml配置文件示例:

“`

filebeat.inputs:

– type: log

enabled: true

paths:

– /var/log/messages

output.elasticsearch:

hosts: [“localhost:9200”]

protocol: “http”

“`

上述配置文件定义了一个日志采集器,它将采集/var/log/messages文件中的数据,并将采集到的数据发送到本地运行的Elasticsearch服务端。

在配置Filebeat时,需要注意以下几点:

– 一定要定义inputs字段,指定Filebeat需要采集的日志路径和格式;

– 一定要定义output字段,指定Filebeat向哪里发送采集到的数据;

– 可以添加一些其他的配置,如如何处理原始日志数据、如何重试连接等。

4.启动Filebeat

在修改好配置文件后,可以使用以下命令启动Filebeat:

“`

$ cd filebeat-7.14.1-linux-x86_64/

$ sudo ./filebeat -e -c filebeat.yml

“`

在启动Filebeat时,需要注意以下几点:

– 一定要切换到Filebeat所在的文件夹中,以免引起日志路径等配置出现异常;

– 可以使用-e选项来指定Filebeat运行在前台,并输出所有日志信息到终端;

– 可以使用-c选项来手动指定使用哪个配置文件。

启动成功后,Filebeat会开始采集指定路径下的日志,并将采集到的数据发送到Elasticsearch服务器中进行存储和分析。

5.

本文详细介绍了在Linux操作系统中安装Filebeat的步骤,包括下载Filebeat二进制文件、配置Filebeat以及启动Filebeat。读者可以根据自己的需求进行配置和使用,进一步优化和扩展自己的日志管理系统。

相关问题拓展阅读:

filebeat+elasticsearch+logstash+kibana收集系统日志(docker)

我们这里用到的是

filebeat+elk(elasticsearch+logstash+kibana)

来进行系统日志的收集。filebeat安装在各个服务器中,Logstash+ElasticSearch+Kibana安装在一台专门用于基础服务的服务器上。

Filebeat是一个轻量级的托运人,用于转发和集中日志数据. Filebeat作为代理安装在服务器上,监视您指定的日志文件或位置,收集日志事件,并将它们转发到

ElasticSearch

Logstash

进行索引.

官方中文文档:

Logstash是一个开源的服务器端数据处理管道,可以同时从多个数据源获取数据,并对其进行转换,然后念樱缓将其发送到你颂裂最喜欢的“存仔模储”。

官方中文文档:

Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。Lucene 可以说是当下更先进、高性能、全功能的搜索引擎库–无论是开源还是私有。

官方中文文档:

《Elasticsearch:权威指南》:

Kibana 是一款开源的数据分析和可视化平台,它是 Elastic Stack 成员之一,设计用于和 Elasticsearch 协作。您可以使用 Kibana 对 Elasticsearch 索引中的数据进行搜索、查看、交互操作。您可以很方便的利用图表、表格及地图对数据进行多元化的分析和呈现。

官方中文文档:

nginx.conf中设置日志文件格式:

修改完成后,通过 sudo nginx -t 来检查配置文件是否正确,然后 sudo nginx -s reload 来重启

filebeat各系统安装教程详见官方文档。

我这里安装的deb包(rpm包也同样),配置文件在

/etc/filebeat/filebeat.yml

,

filebeat命令:

参数介绍:

在/usr/local/文件夹下依次创建logstash/conf.d/logstash.conf

grok正则在线验证地址:

正则代表的含义:

配置成功后,执行如下命令重启docker中的logstash (有时会重启失败,多试几次吧)

在浏览器中输入 进入kibana

然后如下设置

然后创建 index pattern

然后选择@timestamp

最后在Discover标签页就可以看到了

filebeat常见问题

Filebeat保持文件处理程序打开,直到文件到达文件末尾,以便它可以近乎实时地读取新的日志行。 如果Filebeat正在收集大量文件,则打开文件的数量可能会成为问题。 在大多数环境中,正在更新的文件数量很少。

close_inactive配置选项应相应地设置为关闭不再处于活动状态的文件。

您可以使用其他配置选项来关闭文件处理程序,但所有这些选项都应该小心使用,因为它们可能有副作用。 选项是:

close_renamed和close_removed选项在Windows上很有用,可以解决与文件旋转相关的问题。

请参阅打开文件处理程序导致Windows文件旋转问题?

close_eof选项在具有大量只有很少条目的文件的环境中很有用。

close_timeout选项在关闭文件处理程序比发送所有日志行更重要的环境中很有用。 有关更多详细信息,请参阅设置探矿者。

确保在使用这些配置选项之前阅读这些配置选项的文档。

Filebeat可能被配置为频繁扫描文件。 检查filebeat.yml配置文件中scan_frequency的设置。 将scan_frequency设置为小于1s可能会导致Filebeat在频繁的循环中扫描磁盘。

Filebeat保持每个文件的状态并将该状态保存在registry_file中的磁盘上。 Filebeat重新启动时,文件状态用于在前一个位置继续读取文件。 如果每天都生成大量新文件,则

注册表

文件可能会变得太大。 要减小注册表文件的大小,有两个可用的配置选项:clean_removed和clean_inactive。

对于不再接触并忽略的旧文件(请参阅ignore_older),我们建议您使用clean_inactive。 如果旧文件从磁盘中删除,请使用clean_removed选项。

Inode重用会导致Filebeat跳过行吗?

在Linux

文件系统

上,Filebeat使用inode和设备来识别文件。

从磁盘中删除文件时,可将inode分配给新文件。

在涉及文件旋转的使用情况下,如果旧文件被删除并且之后立即创建新文件,

新文件可能与删除的文件具有完全相同的inode。在这种情况下,Filebeat假定新文件与旧文件相同,并尝试在旧位置继续读取,这是不正确的。

默认状态不会从注册表文件中删除。要解决inode重用问题,我们建议您使用clean_ *选项(特别是clean_inactive)来删除非活动文件的状态。

例如,如果您的文件每24小时轮换一次,培段并且轮换的文件不再更新,则可以将ignore_older设置为48小时,将clean_inactive设置为72小时。

您可以将clean_removed用于从磁盘中删除的文件。请注意,clean_removed会在扫描期间无法找到文件时清除注册表中的文件状态。如果文件稍后再次显示,它将从头开始重新发送。

Filebeat使用

换行符

来检测事件的结束。 如果将行逐渐添加到正在采集的文件中,则在最后一行之后需要换行符,否则Filebeat将不会读取文件的最后一行。

在默认行为中,Filebeat会打开文件并保持打开状态,直到达到文件末尾。

在配置的输出很长时间(例如Elasticsearch或Logstash不可用)的情况下,这可能会导致Filebeat将文件处理程序保留到同时从文件系统中删除的文件。 只要Filebeat保持已删除的文件处于打开状态,操作系统就不会释放磁盘空间,这可能会导致磁盘利用率增加,甚至出现磁盘不足的情况。

为迅激了缓解这个问题,您可以将close_timeoutedit设置设置为”5m”。 这亩中袜将确保每5分钟关闭一次文件处理程序,而不管是否达到EOF。

请注意: 如果在Filebeat到达文件末尾之前删除文件,则此选项可能会导致数据丢失。

如果您需要限制带宽使用率,我们建议您在操作系统OS上配置网络

堆栈

以执行带宽限制。

例如,以下Linux命令通过在通过端口5044的TCP连接上设置50 kbps的限制来限制Filebeat和Logstash之间的连接:

使用操作系统工具执行带宽限制可让您更好地控制策略。 例如,您可以使用操作系统工具在白天限制带宽,但不是在晚上。 或者您可以保留带宽不受限制,但为流量分配低优先级。

您的配置文件的结构有问题,或者您使用了YAML分析程序无法解析的路径或

表达式

,因为配置文件包含未正确转义的字符。

如果YAML文件包含具有空格或不常用字符的路径,请将路径包装在

单引号

中(请参阅将单引号标记为包裹路径)。

另请参阅YAML提示和疑难解答中的一般建议:

索引模板可能未正确加载。 请参阅步骤4:在Elasticsearch中加载索引模板。

如果您最近执行了加载或解析自定义结构化日志的操作,则可能需要刷新索引以使字段在Kibana中可用。 要刷新索引,请使用刷新API。 例如:

【参考:

关于linux 安装filebeat的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » Linux下如何安装Filebeat,步骤详解 (linux 安装filebeat)