在 CentOS 上安装 Filebeat 的标准方式
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearchsudo tee /etc/yum.repos.d/filebeat.repo <<EOF
[filebeat-7.x]
name=Elastic repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
sudo yum makecachesudo yum install -y filebeatsudo systemctl daemon-reload
sudo systemctl enable filebeat
sudo systemctl start filebeat
sudo systemctl status filebeat
RPM 包安装与离线场景
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.17.20-x86_64.rpm
sudo rpm -ivh filebeat-7.17.20-x86_64.rpm
sudo systemctl enable filebeat && sudo systemctl start filebeat
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.17.20-linux-x86_64.tar.gz
sudo tar -xzf filebeat-7.17.20-linux-x86_64.tar.gz -C /opt/
cd /opt/filebeat-7.17.20-linux-x86_64
# 前台调试:./filebeat -e -c filebeat.yml
# 后台运行:nohup ./filebeat -e -c filebeat.yml > filebeat.log 2>&1 &
最小可用配置与常见输出
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
output.console:
pretty: true
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
output.elasticsearch:
hosts: ["http://192.0.2.10:9200"]
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
output.logstash:
hosts: ["192.0.2.20:5044"]
sudo filebeat test config -c /etc/filebeat/filebeat.yml
sudo systemctl restart filebeat
json.* 相关选项;多行堆栈需配置 multiline。更多输入/输出与参数详见官方配置说明与参考示例。安全与运维要点
output.elasticsearch:
hosts: ["https://es.example.com:9200"]
username: "elastic"
password: "YourPassword"
ssl.certificate_authorities: ["/etc/pki/CA/certs/ca.crt"]
修改后执行:sudo systemctl restart filebeatsudo filebeat modules enable system(按需启用如 system、nginx、redis 等模块)sudo systemctl status filebeat、sudo journalctl -u filebeat -ffilebeat version