Ubuntu Filebeat与Elasticsearch集成步骤
导读:1. 前提条件 确保Ubuntu系统已更新至最新版本,并已安装并运行Elasticsearch(版本需与Filebeat兼容,如Elasticsearch 7.x对应Filebeat 7.x)。可通过curl -X GET "localho...
1. 前提条件
确保Ubuntu系统已更新至最新版本,并已安装并运行Elasticsearch(版本需与Filebeat兼容,如Elasticsearch 7.x对应Filebeat 7.x)。可通过curl -X GET "localhost:9200"验证Elasticsearch是否正常响应。
2. 安装Filebeat
- 更新系统包列表:运行
sudo apt update同步软件包信息。 - 添加Elastic官方GPG密钥:执行
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -,导入Elastic官方签名密钥(用于验证软件包完整性)。 - 添加Elastic APT仓库:运行
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list,将Elastic官方仓库添加至系统源列表(7.x可根据需求替换为其他兼容版本)。 - 安装Filebeat:执行
sudo apt update & & sudo apt install filebeat -y,通过APT包管理器安装Filebeat。
3. 配置Filebeat
Filebeat的主配置文件位于/etc/filebeat/filebeat.yml,需修改以下核心部分:
- 定义日志输入源:在
filebeat.inputssection添加日志监控规则,例如收集系统日志和Apache日志:若需收集Nginx日志,可追加路径:filebeat.inputs: - type: log enabled: true paths: - /var/log/syslog - /var/log/apache2/*.log- /var/log/nginx/*.log。 - 配置Elasticsearch输出:在
output.elasticsearchsection指定Elasticsearch地址,例如本地实例:若为远程集群,需替换为对应节点地址(如output.elasticsearch: hosts: ["localhost:9200"] index: "filebeat-%{ [agent.version]} -%{ +yyyy.MM.dd} " # 索引名称格式:filebeat-版本-日期["es-node1.example.com:9200", "es-node2.example.com:9200"])。
4. 启用Filebeat模块(可选但推荐)
Filebeat预置了Nginx、MySQL、System等模块,可简化常见日志格式的配置。例如启用Nginx模块:
sudo filebeat modules enable nginx
启用后会自动生成模块配置(位于/etc/filebeat/modules.d/nginx.yml),无需手动修改filebeat.inputs。
5. 启动并启用Filebeat服务
- 启动服务:运行
sudo systemctl start filebeat,立即启动Filebeat进程。 - 设置开机自启:执行
sudo systemctl enable filebeat,确保系统重启后自动启动Filebeat。
6. 验证集成有效性
- 检查Filebeat状态:运行
sudo systemctl status filebeat,确认服务处于active (running)状态。 - 查看Filebeat日志:执行
sudo journalctl -u filebeat -f,实时查看Filebeat运行日志(无报错则表示配置正确)。 - 验证Elasticsearch数据:
- 使用
curl命令查看Filebeat创建的索引:curl -X GET "localhost:9200/_cat/indices?v",应能看到filebeat-*格式的索引(如filebeat-7.17.0-2025.11.03)。 - 若已安装Kibana,可通过
Discover页面查询Filebeat发送的日志数据(需提前配置Kibana连接Elasticsearch)。
- 使用
7. 高级配置(可选)
- 添加处理器:在
filebeat.yml中通过processorssection对日志数据进行预处理,例如添加云元数据:processors: - add_cloud_metadata: ~ - 自定义索引模板:通过Kibana的
Stack Management > Index Patterns创建索引模板,优化日志字段的映射和分析(如设置@timestamp为时间字段)。 - 调整性能参数:根据日志量修改
filebeat.yml中的queue.mem.events(内存队列大小)、bulk_max_size(批量发送数量)等参数,提升数据传输效率。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Filebeat与Elasticsearch集成步骤
本文地址: https://pptw.com/jishu/740494.html
