CentOS Filebeat 是一个轻量级的日志收集器,用于将日志文件或日志流发送到 Elasticsearch 或 Logstash。要实现实时日志传输,你需要按照以下步骤操作:
-
安装 Filebeat:
在 CentOS 上,你可以使用 YUM 包管理器安装 Filebeat。首先,运行以下命令以添加 Elastic 的官方 GPG 密钥:sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch然后,创建一个新的 YUM 仓库文件:
sudo vi /etc/yum.repos.d/filebeat.repo将以下内容粘贴到文件中,并根据你的 Elasticsearch 版本替换
:[filebeat] name=Elastic Filebeat 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最后,运行以下命令安装 Filebeat:
sudo yum install filebeat -
配置 Filebeat:
编辑 Filebeat 的主配置文件/etc/filebeat/filebeat.yml,并根据你的需求进行相应的配置。例如,你可以指定要收集的日志文件或目录,以及输出目标(Elasticsearch 或 Logstash)。以下是一个简单的示例配置,用于收集
/var/log/*.log目录下的所有日志文件,并将它们发送到本地的 Elasticsearch 实例:filebeat.inputs: - type: log enabled: true paths: - /var/log/*.log output.elasticsearch: hosts: ["localhost:9200"]如果你希望将日志发送到 Logstash,可以将
output.elasticsearch部分替换为以下内容:output.logstash: hosts: ["localhost:5044"] -
启动并启用 Filebeat 服务:
运行以下命令启动 Filebeat 服务:sudo systemctl start filebeat要使 Filebeat 在系统启动时自动运行,请执行以下命令:
sudo systemctl enable filebeat -
验证实时日志传输:
确保你的 Elasticsearch 或 Logstash 服务正在运行,并且可以从 Filebeat 访问。然后,检查日志文件或目录以查看 Filebeat 是否正在发送日志事件。在 Elasticsearch 中,你可以使用以下命令搜索所有文档:curl -X GET "localhost:9200/_search?pretty"在 Logstash 中,你可以查看控制台输出以检查接收到的日志事件。
通过以上步骤,你应该已经成功实现了 CentOS Filebeat 的实时日志传输功能。根据你的实际需求,你可能需要调整配置文件以满足特定的场景和需求。