Filebeat监控CentOS系统的核心流程与实践
Filebeat作为轻量级日志采集器,通过收集CentOS系统的日志文件(如系统日志、应用日志),并将其发送至Elasticsearch、Logstash等工具,实现对系统状态的集中监控与分析。以下是具体操作步骤与关键说明:
根据CentOS版本选择安装方式:
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch),再执行sudo yum install -y filebeat完成安装。filebeat-7.14.0-linux-x86_64.tar.gz),解压后移动至/usr/local/filebeat目录,并赋予执行权限(chmod +x /usr/local/filebeat/filebeat)。核心配置文件为/etc/filebeat/filebeat.yml,需重点设置输入源(监控的日志文件)与输出目标(数据去向):
filebeat.inputs模块指定要监控的日志路径。例如,监控系统通用日志(/var/log/messages)、所有.log文件(/var/log/*.log)或Nginx日志(/var/log/nginx/*.log):filebeat.inputs:
- type: log # 日志类型
enabled: true
paths:
- /var/log/messages # 单一文件路径
# - /var/log/*.log # 通配符路径(监控目录下所有.log文件)
output.elasticsearch:
hosts: ["localhost:9200"] # Elasticsearch地址
index: "filebeat-%{+yyyy.MM.dd}" # 按日期生成索引
output.logstash:
hosts: ["localhost:5044"] # Logstash监听端口
注:若需监控系统性能指标(如CPU、内存),需额外安装
filebeat-module-system模块(sudo filebeat modules enable system),该模块会自动采集系统级性能数据。
配置完成后,通过Systemd管理Filebeat服务:
sudo systemctl start filebeatsudo systemctl enable filebeatsudo systemctl status filebeat(显示“active (running)”则表示正常运行)。sudo tail -f /var/log/filebeat/filebeat实时监控采集状态,确认是否有错误信息。filebeat-*的索引模式(匹配Filebeat生成的索引)。queue.type: persisted),避免进程重启时数据丢失;bulk_max_size: 512),提升数据传输效率;ignore_older: 72h),减少对长期未修改日志的处理。filebeat-modules(如mysql、nginx),快速采集应用层日志,无需手动配置输入路径。output.elasticsearch中添加ssl.certificate_authorities参数);限制Filebeat进程的文件描述符数量(修改/etc/security/limits.conf,添加filebeat soft nofile 65536)。通过以上步骤,Filebeat可实现CentOS系统日志与性能数据的全面采集,为后续的故障排查、性能分析提供基础数据支撑。