在CentOS中,Filebeat可通过配置与多种服务协同工作,以下是常见场景及配置要点:
与Elasticsearch集成
直接将日志数据发送至Elasticsearch存储和搜索。
/etc/filebeat/filebeat.yml
,指定输出为Elasticsearch并填写地址、端口,如:output.elasticsearch:
hosts: ["localhost:9200"]
与Logstash集成
先将日志发送至Logstash处理(如过滤、格式化),再转发至Elasticsearch或其他目标。
filebeat.yml
中设置输出为Logstash并指定端口(默认5044),如:output.logstash:
hosts: ["localhost:5044"]
/etc/logstash/conf.d/filebeat.conf
),定义输入、过滤规则和输出,例如:input { beats { port => 5044 } }
filter { grok { match => { "message" => "%{COMBINEDAPACHELOG}" } } }
output { elasticsearch { hosts => ["localhost:9200"] } }
与Kafka集成
将日志数据发送至Kafka,适用于分布式场景或需中间缓冲的场景。
filebeat.yml
中启用Kafka输出,指定主题和Kafka集群地址,如:output.kafka:
hosts: ["kafka1:9092", "kafka2:9092"]
topic: "filebeat-logs"
与Prometheus/Grafana集成
通过Filebeat采集日志数据,结合Prometheus监控指标,使用Grafana可视化。
filebeat-prometheus
)暴露指标至Prometheus。高可用部署
通过配置多节点Filebeat实例和负载均衡器(如Nginx),实现故障转移和负载均衡,确保服务稳定性。
操作步骤:
filebeat.yml
配置输入源(如日志路径)和输出目标(对应服务地址)。具体配置可根据实际需求调整,参考官方文档获取详细参数说明。