使用 Amazon Data Firehose 监控 Amazon Web Services (AWS)
编辑使用 Amazon Data Firehose 监控 Amazon Web Services (AWS)
编辑Amazon Data Firehose 是一项热门服务,它允许您在几分钟内将您的服务日志和监控指标发送到 Elastic,无需编写任何代码,也无需构建或管理您自己的数据摄取和交付基础设施。
您将学到什么
编辑在本教程中,您将学习如何:
- 在 Kibana 中安装 AWS 集成
- 在 Amazon Data Firehose 中创建交付流
- 为您的 Firehose 流指定目标设置
- 将数据发送到 Firehose 交付流
开始之前
编辑使用我们在 Elastic Cloud 上的托管 Elasticsearch 服务在 AWS 区域(包括政府云)中创建一个部署。该部署包括一个用于存储和搜索您的数据的 Elasticsearch 集群,以及一个用于可视化和管理您的数据的 Kibana。
步骤 1:在 Kibana 中安装 AWS 集成
编辑- 安装 AWS 集成以将索引模板、摄取管道和仪表板加载到 Kibana 中。在主菜单中找到集成,或使用全局搜索字段。通过浏览目录找到 AWS 集成。
- 导航到设置选项卡,然后单击安装 AWS 资产。通过单击弹出窗口中的安装 AWS进行确认。
- 在 Kibana 中安装 Amazon Data Firehose 集成资产。
步骤 2:在 Amazon Data Firehose 中创建交付流
编辑- 转到 AWS 控制台 并导航到 Amazon Data Firehose。
- 单击创建 Firehose 流并选择您的 Firehose 流的源和目标。除非您是从 Kinesis Data Streams 流式传输数据,否则将源设置为
Direct PUT
,将目标设置为Elastic
。 - 提供一个有意义的Firehose 流名称,以便您以后可以识别此交付流。
对于高级用例,可以通过调用自定义 Lambda 函数来转换源记录。当使用 Elastic 集成时,这应该不是必需的。
步骤 3:为您的 Firehose 流指定目标设置
编辑-
从目标设置面板中,指定以下设置
-
Elastic 端点 URL:输入您的 Elasticsearch 集群的 Elastic 端点 URL。要查找 Elasticsearch 端点,请转到 Elastic Cloud 控制台并选择连接详细信息。这是一个示例:
https://my-deployment.es.us-east-1.aws.elastic-cloud.com
。 - API 密钥:输入编码的 Elastic API 密钥。要创建 API 密钥,请转到 Elastic Cloud 控制台,选择连接详细信息,然后单击创建和管理 API 密钥。如果您使用具有限制权限的 API 密钥,请务必查看索引权限,以便为此交付流使用的索引提供至少“auto_configure”和“write”权限。
- 内容编码:为了提高网络效率,请将内容编码设置为 GZIP。
- 重试持续时间:确定在发生错误时 Firehose 继续重试请求的时间长度。对于大多数用例,60-300 秒的持续时间应该足够了。
-
参数:
-
es_datastream_name
:此参数是可选的,可用于设置将存储文档的数据流。如果未指定此参数,则默认情况下将数据发送到logs-awsfirehose-default
数据流。 -
include_cw_extracted_fields
:此参数是可选的,可以在使用 CloudWatch 日志订阅筛选器作为 Firehose 数据源时设置。当设置为 true 时,将收集订阅筛选器中筛选器模式生成的提取字段。设置此参数可能会在每个记录中添加许多字段,并可能显着增加 Elasticsearch 中的数据量。因此,应仔细考虑使用此参数,并且仅当需要提取字段进行特定筛选和/或聚合时才应使用此参数。 -
set_es_document_id
:此参数是可选的,可以设置为允许 Elasticsearch 为每个文档分配一个随机 ID,或者为每个文档使用计算出的唯一 ID。默认值为 true。当设置为 false 时,将为每个文档使用一个随机 ID,这将有助于索引性能。- 在备份设置面板中,建议为失败的记录配置 S3 备份。然后可以配置工作流以自动重试失败的记录,例如使用 Elastic Serverless Forwarder。
-
-
Elastic 端点 URL:输入您的 Elasticsearch 集群的 Elastic 端点 URL。要查找 Elasticsearch 端点,请转到 Elastic Cloud 控制台并选择连接详细信息。这是一个示例:
步骤 4:将数据发送到 Firehose 交付流
编辑您可以配置各种日志源以将数据直接发送到 Firehose 流,例如 VPC 流日志。某些服务不支持直接将日志发布到 Firehose,但它们支持将日志发布到 CloudWatch 日志,例如 CloudTrail 和 Lambda。有关更多信息,请参阅 AWS 文档。
例如,将 CloudTrail 日志发送到 Firehose 的典型工作流如下:
- 将 CloudTrail 日志发布到 Cloudwatch 日志组。请参阅有关 发布 CloudTrail 日志 的 AWS 文档。
- 在 CloudWatch 日志组中创建指向 Firehose 流的订阅筛选器。请参阅有关 使用订阅筛选器 的 AWS 文档。
我们还添加了使用 Firehose 将 CloudWatch 监控指标发送到 Elastic 的支持。例如,您可以通过 CloudWatch 创建指标流来配置指标摄取。您可以通过选择使用 Firehose 进行自定义设置选项来选择现有的 Firehose 流。有关更多信息,请参阅有关 使用 Firehose 进行自定义设置 的 AWS 文档。
有关 Amazon Data Firehose 的更多信息,您还可以查看 Amazon Data Firehose 集成文档。