如何使用Filebeat监控CentOS系统日志
导读:如何在CentOS上使用Filebeat监控系统日志 1. 安装Filebeat Filebeat是Elastic官方提供的轻量级日志收集器,支持CentOS系统。安装方式有两种: 通过YUM仓库安装(推荐): 先添加Elastic官方Y...
如何在CentOS上使用Filebeat监控系统日志
1. 安装Filebeat
Filebeat是Elastic官方提供的轻量级日志收集器,支持CentOS系统。安装方式有两种:
- 通过YUM仓库安装(推荐):
先添加Elastic官方YUM仓库,再安装Filebeat:sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch sudo tee /etc/yum.repos.d/elasticsearch.repo < < EOF [elasticsearch-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 install -y filebeat
- 手动下载RPM包安装:
从Elastic官网下载对应版本的RPM包(如filebeat-7.14.0-x86_64.rpm
),再用rpm
命令安装:sudo rpm -ivh filebeat-7.14.0-x86_64.rpm
2. 配置Filebeat监控系统日志
Filebeat的核心配置文件位于/etc/filebeat/filebeat.yml
,需修改以下关键部分:
- 定义输入源(filebeat.inputs):
启用log
类型输入,指定要监控的系统日志路径。例如,监控/var/log
目录下所有.log
文件(包括messages
、secure
等系统日志):
若只需监控特定日志(如filebeat.inputs: - type: log enabled: true paths: - /var/log/*.log ignore_older: 72h 忽略72小时前的旧日志(可选,减少资源占用)
/var/log/messages
和/var/log/secure
),可调整为:paths: - /var/log/messages - /var/log/secure
- 配置输出目标(output):
将日志发送到Elasticsearch(需提前安装并运行Elasticsearch):
若需先发送到Logstash(需提前安装并运行Logstash),可配置:output.elasticsearch: hosts: ["localhost:9200"] Elasticsearch地址(若不在本地,替换为IP) index: "system-logs-%{ +yyyy.MM.dd} " 自定义索引名称(按日期分割)
output.logstash: hosts: ["localhost:5044"] Logstash地址
3. 启动并启用Filebeat服务
配置完成后,启动Filebeat服务并设置为开机自启:
sudo systemctl daemon-reload 重新加载systemd配置(若有修改)
sudo systemctl start filebeat 启动Filebeat
sudo systemctl enable filebeat 设置开机自启
4. 验证Filebeat运行状态
- 检查服务状态:
若显示“Active: active (running)”,说明服务已正常启动。sudo systemctl status filebeat
- 查看实时日志:
通过以下命令查看Filebeat的实时日志,确认是否成功收集并发送日志:
若日志中出现“Successfully sent batch of events to Elasticsearch”或“Logstash output is configured”,说明配置生效。sudo tail -f /var/log/filebeat/filebeat
5. 可选:使用Filebeat模块简化配置
Filebeat提供了针对常见系统日志(如system
、nginx
、mysql
)的预定义模块,可直接使用:
- 启用系统模块:
系统模块会自动监控sudo filebeat modules enable system
/var/log/messages
、/var/log/secure
等系统日志,并应用预定义的解析规则。 - 配置模块输出:
模块配置文件位于/etc/filebeat/modules.d/system.yml
,可根据需求调整(如过滤字段、添加标签)。 - 重新加载配置:
sudo systemctl restart filebeat
6. 可选:性能优化(针对大规模日志)
- 调整并发设置:
在filebeat.yml
中增加max_procs
(CPU核心数)和queue.mem.events
(内存队列大小),提升处理能力:max_procs: 4 使用4个CPU核心 queue.mem.events: 4096 内存队列大小(默认1024)
- 启用批量发送:
增加bulk_max_size
(每次发送的日志条数),减少网络请求次数:output.elasticsearch: bulk_max_size: 512 默认为20
- 使用filestream输入(推荐):
Filebeat 7.0及以上版本推荐使用filestream
输入类型(替代老旧的log
类型),性能更优:filebeat.inputs: - type: filestream enabled: true paths: - /var/log/*.log
通过以上步骤,即可完成Filebeat在CentOS上的部署,实现对系统日志的实时监控与传输。后续可通过Kibana连接Elasticsearch,进行日志的可视化分析与告警配置。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何使用Filebeat监控CentOS系统日志
本文地址: https://pptw.com/jishu/715269.html