温馨提示×

CentOS上Filebeat如何与Logstash配合使用

小樊
40
2025-10-21 22:40:32
栏目: 智能运维

在CentOS上,Filebeat和Logstash可以配合使用,以便集中收集、处理和转发日志数据。以下是配置Filebeat与Logstash配合使用的步骤:

1. 安装Filebeat

首先,确保你已经在CentOS上安装了Filebeat。你可以从Elastic官方网站下载最新版本的Filebeat,并按照官方文档进行安装。

wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.10.0-amd64.deb
sudo dpkg -i filebeat-7.10.0-amd64.deb

2. 配置Filebeat

编辑Filebeat的配置文件/etc/filebeat/filebeat.yml,指定Logstash的地址和端口。

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/*.log

output.logstash:
  hosts: ["logstash_server_ip:5044"]

logstash_server_ip替换为你的Logstash服务器的实际IP地址。

3. 安装Logstash

如果你还没有安装Logstash,可以从Elastic官方网站下载并安装。

wget https://artifacts.elastic.co/downloads/logstash/logstash-7.10.0-linux-x86_64.tar.gz
tar -xzf logstash-7.10.0-linux-x86_64.tar.gz
cd logstash-7.10.0

4. 配置Logstash

创建一个Logstash配置文件,例如/etc/logstash/conf.d/filebeat.conf,用于接收来自Filebeat的数据并进行处理。

input {
  beats {
    port => 5044
  }
}

filter {
  # 根据需要添加过滤器
  grok {
    match => { "message" => "%{COMBINEDAPACHELOG}" }
  }
  date {
    match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]
  }
}

output {
  elasticsearch {
    hosts => ["localhost:9200"]
    index => "filebeat-%{+YYYY.MM.dd}"
  }
}

这个配置文件接收来自Filebeat的数据,使用Grok过滤器解析日志,并将数据发送到Elasticsearch。

5. 启动Logstash

启动Logstash并加载配置文件。

sudo systemctl start logstash
sudo systemctl enable logstash

6. 启动Filebeat

启动Filebeat并开始发送日志数据到Logstash。

sudo systemctl start filebeat
sudo systemctl enable filebeat

7. 验证配置

确保Filebeat和Logstash都在运行,并且日志数据正在被正确处理和转发。

  • 检查Filebeat日志:

    sudo journalctl -u filebeat -f
    
  • 检查Logstash日志:

    sudo journalctl -u logstash -f
    
  • 检查Elasticsearch中的索引:

    curl -X GET "localhost:9200/_cat/indices?v"
    

通过以上步骤,你应该能够在CentOS上成功配置Filebeat与Logstash配合使用,实现日志数据的集中收集和处理。

0