Splunk 数据入门编辑

此功能处于技术预览阶段,可能会在未来版本中更改或删除。Elastic 将努力解决任何问题,但技术预览版中的功能不受官方 GA 功能支持 SLA 的约束。

Apache、AWS CloudTrail、Nginx 和 Zeek 集成提供了从 Splunk Enterprise 实例无缝提取数据的功能。数据将自动映射到 Elastic 通用架构,使其可用于 Elastic 解决方案(包括安全性和可观测性)中的快速分析。

这些集成的工作原理是使用 Elastic Agent 中的 httpjson 输入通过 Splunk REST API 运行 Splunk 搜索,然后从结果中提取原始事件。然后通过 Elastic Agent 处理原始事件。Splunk 搜索和搜索间隔都是可自定义的。这些集成只获取自上次查询以来的新数据,而不是历史数据。

Splunk integration components

要从 Splunk 提取 Nginx 数据,请执行以下步骤。Apache、AWS CloudTrail 和 Zeek 的选项相同。

先决条件编辑

要按照本指南中的步骤操作,您需要一个包含以下内容的 Elastic Stack 部署:

  • 用于存储和搜索数据的 Elasticsearch
  • 用于可视化和管理数据的 Kibana
  • 在 Fleet 和 Integrations 上具有 所有 权限的 Kibana 用户。由于许多 Integrations 资产在空间之间共享,因此用户需要在所有空间中都拥有 Kibana 权限。
  • Integrations Server(默认包含在每个 Elasticsearch Service 部署中)

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

步骤 1:添加集成编辑

找到 Nginx 集成并开始添加它,如提取日志、指标和运行时间数据中所述。

步骤 2:启用从第三方 REST API 收集日志编辑

启用“从第三方 REST API 收集日志”并禁用“从 Nginx 实例收集日志”和“从 Nginx 实例收集指标”。

Fleet showing enabling third-party REST API

步骤 3:输入连接信息编辑

输入连接到 Splunk Enterprise REST API 所需的信息。

Splunk Enterprise 服务器的 URL 必须包含方案(httphttps)、Splunk Enterprise 服务器的 IP 地址或主机名,以及 REST API 侦听的端口。

Splunk 用户名和密码必须属于具有使用 REST API 端点角色或功能的用户。默认情况下,管理员用户拥有这些权限。

SSL 配置可在“高级选项”下找到。如果 Splunk Enterprise 服务器使用自签名证书,则可能需要这些配置。有关有效的配置选项,请参阅SSL 选项

Fleet showing enabling third-party REST API settings

步骤 4:输入信息以从 Splunk 中选择数据编辑

对于每种类型的日志文件,请输入间隔和 Splunk 搜索字符串。

间隔表示为Go 持续时间。间隔是指向 Splunk Enterprise REST API 发送请求以请求新信息之间的时间。不建议使用小于一秒的间隔;Splunk 仅维护索引时间的秒精度。间隔应与数据到达 Splunk Enterprise 服务器的速率密切匹配。例如,对于每小时仅到达 Splunk Enterprise 服务器一次的数据,“5 秒”的间隔会在 Splunk Enterprise 服务器上产生不必要的负载。

搜索字符串是用于唯一描述与您尝试配置的日志文件类型匹配的事件的 Splunk 搜索。例如,要唯一描述 Nginx 访问日志,可以使用 search sourcetype=nginx:plus:access。请注意,搜索字符串必须以“search”开头,有关详细信息,请参阅 Splunk REST API 手册和“search/jobs/export”端点。

请注意,每次 Elastic Agent 连接到 Splunk Enterprise REST API 时,都会执行 Splunk 搜索。因此,您需要确保您的搜索字符串尽可能具体,因为这会减少 Splunk Enterprise 服务器上的负载。

可以在“高级选项”中添加标签。例如,如果您想使用_Splunk_标签标记来自 Splunk 的事件,则可以在此处添加它。默认情况下,存在转发标签以指示事件正在通过中介(即 Splunk)转发。

Fleet showing enabling third-party REST API settings

步骤 5:保存集成编辑

单击保存集成

数据和仪表板将像您使用日志文件在 Nginx 主机上收集数据一样可用。

注意事项和问题编辑

运行代理的主机和 Splunk Enterprise 服务器上的时间应同步到相同的时间源,并具有正确的时区信息。否则可能会导致数据传输延迟或接收到的数据出现缺口。

Splunk 数据是否需要采用特定格式或映射到 Splunk 的通用信息模型? 不需要,因为这些集成会获取 Splunk 中的原始事件并对其进行处理。不依赖于任何 Splunk 处理。

事件是否映射到 Elastic 通用架构 (ECS)? 是的,来自这些集成的事件会经过与 Elastic Agent 从原始源获取事件完全相同的处理。因此,会发生相同级别的 ECS 映射。