Filebeat在CentOS上的输出设置步骤
使用具有root权限的用户登录CentOS服务器,通过终端进入Filebeat的主配置文件目录:
cd /etc/filebeat/
使用文本编辑器(如vi或nano)打开filebeat.yml文件(Filebeat的核心配置文件):
sudo vi /etc/filebeat/filebeat.yml
Filebeat支持多种输出目标,以下是常见场景的配置说明:
若需将日志直接发送到Elasticsearch集群,需配置output.elasticsearch段。关键参数包括:
hosts:Elasticsearch节点地址(支持多节点循环发送,如["host1:9200", "host2:9200"]);index:索引名称(可使用日期占位符%{+yyyy.MM.dd}实现按天分割索引,如"filebeat-%{[agent.version]}-%{+yyyy.MM.dd}");ssl、username、password等参数。output.elasticsearch:
hosts: ["localhost:9200"] # 本地Elasticsearch默认端口
index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}" # 动态索引名称
username: "elastic" # 认证用户名(若有)
password: "your_password" # 认证密码(若有)
ssl.certificate_authorities: ["/etc/pki/root/ca.pem"] # SSL CA证书路径(若有)
若需通过Logstash进行日志处理(如过滤、转发到其他系统),需配置output.logstash段。关键参数包括:
hosts:Logstash监听地址(格式为host:port,默认端口为5044);ssl相关参数。output.logstash:
hosts: ["localhost:5044"] # 本地Logstash默认端口
ssl.enabled: true # 启用SSL
ssl.certificate_authorities: ["/etc/pki/tls/certs/ca-bundle.crt"] # CA证书路径
ssl.certificate: "/etc/pki/tls/certs/filebeat.crt" # Filebeat客户端证书
ssl.key: "/etc/pki/tls/private/filebeat.key" # Filebeat客户端私钥
若需将日志发送到Kafka集群,需配置output.kafka段。关键参数包括:
hosts:Kafka broker地址(格式为host:port,支持多节点);topic:Kafka主题名称(如"filebeat_logs");compression(支持gzip、snappy等,减少网络传输量)。output.kafka:
hosts: ["kafka1:9092", "kafka2:9092"] # Kafka集群地址
topic: "filebeat_logs" # 目标主题
compression: gzip # 启用gzip压缩
required_acks: 1 # 确认机制(1=leader确认,0=不等待,-1=all副本确认)
若需将日志保存到本地文件系统(调试用),需配置output.file段。关键参数包括:
path:输出目录(需提前创建,如/var/lib/filebeat/output);filename:输出文件名(如"filebeat-output.log");permissions:文件权限(如0644,所有者可读写,其他用户只读)。output.file:
path: "/var/lib/filebeat/output" # 输出目录
filename: "filebeat-output.log" # 输出文件名
permissions: 0644 # 文件权限
在vi编辑器中,按Esc键退出插入模式,输入:wq保存并退出;若使用nano,按Ctrl+O保存,Ctrl+X退出。
配置修改完成后,重启Filebeat服务以应用新设置:
sudo systemctl restart filebeat
通过查看Filebeat日志确认输出是否正常:
sudo tail -f /var/log/filebeat/filebeat
若日志中出现“Successfully sent batch of events to Elasticsearch/Logstash/Kafka”等提示,说明配置成功。
filebeat)对输出目录(如Elasticsearch数据目录、Kafka日志目录)有写入权限;setup.template配置索引模板(如setup.template.enabled: true),确保日志数据的映射正确。