ELK安装、部署、调试(五)filebeat的安装与配置

这篇具有很好参考价值的文章主要介绍了ELK安装、部署、调试(五)filebeat的安装与配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.介绍

logstash 也可以收集日志,但是数据量大时太消耗系统新能。而filebeat是轻量级的,占用系统资源极少。

Filebeat 由两个主要组件组成:harvester 和 prospector。

采集器 harvester 的主要职责是读取单个文件的内容。读取每个文件,并将内容发送到 the output。 每个文件启动一个 harvester,harvester 负责打开和关闭文件,这意味着在运行时文件描述符保持打开状态。如果文件在读取时被删除或重命名,Filebeat 将继续读取文件。

查找器 prospector 的主要职责是管理 harvester 并找到所有要读取的文件来源。如果输入类型为日志,则查找器将查找路径匹配的所有文件,并为每个文件启动一个 harvester。每个 prospector 都在自己的 Go 协程中运行。

ELK安装、部署、调试(五)filebeat的安装与配置,ELK,elk,filebeat

2.下载

下载地址:www.elastic.co/downloads/beats/filebeat

百度云elk

3.安装

tar -zxvf filebeat-7.9.3-linux-x86_64.tar.gz -C /usr/local
cd /usr/local/
mv filebeat-7.9.3-linux-x86_64 filebeat
cd filebeat/
[root@node1 filebeat]# ls -l
fields.yml     filebeat      filebeat.reference.yml         filebeat.yml         kibana
LICENSE.txt        module         modules.d      NOTICE.txt         README.md

filebeat为应用程序
cd /usr/local/filebeat/filebeat.yml 是配置文件
modules.d的目录下放置的日志收集模板,实现了模块化的日志收集

[root@node1 modules.d]# ls
activemq.yml.disabled    coredns.yml.disabled        ibmmq.yml.disabled     microsoft.yml.disabled 
okta.yml.disabled        squid.yml.disabled    apache.yml.disabled      crowdstrike.yml.disabled    icinga.yml.disabled    misp.yml.disabled       osquery.yml.disabled     suricata.yml.disabled
auditd.yml.disabled      cylance.yml.disabled        iis.yml.disabled       mongodb.yml.disabled    
panw.yml.disabled        system.yml.disabled   aws.yml.disabled         elasticsearch.yml.disabled  imperva.yml.disabled   mssql.yml.disabled      postgresql.yml.disabled  tomcat.yml.disabled
azure.yml.disabled       envoyproxy.yml.disabled     infoblox.yml.disabled  mysql.yml.disabled      
rabbitmq.yml.disabled    traefik.yml.disabled   barracuda.yml.disabled   f5.yml.disabled             iptables.yml.disabled  nats.yml.disabled        radware.yml.disabled     zeek.yml.disabled
bluecoat.yml.disabled    fortinet.yml.disabled       juniper.yml.disabled   netflow.yml.disabled    
redis.yml.disabled       zscaler.yml.disabled   cef.yml.disabled         googlecloud.yml.disabled    kafka.yml.disabled     netscout.yml.disabled     santa.yml.disabled
checkpoint.yml.disabled  gsuite.yml.disabled         kibana.yml.disabled    nginx.yml.disabled      
sonicwall.yml.disabled  cisco.yml.disabled       haproxy.yml.disabled        logstash.yml.disabled  o365.yml.disabled      
sophos.yml.disabled

4.配置

配置filebeat.yml
注意 以下使用“-” 为首字母的,要求前面不能使用tab做缩进,

filebeat.inputs:                      #定义日志输入的开始
- type: log        

#注意格式,收集日志类型为日志,还可以是redis,UDP,TCP,docker,syslog,stdin等
  enabled: true                       #使用手动模式,如果false将使用modules.d目录下的模块方式
  paths:                              #要收集的日志的路径
   - /var/log/messages
   - /var/log/secure
 #如果日志较多,可以模糊的填写,如 - /data/nginx/logs/ngix_*.log
 # - /var/log/*.log 的配置会获取/var/log下所有子目录中以.log结尾的日志,而不会查找/var/log/目录下的.log文件。
  fields:
   log_topic:osmessages              #osmessages是自己定义主体的名字
name: "10.10.10.56"                  #指定名字,不配置时默认使用主机名
output.kafka:
  eanbled: true
  hosts: ["10.10.10.71:9092","10.10.10.72:9092","10.10.10.73:9092"]   #kafka集群的地址和端口号
  version: 2.0.1                     #kafka的版本号
  topic: '%{[fields][log_topic]}'    #也可以fields.log_topic的写法
  partition.round_robin:             #采用轮询的方式
    reachable_only: true
  worker: 2
  required_acks: 1                    #有1,2,3等可写,1最大限度保证
  compression: gzip
  max_message_bytes: 10000000
 logging.level: debug                 #info,warming,error等可写,定义  日志级别

配置里还包含一些过滤条件,如行排除,行包含,文件排除等
exclude_lines: ['^DBG']
include_lines: ['^ERR', '^WARN']
exclude_files: ['.gz$']

以上配置使用了kafka作为filebeat的输出,

配置

# ============================== Filebeat modules ==============================

filebeat.config.modules:
  # Glob pattern for configuration loading
  path: ${path.config}/modules.d/*.yml

  # Set to true to enable config reloading
  reload.enabled: false

  # Period on which files under path should be checked for changes
  #reload.period: 10s

# ======================= Elasticsearch template setting =======================

文档中还有一些模块的配置,如上
由于我们在
filebeat.inputs: 
- type: log        
  enabled: true      这里我们设置为了true,使用了手动配置的方式,屏蔽了快速模块,这里配置为false时,才使用模块配
置


使用./filebeat test config 或者./filebeat -c filebeat.yml -configtest 对配置文件进行格式测试。检查启动filebeat

more filebeat.yml

nohup /usr/local/filebeat/filebeat -e -c /usr/local/filebeat/filebeat.yml &

测试
tail -f nohup.out 查看收集的日志


  "@timestamp": "2023-08-28T07:56:14.266Z",  时间戳
  "@metadata": {
    "beat": "filebeat",                       
    "type": "_doc",
    "version": "7.9.3"
  },
  "log": {                                   类型
    "file": {
      "path": "/var/log/secure"
    },
    "offset": 508431                         位置,偏移量
  },
  "message": "Aug 28 15:56:12 node1 sshd[31513]: pam_limits(sshd:session): invalid line 'End of file' -
skipped",
  "fields": {                                 自定义的域
    "log_topic": "osmessages"
  },
  "input": {                                  类型
    "type": "log"
  },
  "agent": {
    "id": "a5a5cdf5-42f5-40a8-8c4c-068b76a2b22c",
    "name": "10.10.10.56",
    "type": "filebeat",
    "version": "7.9.3",
    "hostname": "node1",
    "ephemeral_id": "826d8757-65f0-4838-b915-409eba0cd6bf"
  },
  "ecs": {
    "version": "1.5.0"
  },
  "host": {
    "name": "10.10.10.56"
  }
}

我们看到,很多信息都是filebeat附带的一些信息。    我们可以通过配置参数的过滤掉一些信息。

# ================================= Processors =================================
processors:
#  - add_host_metadata:
#      when.not.contains.tags: forwarded
#  - add_cloud_metadata: ~
#  - add_docker_metadata: ~
#  - add_kubernetes_metadata: ~

  - drop_fields:
      fields: ["host","input","offset","ecs","log","agent.id"]

drop_fields:所定义的就是不需要在日志中显示的filebeat自带的一些信息。
上面的配置信息agent.id ,因为agent下有很多个属性,仅过滤掉id这个属性

 "agent": {
    "id": "a5a5cdf5-42f5-40a8-8c4c-068b76a2b22c",
    "name": "10.10.10.56",
    "type": "filebeat",
    "version": "7.9.3",
    "hostname": "node1",
    "ephemeral_id": 

这样配置后,将在日志文件中过滤掉 以上属性的内容,仅显示留下的内容。


通过tail -f nohup.out查看本机产生的日志
通过在kafka机器上用过消费来开传到kafka上的日志
cd /usr/local/kafka/bin
./kafka-console-consumer.sh  --bootstrap-server 10.10.10.71:9092,10.10.10.72:9092,10.10.10.73:9092 --topic
osmessages
 文章来源地址https://www.toymoban.com/news/detail-688227.html

到了这里,关于ELK安装、部署、调试(五)filebeat的安装与配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ELK之Filebeat安装配置及日志抓取

    轻量型日志采集器 无论您是从安全设备、云、容器、主机还是 OT 进行数据收集,Filebeat 都将为您提供一种轻量型方法,用于转发和汇总日志与文件,让简单的事情不再繁杂。 Filebeat 随附可观测性和安全数据源模块,这些模块简化了常见格式的日志的收集、解析和可视化过程

    2024年02月02日
    浏览(55)
  • 私有部署ELK,搭建自己的日志中心(二)-- filebeat的介绍与安装

    在搭建ELK系统之前,你有必要去了解下,为何大家在agent端普遍青睐filebeat,而把logstash放置于更加靠后端。 轻量级的filebeat,作为agent角色,是安装在每台虚拟机上。 filebeat的学习分为两大部分: 安装(二进制或docker) 配置文件filebeat.yml 本文主要介绍docker安装方式,对于其

    2024年02月03日
    浏览(61)
  • ELK (一)部署ELK+Filebeat日志收集分析系统

    说明:此安装流程只适用于8.0.0以下的版本 1.1 下载ElasticSearch的wget指令: 1.2 解压安装包到指定目录 指定解压缩到 /usr/local 目录下 1.3 修改配置文件 (1)elasticsearch.yml 分别创建 path.data、path.logs 对应的 data、logs文件夹。 详细配置: (2)limits.conf 末尾追加以下内容: (3)s

    2024年02月08日
    浏览(48)
  • ELK安装、部署、调试 (二) ES的安装部署

    ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口操作ES,也可以利用Java API。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索

    2024年02月10日
    浏览(38)
  • Filebeat+ELK 部署

    Node1节点(2C/4G):node1/192.168.8.10                   Elasticsearch  Kibana Node2节点(2C/4G):node2/192.168.8.11                    Elasticsearch Apache节点:apache/192.168.8.13                      Logstash  Apache Filebeat节点:filebeat/192.168.8.20                    Filebeat   //在 Node1 节

    2024年02月14日
    浏览(42)
  • 【ELK企业级日志分析系统】部署Filebeat+ELK详解

    接上文安装与部署ELK详解 (1)在Filebeat节点上,安装Apache服务 (2)修改Apache服务的配置文件 (3)开启Apache服务 (4)浏览器访问,验证Apache服务 (1) 安装Filebeat (2)设置filebeat的主配置文件 (3)启动filebeat (4)在Logstash组件所在节点上,新建一个Logstash配置文件(CentOS 7-3) (

    2024年02月16日
    浏览(45)
  • 【ELFK】Filebeat+ELK 部署

    Filebeat+ELK 部署 在 Filebeat 节点上操作 环境准备 1)安装 Filebeat #上传软件包 filebeat-6.2.4-linux-x86_64.tar.gz 到/opt目录 解压 rpm 默认会安装到/etc/ 目录下;tar安装的filebeat 文件要移动到/user/local/ 下  2)设置 filebeat 的主配置文件 先备份再修改 修改filebeat.yml 配置文件 1 1 1 1 1 启动

    2024年04月15日
    浏览(42)
  • ELK安装、部署、调试(一)设计规划及准备

    一、整体规划如图: 【filebeat】 需要收集日志的服务器,安装filebeat软件,用于收集日志。logstash也可以收集日志,但是占用的系统资源过大,所以使用了filebeat来收集日志。 【kafka】 接收filebeat的日志,进行队列及缓存,kafka使用集群的方式搭建,避免了filebeat直接向logstas

    2024年02月10日
    浏览(48)
  • ELK集群部署---LogStash,Filebeat的部署

    1.  环境规划: 主机名 IP地址 角色 node1 192.168.56.111 ElasticSearch(master) Zookeeper Kafka node2 192.168.56.112 ElasticSearch(slave) Kibana Zookeeper Kafka node3 192.168.56.113 ElasticSearch(slave) Zookeeper Kafka node4 192.168.56.114 Logstash Filebeat

    2023年04月18日
    浏览(41)
  • ELK安装、部署、调试(四)KAFKA消息队列的安装和部署

    Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 Kafka 

    2024年02月10日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包