ELK+filebeat

目录

一、filebeat概述

1、filebeat概念:

2、filebeat的优缺点

3、filebeat结合logstash带来的好处?

4、工作流程图:

二、filebeat+ELK实验部署


一、filebeat概述

1、filebeat概念:

filebeat日志收集工具和logstash相同

filebeat是一款轻量级的日志收集工具,可以在非JAVA环境下运行。

因此,filebeat常被用在非JAVAf的服务器上用于替代Logstash,收集日志信息。
实际上,Filebeat几乎可以起到与Logstash相同的作用,
可以将数据转发到Logstash、Redis或者是Elasticsearch中进行直接处理。

为什么要用filebeat来收集日志?为什么不直接使用lohstash收集日志?
因为logstash是jvm跑的,资源消耗比较大,启动一个logstash就需要消耗500M左右的内存
(这就是为什么logstash启动特别慢的原因)。

而filebeat只需要10M左右的内存资源。
常用的ELK日志采集方案中,大部分的做法就是将所有节点的日志内容通过filebeat发送到logstash,
lostash根据配置文件进行过滤,然后将过滤之后的文件传输到elasticsearch中,最后通过kibana展示。

2、filebeat的优缺点

优点:

filebeat是一个轻量级的日志收集工具,所使用的系统资源比logstash部署和启动时使用的资源要小的多

filebeat可以运行在非java环境。他可以代替logstash在非Java环境上收集日志

filebeat收集的数据可以发往多个主机。远程收集

缺点:

filebeat无法实现数据的过滤,一般是结合logstash的数据过滤功能一块使用

3、filebeat结合logstash带来的好处?


1、通过logstash,具有基于磁盘的自适应缓冲系统,该系统将吸收传入的吞吐量,
从而减轻Elasticsearch持续写入数据的压力。

2、从其它数据源(例如数据库,s3对象存储或消息传递队列)中提取

3、将数据发送到多个目的地,例如S3,HDFS(hadoop分部署文件系统)或写入文件

4、使用数据流逻辑组成更复杂的处理管道。

4、工作流程图:

二、filebeat+ELK实验部署

架构:

ES节点两个:

node1:20.0.0.21

node2:20.0.0.22

日志节点(logstash、kibana、filebeat):20.0.0.23

1.安装 Filebeat

#上传软件包 filebeat-6.7.2-linux-x86_64.tar.gz 到/opt目录

tar zxvf filebeat-6.7.2-linux-x86_64.tar.gz

mv filebeat-6.7.2-linux-x86_64/ /usr/local/filebeat

#时间同步

yum install ntpdate -y

ntpdate ntp.aliyun.com

2.设置 filebeat 的主配置文件

cd /usr/local/filebeat

vim filebeat.yml

filebeat.inputs:

- type: log

  enabled: true

  paths:

    - /usr/local/nginx/logs/access.log

    - /usr/local/nginx/logs/error.log

  tags: ["nginx_23"]

  fields:

    service_name: 20.0.0.23_nginx

    log_type: nginx

    from: 20.0.0.23

Elasticsearch output模块全部注释掉

因为filebeat只能收集日志,不能过滤日志,所以需要先发给logstash过滤处理日志,再由logstash发送给elasticsearch。这里不直接发送给elasticsearch

Logstash output

配置logsatsh

input {

   beats { port => "5044" }

}

output {

  if "nginx_23" in [tags] {

  elasticsearch {

  hosts => ["20.0.0.21:9200","20.0.0.22:9200"]

  index =>"%{[fields][service_name]}-%{+YYYY.MM.dd}"

    }

   }

 stdout {

    codec => rubydebug

  }

}

启动 filebeat:

nohup ./filebeat -e -c filebeat.yml > filebeat.out &

-e:输出到标准输出,禁用syslog/文件输出

-c:指定配置文件

nohup:在系统后台不挂断地运行命令,退出终端不会影响程序的运行

给所要操作的日志访问权限

chmod 777 access.log error.log

启动logstash配置:

logstash -f nginx_23.conf --path.data /opt/test1 &

filebeat 远程收集日志

工作过程:

filebeat和logstash不部署在同一节点上

filebeat先在节点上收集日志,在远程发送给logstash。

在节点上安装filebeat

配置filebeat文件:

Filebeat inputs

Elasticsearch output(全部注释掉)

Logstash output

output.logstash:

  # The Logstash hosts

  hosts: ["20.0.0.23:5045"]      #指定 logstash 的 IP 和端口

配置logstash(去logstash节点)

启动 filebeat(filebeat节点)

cd /usr/local/filebeat

nohup ./filebeat -e -c filebeat.yml > filebeat.out &

去logstash节点启动

logstash -f nhm.conf --path.data /opt/test2 &

logstash可以使用任意端口,只要没被占用都可以使用,推荐1024之后开始

如何对logstash做性能上的优化

logstash启动是在jvm虚拟机上启动的,启动一次至少占500M内存

pipeline.workers: 2

logstash的工作线程,默认值就是cpu数,4核给2, 8核 给4 给一半即可

pipeline.batch.size 125

一次性能够批量处理检索事件的大小默认125。性能好可以给 200

pipline.batch.delay: 50

查询更新的延迟。50毫秒,可以自行调整。生产中15 、10。看机器性能

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2023-12-07 15:54:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-07 15:54:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-07 15:54:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-07 15:54:02       20 阅读

热门阅读

  1. LaTex语法实现多种矩阵

    2023-12-07 15:54:02       34 阅读
  2. C++ 强制转换

    2023-12-07 15:54:02       35 阅读
  3. 【网络安全】下载并安装 kali 的虚拟机 版本

    2023-12-07 15:54:02       49 阅读
  4. 高防CDN:企业网络安全的坚实屏障

    2023-12-07 15:54:02       40 阅读
  5. RPC 简介

    2023-12-07 15:54:02       36 阅读
  6. Docker命令大全简介及示例

    2023-12-07 15:54:02       31 阅读
  7. RabbitMQ常用命令(二)

    2023-12-07 15:54:02       34 阅读
  8. Vue.observable

    2023-12-07 15:54:02       26 阅读
  9. 剑指 Offer(第2版)面试题 19:正则表达式匹配

    2023-12-07 15:54:02       44 阅读
  10. 在Django中使用Q对象和条件运算符来构建动态查询

    2023-12-07 15:54:02       44 阅读
  11. Python环境管理利器-Anaconda介绍与安装

    2023-12-07 15:54:02       44 阅读
  12. Django 中的 HMAC 请求签名校验与 Vue.js 的完美协作

    2023-12-07 15:54:02       43 阅读
  13. AIGC: 关于ChatGPT中API接口调用相关准备工作

    2023-12-07 15:54:02       46 阅读