Filebeat 快速入门:安装和配置

编辑

Filebeat 快速入门:安装和配置

编辑

本指南介绍了如何快速开始日志收集。您将学习如何:

  • 在要监控的每个系统上安装 Filebeat
  • 指定日志文件的位置
  • 将日志数据解析为字段并将其发送到 Elasticsearch
  • 在 Kibana 中可视化日志数据
Filebeat System dashboard

开始之前

编辑

您需要 Elasticsearch 来存储和搜索数据,以及 Kibana 来可视化和管理数据。

要快速入门,请启动我们的 托管 Elasticsearch Service 部署。Elasticsearch Service 在 AWS、GCP 和 Azure 上可用。 免费试用

步骤 1:安装 Filebeat

编辑

在要监控的所有服务器上安装 Filebeat。

要下载和安装 Filebeat,请使用适用于您系统的命令

curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.17.0-amd64.deb
sudo dpkg -i filebeat-8.17.0-amd64.deb

显示的命令适用于 AMD 平台,但也提供了 ARM 包。有关可用软件包的完整列表,请参阅下载页面

其他安装选项

编辑

步骤 2:连接到 Elastic Stack

编辑

需要连接到 Elasticsearch 和 Kibana 才能设置 Filebeat。

filebeat.yml 中设置连接信息。要查找此配置文件,请参阅 目录布局

指定您的 Elasticsearch Service 的 cloud.id,并将 cloud.auth 设置为有权设置 Filebeat 的用户。例如:

cloud.id: "staging:dXMtZWFzdC0xLmF3cy5mb3VuZC5pbyRjZWM2ZjI2MWE3NGJmMjRjZTMzYmI4ODExYjg0Mjk0ZiRjNmMyY2E2ZDA0MjI0OWFmMGNjN2Q3YTllOTYyNTc0Mw=="
cloud.auth: "filebeat_setup:YOUR_PASSWORD" 

此示例显示了一个硬编码的密码,但您应该将敏感值存储在 密钥库 中。

要了解有关所需角色和权限的更多信息,请参阅 授予用户对安全资源的访问权限

您可以将数据发送到其他输出,例如 Logstash,但这需要额外的配置和设置。

步骤 3:收集日志数据

编辑

有几种方法可以使用 Filebeat 收集日志数据

  • 数据收集模块 — 简化常见日志格式的收集、解析和可视化
  • ECS 记录器 — 将应用程序日志结构化并格式化为与 ECS 兼容的 JSON
  • 手动 Filebeat 配置

启用和配置数据收集模块

编辑
  1. 确定需要启用的模块。要查看可用模块的列表,请运行

    filebeat modules list
  2. 在安装目录中,启用一个或多个模块。例如,以下命令启用 nginx 模块配置

    filebeat modules enable nginx
  3. modules.d 下的模块配置中,更改模块设置以匹配您的环境。您必须在模块中启用至少一个文件集。默认情况下禁用文件集。

    例如,日志位置是根据操作系统设置的。如果您的日志不在默认位置,请设置 paths 变量

    - module: nginx
      access:
        enabled: true
        var.paths: ["/var/log/nginx/access.log*"] 

要查看模块的完整变量列表,请参阅 模块 下的文档。

要测试您的配置文件,请更改到安装 Filebeat 二进制文件的目录,并使用以下指定选项在前台运行 Filebeat:./filebeat test config -e。确保您的配置文件位于 Filebeat 期望的路径中(请参阅 目录布局),或使用 -c 标志指定配置文件的路径。

有关配置 Filebeat 的更多信息,另请参阅

启用和配置 ECS 记录器以进行应用程序日志收集

编辑

虽然 Filebeat 可用于摄取原始的纯文本应用程序日志,但我们建议在摄取时构造您的日志。这使您可以提取字段,例如日志级别和异常堆栈跟踪。

Elastic 通过提供各种流行编程语言的应用程序日志格式化程序来简化此过程。这些插件将您的日志格式化为与 ECS 兼容的 JSON,从而无需手动解析日志。

请参阅 ECS 记录器 以开始使用。

手动配置 Filebeat

编辑

如果您找不到适用于您的文件类型的模块,或者无法更改应用程序的日志输出,请参阅 手动配置输入

步骤 4:设置资产

编辑

Filebeat 附带用于解析、索引和可视化数据的预定义资产。要加载这些资产

  1. 请确保在 filebeat.yml 中指定的用户有权设置 Filebeat
  2. 在安装目录中,运行

    filebeat setup -e

    -e 是可选的,它将输出发送到标准错误而不是配置的日志输出。

此步骤加载建议的 索引模板 以写入 Elasticsearch,并部署用于在 Kibana 中可视化数据的示例仪表板。

此步骤不会加载用于解析日志行的摄取管道。默认情况下,首次运行模块并连接到 Elasticsearch 时会自动设置摄取管道。

需要连接到 Elasticsearch(或 Elasticsearch Service)才能设置初始环境。如果您使用的是不同的输出,例如 Logstash,请参阅

不应使用 Filebeat 摄取其自身的日志,因为这可能会导致无限循环。

步骤 5:启动 Filebeat

编辑

在启动 Filebeat 之前,请修改 filebeat.yml 中的用户凭据,并指定一个有权发布事件的用户。

要启动 Filebeat,请运行

sudo service filebeat start

如果您使用 init.d 脚本启动 Filebeat,则无法指定命令行标志(请参阅 命令参考)。要指定标志,请在前台启动 Filebeat。

另请参阅 Filebeat 和 systemd

Filebeat 应该开始将事件流式传输到 Elasticsearch。

步骤 6:在 Kibana 中查看您的数据

编辑

Filebeat 带有预构建的 Kibana 仪表板和 UI,用于可视化日志数据。您在之前运行 setup 命令时加载了仪表板。

要打开仪表板

  1. 启动 Kibana

    1. 登录到您的 Elastic Cloud 帐户。
    2. 导航到您部署中的 Kibana 端点。
  2. 在侧边导航栏中,单击 Discover(发现)。要查看 Filebeat 数据,请确保选中预定义的 filebeat-* 数据视图。

    如果您在 Kibana 中看不到数据,请尝试将时间过滤器更改为更大的范围。默认情况下,Kibana 显示最近 15 分钟的数据。

  3. 在侧边导航栏中,单击 Dashboard(仪表板),然后选择要打开的仪表板。

仪表板作为示例提供。我们建议您自定义它们以满足您的需求。

下一步是什么?

编辑

现在您的日志已流式传输到 Elasticsearch,了解如何统一您的日志、指标、正常运行时间和应用程序性能数据。

  1. 通过安装和配置其他 Elastic Beats 从其他来源提取数据

    Elastic Beats 要捕获

    Metricbeat

    基础设施指标

    Winlogbeat

    Windows 事件日志

    Heartbeat

    正常运行时间信息

    APM

    应用程序性能指标

    Auditbeat

    审计事件

  2. 使用 Kibana 中的 Observability 应用搜索您的所有数据

    Elastic 应用 用于

    Metrics 应用

    探索整个生态系统中有关系统和服务的指标

    Logs 应用

    实时追踪相关的日志数据

    Uptime 应用

    监控您的应用程序和服务中的可用性问题

    APM 应用

    监控应用程序性能

    SIEM 应用

    分析安全事件