elastic filebeat安装

简介

elastic生态对于日志采集有2个工具,各种beat和logstach,那么选哪个呢?

首先filebeat是Beats中的一员。
  Beats在是一个轻量级日志采集器,其实Beats家族有6个成员,早期的ELK架构中使用Logstash收集、解析日志,但是Logstash对内存、cpu、io等资源消耗比较高。相比Logstash,Beats所占系统的CPU和内存几乎可以忽略不计。
目前Beats包含六种工具:

  • Packetbeat:网络数据(收集网络流量数据)
  • Metricbeat:指标(收集系统、进程和文件系统级别的CPU和内存使用情况等数据)
  • Filebeat:日志文件(收集文件数据)
  • Winlogbeat:windows事件日志(收集Windows事件日志数据)
  • Auditbeat:审计数据(收集审计日志)
  • Heartbeat:运行时间监控(收集系统运行时的数据)

filebeat是什么?

  Filebeat是用于转发和集中日志数据的轻量级传送工具。Filebeat监视您指定的日志文件或位置,收集日志事件,并将它们转发到Elasticsearch或 Logstash进行索引。

  Filebeat的工作方式如下:启动Filebeat时,它将启动一个或多个输入,这些输入将在为日志数据指定的位置中查找。对于Filebeat所找到的每个日志,Filebeat都会启动收集器。每个收集器都读取单个日志以获取新内容,并将新日志数据发送到libbeat,libbeat将聚集事件,并将聚集的数据发送到为Filebeat配置的输出。

       工作的流程图如下

filebeat和logstash的关系

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

服务器部署filebeat

下载:

https://www.elastic.co/cn/downloads/past-releases#filebeat

选择自己公司需要使用的版本。这边建议使用rpm包安装,因为这种方式安装会自动以系统服务的方式安装

安装:

rpm -ivh filebeat-7.15.1-x86_64.rpm

安装成功之后查看系统服务,是否自动安装成功

 cat /lib/systemd/system/filebeat.service

[Unit]
Description=Filebeat sends log files to Logstash or directly to Elasticsearch.
Documentation=https://www.elastic.co/beats/filebeat
Wants=network-online.target
After=network-online.target

[Service]

Environment="GODEBUG='madvdontneed=1'"
Environment="BEAT_LOG_OPTS="
Environment="BEAT_CONFIG_OPTS=-c /home/filebeat/filebeat.yml"
Environment="BEAT_PATH_OPTS=--path.home /usr/share/filebeat --path.config /etc/filebeat --path.data /var/lib/filebeat --path.logs /var/log/filebeat"
ExecStart=/usr/share/filebeat/bin/filebeat --environment systemd $BEAT_LOG_OPTS $BEAT_CONFIG_OPTS $BEAT_PATH_OPTS
Restart=always

[Install]
WantedBy=multi-user.target

这边需要指定自己的filebeat.yml文件

修改BEAT_CONFIG_OPTS   

设置自己的filebeat主文件

logging.level: info
logging.to_files: true 
logging.files:  ##指定日志相关配置
  path: /home/filebeat/logs
  name: fileBeatlog
  keepfiles: 7
  permissions: 0644

filebeat.config.inputs:  ##配置input文件 文件热加载
  enabled: true
  path: /home/filebeat/config/*.yml   ##指定加载input目录
  reload.enabled: true  ##开启热加载
  reload.period: 1s  ##1s扫描一次  不配置默认1秒



output.file:   ##配置output
  enabled: true
  path: "/home/filebeat/output"
  filename: filebeat_output.log
  rotate_every_kb: 10000
  number_of_files: 7
  permissions: 0644

以上配置简单的说下

1.设置自己的日志地址,名称,保留几个文件,以及权限

2.设置热加载,即把input相关配置抽取到独立的配置,filebeat会自动扫描加载最新配置

3.设置输出的地方,这边设置输出到文件

设置filebeat的 input文件

- type: log
  enabled: true
  paths:
    - /home/filebeat/input/*.log

这边是设置一个log方式的input  更全的input配置参考官网

Filebeat Reference [7.15] | Elastic

启动服务

systemctl daemon-reload  (首次需要加载配置)

systemctl start filebeat

启动之后往 目录 /home/filebeat/input/ 丢一个日志文件发现可以写入到 /home/filebeat/output/filebeat_output.log  

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

white......

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值