温馨提示×

如何安装CentOS Filebeat

小樊
46
2026-07-20 07:44:01
栏目: 智能运维

下面给你一份在 CentOS 上安装 Filebeat 的完整步骤,适用于 CentOS 7 / 8 / Stream,并且假设你最终要把日志发送到 Elasticsearch 或 Logstash


一、环境准备

1. 系统要求

  • CentOS 7 / 8 / Stream
  • 已安装 curlsudo
  • 确保时间同步(建议开启 NTP)
timedatectl

二、安装方式一(推荐):使用 Elastic 官方 RPM 仓库

1. 导入 Elastic GPG 密钥

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

2. 创建 Elastic 仓库文件

CentOS 7

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

三、安装方式二:手动下载 RPM(适用于离线环境)

wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.12.0-x86_64.rpm
sudo rpm -ivh filebeat-8.12.0-x86_64.rpm

四、配置 Filebeat(重点)

1. 主配置文件

sudo vi /etc/filebeat/filebeat.yml

2. 基础配置示例(输出到 Elasticsearch)

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

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

logging.level: info

3. 如果输出到 Logstash

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

五、启动并设置开机自启

sudo systemctl enable filebeat
sudo systemctl start filebeat

查看状态:

sudo systemctl status filebeat

六、测试 Filebeat 是否正常工作

1. 测试配置

sudo filebeat test config

2. 测试输出

sudo filebeat test output

七、查看 Filebeat 日志

journalctl -u filebeat -f

或:

tail -f /var/log/filebeat/filebeat

八、常见问题

❌ Filebeat 启动失败

  • 检查 YAML 缩进
  • 检查 Elasticsearch / Logstash 是否运行
  • 查看端口是否通

❌ 没有采集到日志

  • 确认 paths 是否正确
  • 确认 enabled: true
  • 查看是否有日志文件更新

九、卸载 Filebeat(可选)

sudo systemctl stop filebeat
sudo systemctl disable filebeat
sudo yum remove filebeat -y

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

  • CentOS 版本
  • Filebeat 要对接 Elasticsearch 还是 Logstash
  • 采集哪些日志(系统 / Nginx / Docker / 自定义)

我可以直接帮你写一份可用的 filebeat.yml 配置

0