温馨提示×

CentOS怎么配置Filebeat

小樊
38
2026-07-08 16:24:24
栏目: 智能运维

下面以 CentOS 7 / 8 为例,给你一份从安装到基本配置 Filebeat 的完整流程,适用于把日志发送到 ElasticsearchLogstash


一、安装 Filebeat

1. 导入 Elastic GPG 密钥

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

2. 添加 Elastic YUM 仓库

sudo tee /etc/yum.repos.d/elastic.repo <<EOF
[elastic-8.x]
name=Elastic repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

如果你用的是 7.x,把 8.x 改成 7.x


3. 安装 Filebeat

sudo yum install filebeat -y

查看版本:

filebeat version

二、配置 Filebeat

配置文件路径:

/etc/filebeat/filebeat.yml

三、常见配置示例

✅ 示例 1:采集系统日志 → Elasticsearch

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

output.elasticsearch:
  hosts: ["localhost:9200"]

✅ 示例 2:采集日志 → Logstash

filebeat.inputs:
  - type: log
    enabled: true
    paths:
      - /var/log/nginx/access.log
      - /var/log/nginx/error.log

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

✅ 示例 3:采集 JSON 日志(如应用日志)

filebeat.inputs:
  - type: log
    enabled: true
    paths:
      - /data/app/logs/*.log
    json.keys_under_root: true
    json.add_error_key: true

四、测试配置

filebeat test config

测试输出是否可达:

filebeat test output

五、启动并设置开机自启

sudo systemctl enable filebeat
sudo systemctl start filebeat

查看状态:

systemctl status filebeat

六、查看 Filebeat 日志

journalctl -u filebeat -f

或:

tail -f /var/log/filebeat/filebeat

七、常见目录说明

目录 说明
/etc/filebeat/ 配置文件
/var/lib/filebeat/ 记录采集位置
/var/log/filebeat/ 运行日志

八、常见问题

1️⃣ 没有采集到日志?

  • 检查 enabled: true
  • 确认日志路径存在
  • 查看 filebeat 日志

2️⃣ Elasticsearch 连不上?

  • 检查防火墙
  • 检查 hosts 配置
  • Elasticsearch 是否启用

九、卸载 Filebeat(备用)

sudo systemctl stop filebeat
sudo yum remove filebeat -y
sudo rm -rf /etc/filebeat /var/lib/filebeat /var/log/filebeat

如果你愿意,可以告诉我:

  • ✅ CentOS 版本
  • ✅ 日志类型(系统 / Nginx / 应用)
  • ✅ 输出目标(ES / Logstash / Kafka)

我可以给你一份完全定制的 Filebeat 配置

0