elastic之部署filebeat

本文详细描述了如何下载和安装Filebeat7.17.5版本,配置其收集Nginx和Tomcat日志,并将其转换为JSON格式,最终发送到Elasticsearch。还包括了使用systemd设置服务,确保日志收集的持续性和监控ES集群状态的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装包准备

filebeat-7.17.5-linux-x86_64.tar.gz

官网链接:https://www.elastic.co/cn/downloads/

软件安装

创建目录

install -d /softwares
install -d /logs/filebeat
install -d /data/filebeat
install -d /softwares/filebeat/config

安装filebeat

tar xf filebeat-7.17.5-linux-x86_64.tar.gz -C /softwares/

创建软链接

ln -s /softwares/filebeat-7.17.5-linux-x86_64/ /softwares/filebeat

编写配置文件

收集nginx、tomcat日志到elasticsearch

这里收集的日志都已转换为json格式,格式转换详情见基于jpress的云上个人博客搭建

 vim /softwares/filebeat/config/nginx\&tomcat-to-elasticsearch.yml
 filebeat.inputs:
  - type: log
    paths:
    - /logs/nginx/access*.log
    tags: ["nginx_access"]
    json.keys_under_root: true
    json.add_error_key: true

  - type: log
    paths:
    - /logs/nginx/error*.log
    tags: ["nginx_error"]
    json.keys_under_root: true
    json.add_error_key: true

  - type: log
    paths:
    - /logs/tomcat/jpress_access_log.*.txt
    tags: ["tomcat_access"]
    json.keys_under_root: true
    json.add_error_key: true

  - type: log
    paths:
    - /logs/tomcat/catalina.*.log
    tags: ["tomcat_error"]
    json.keys_under_root: true
    json.add_error_key: true


output.elasticsearch:
  hosts:
  - "http://localhost:9200"
  
  # 指定多个索引,使用when语句  
  indices:
  - index: "gyang.cloud-nginx_access-%{+yyyy.MM.dd}"
    when.contains:
      tags: "nginx_access"
  
  - index: "gyang.cloud-nginx_error-%{+yyyy.MM.dd}"
    when.contains:
      tags: "nginx_error"
  
  - index: "gyang.cloud-tomcat_access-%{+yyyy.MM.dd}"
    when.contains:
      tags: "tomcat_access"
  
  - index: "gyang.cloud-tomcat_error-%{+yyyy.MM.dd}"
    when.contains:
      tags: "tomcat_error"


setup.ilm.enabled: false
# 设置索引目标的名称
setup.template.name: "gyang.cloud"
setup.template.pattern: "gyang.cloud*"
setup.template.overwrite: true
setup.template.settings:
  index.number_of_shards: 1
  index.number_of_replicas: 1

启动filebeat测试日志收集

临时启动filebeat,指定配置文件

./filebeat -e -c config/nginx\&tomcat-to-elasticsearch.yml

访问kibana(kibana部署详见elastic之部署kibana

Stack Management ---> 索引管理

能看到索引说明filebeat收集日志是成功的

注意:索引的运行状况如果为黄色和红色,说明配置文件有错误。

ES集群有几种颜色,分别代表:

- 绿色(GREEN)
 代表ES集群的所有主分片和副本分片处于健康状态(可访问)。

- 黄色(YELLLOW)
 代表ES集群的部分副本分片无法访问。

- 红色(RED)
 代表ES集群的部分主分片无法访问。一般情况下会在ES集群启动时短暂出现该状态。

systemctl管理filebeat

编辑/etc/systemd/system/filebeat.service

vim /etc/systemd/system/filebeat.service

[Unit]
Description=Filebeat Server
After=network.target remote-fs.target nss-lookup.target

[Service]
User=root
Group=root
Environment="BEAT_CONFIG_OPTS=-c /softwares/filebeat/config/nginx&tomcat-to-elasticsearch.yml"
Environment="BEAT_PATH_OPTS=--path.home /softwares/filebeat --path.data /data/filebeat --path.logs /logs/filebeat"

ExecStart=/softwares/filebeat/filebeat $BEAT_CONFIG_OPTS $BEAT_PATH_OPTS
Restart=always

[Install]
WantedBy=multi-user.target

启动filebeat

systemctl daemon-reload
systemctl start filebeat
systemctl enable filebeat.service
systemctl status filebeat.service.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值