filebeat的安装及配置

概述:Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读),而且转发这些信息到elasticsearch、logstarsh或者redis中存放。html

相关链接

1、filebeat安装

  本次安装filebeat使用的是已经下载至本地的tar包,只须要解压便可使用。linux

tar xf filebeat-6.2.2-linux-x86_64.tar.gz

  filebeat能够起多个进程,运行依赖于.yml 配置文件。文件中定义filebeat读取的日志文件,以及输出方式。安装完成以后,会有一个模板 filebeat.yml,咱们能够自定义 .yml 文件的名称,只须要启动的时候接入配置文件便可。redis

  启动多个进程,须要使用参数 --path.data /xxx/xxx 来重定向进程路径。ruby

2、应用场景

场景一:Filebeat采集数据,写入到logstash服务器

  filebeat配置文件:out-logstash.ymlapp

filebeat: prospectors: - paths: -  /var/log/named/namequery.log output.logstash: hosts: ["logstashIP:5044"]

  启动filebeat负载均衡

./filebeat -e -c out-logstash.yml --path.data /apps/data/filebeat/out-logstash/

  logstash配置elasticsearch

input { beats { port => 5044 } } output { stdout { codec => "rubydebug" } }

 

场景二:Filebeat采集数据,写入到redis,而后logstash从reids队列中拉取数据ide

  filebeat配置文件:out-redis.yml工具

filebeat: prospectors: - paths: - /var/log/named/namequery.log output.redis: hosts: ["redis_1IP","redis_2IP","redis_3IP"] loadbalance: false                      # 数据只是往一个redis里丢,若是这个redis挂了,就会自动将数据丢在另外一个redis中,若是为yes,则将数据均分到各个redis中 port: 6379 key: "dns-ct" db: 0 timeout: 3

   启动filebeat

./filebeat -e -c out-redis.yml --path.data /apps/data/filebeat/out-redis/

  logstash配置

此处须要进行解释,第二套应用场景是将一个文件丢如三个redis,由于为开启负载均衡,因此只会有一个redis读取到文件,而安装部署的时候就将每台服务器安装了logstash和redis,而且logstash将数据处理以后将数据所有输出至同一个es集群。

input { redis { host => "localredisIP" port => 6379 key => "dns-ct" data_type => "list" } }
output { stdout { codec => "rubydebug" } }
相关文章
相关标签/搜索