ELK-日志服务【filebeat-安装使用】

本文详细介绍了如何在Linux服务器上安装并配置Filebeat,用于收集系统文件、nginx和tomcat日志,并将数据发送到ES集群。内容包括Filebeat的安装、配置测试、定制索引名称、收集多个web节点日志以及图形化展示等步骤。
摘要由CSDN通过智能技术生成

目录

【1】安装Filebeat

【2】配置-测试

【3】配置使用Filebeat 

【4】filebeat-收集系统文件日志

【5】配置filebeat,将/var/log/all.log日志采集到es集群中

【6】定制索引名称

【7】收集多个web节点的日志,输出到相同的索引中

【8】filebeat-收集nginx日志

【9】修改nginx的日志格式

【10】图形化展示

【11】filebeat-收集nginx的访问日志+错误日志

【12】filebeat收集nginx多虚拟主机日志

【13】收集tomcat日志

【14】filebeat-收集tomcat错误日志


【1】安装Filebeat

[root@filebeat ~]# rpm -ivh filebeat-7.4.0-x86_64.rpm 
warning: filebeat-7.4.0-x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID d88e42b4: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:filebeat-7.4.0-1                 ################################# [100%]

【2】配置-测试

  • 配置filebeat从终端读入,从终端输出
[root@filebeat ~]# vim /etc/filebeat/test.yml
filebeat.inputs:
- type: stdin
  enabled: true
output.console:
  pretty: true
  enable: true

## 测试
[root@filebeat ~]# filebeat -e -c test.yml

【3】配置使用Filebeat 

[root@filebeat ~]# cp /etc/filebeat/filebeat.yml /etc/filebeat/filebeat.yml_bak
[root@filebeat ~]# vim /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/messages

output.elasticsearch:
  hosts: ["10.0.0.21:9200","10.0.0.22:9200","10.0.0.23:9200"]
  enable: true

## 测试
[root@filebeat ~]# systemctl restart filebeat.service

  • 使用kibana读取filebeat索引中的数据

 

 

 

 

  • 日志中写入新的数据,刷新验证是否能被命中
[root@filebeat ~]# echo "test" >> /var/log/messages

【4】filebeat-收集系统文件日志

系统日志包含messages、secure、cron、dmesg、ssh、boot等

如果挨个配置会变得很麻烦,我们可以将这些日志进行统一几种管理,使用rsyslog将本地所有类型的日志都写入到/var/log/all.log文件中,然后使用filebeat对该文件进行收集

[root@filebeat ~]# yum -y install rsyslog
....
$ModLoad imudp
$UDPServerRun 514
....
*.* /var/log/all.log
....

## 重启测试
[root@filebeat ~]# systemctl restart rsyslog.service    
[root@filebeat ~]# logger "rsyslog test from all"
[root@filebeat ~]# grep "all" /var/log/all.log 
Jul 11 05:25:47 filebeat root: rsyslog test from all

【5】配置filebeat,将/var/log/all.log日志采集到es集群中

  • 先删除es中的索引和kibana中匹配的索引,重启后生成新的索引

[root@filebeat ~]# vim /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/all.log
  include_lines: ['^ERR', '^WARN', 'sshd']

output.elasticsearch:
  hosts: ["10.0.0.21:9200","10.0.0.22:9200","10.0.0.23:9200"]
  enable: true

[root@filebeat ~]# systemctl restart filebeat.service

【6】定制索引名称

[root@filebeat ~]# vim /etc/filebeat/filebeat.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/all.log
  include_lines: ['^ERR', '^WARN', 'sshd']

output.elasticsearch:
  hosts: ["10.0.0.21:9200","10.0.0.22:9200","10.0.0.23:9200"]
  enable: true
  index: "system-%{[agent.version]}-%{+yyyy.MM.dd}"
setup.ilm.enabled: false             # 索引的生命周期。默认开启,开启后索引名称只能是filebeat
setup.template.name: "system"        # 定义模板名称
setup.template.pattern: "system-*"   # 定义模板匹配索引的名称

## 索引分片,方式一
setup.template.settings:
  index.number_of_shards: 3
  index.number_of_replicas: 1

## 索引分片,方式二
1、修改system模板,添加分片和副本数量
2、删除模板关联的索引
3、重启filebeat
4、产生新的日志验证

  • 我们需要删除syste模板和索引,因为模板默认分片就是1,要不然分片永远不会生效

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

梦有一把琐

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

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

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

打赏作者

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

抵扣说明:

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

余额充值