快速入门:使用 AWS Firehose 收集数据
编辑快速入门:使用 AWS Firehose 收集数据
编辑此功能处于技术预览阶段,可能会在将来的版本中更改或移除。Elastic 将努力解决任何问题,但技术预览中的功能不受正式 GA 功能的支持 SLA 的约束。
在本快速入门指南中,您将学习如何使用 AWS Firehose 将日志和指标发送到 Elastic。
AWS Firehose 流是使用 CloudFormation 模板创建的,该模板可以收集 AWS 帐户中所有可用的 CloudWatch 日志和指标。
此方法需要最少的配置,因为 CloudFormation 模板会创建 Firehose 流,启用跨所有命名空间的 CloudWatch 指标收集,并设置 CloudWatch 日志组的帐户级订阅过滤器,以便通过 Firehose 将日志发送到 Elastic。您可以使用 AWS CLI 命令或将模板上传到 AWS CloudFormation 门户来自定义以下参数值
必需的输入参数
-
ElasticEndpointURL
:Elastic 端点 URL。 -
ElasticAPIKey
:Elastic API 密钥。
可选输入参数
-
HttpBufferInterval
:Kinesis Firehose HTTP 缓冲间隔(以秒为单位)。默认为60
。 -
HttpBufferSize
:Kinesis Firehose HTTP 缓冲区大小(以 MiB 为单位)。默认为1
。 -
S3BackupMode
:Amazon S3 中的源记录备份,仅失败数据或所有数据。默认为FailedDataOnly
。 -
S3BufferInterval
:Kinesis Firehose S3 缓冲间隔(以秒为单位)。默认为300
。 -
S3BufferSize
:Kinesis Firehose S3 缓冲区大小(以 MiB 为单位)。默认为5
。 -
S3BackupBucketARN
:默认情况下,将创建一个用于备份的 S3 存储桶。您可以通过提供现有 S3 存储桶的 ARN 来覆盖此行为,以确保如果记录处理转换未产生预期结果,则可以恢复数据。 -
Attributes
:HTTP 端点的属性名称-值对列表,用逗号分隔。例如“name1=value1,name2=value2”。
特定于指标的可选输入参数
-
EnableCloudWatchMetrics
:启用 CloudWatch 指标收集。默认为true
。启用 CloudWatch 指标收集后,默认情况下将创建一个指标流,其中包含来自所有命名空间的指标。 -
FirehoseStreamNameForMetrics
:用于收集 CloudWatch 指标的 Amazon Data Firehose 流的名称。默认为elastic-firehose-metrics
。 -
IncludeOrExclude
:选择要流式传输的指标。您可以包含或排除特定命名空间和指标。如果没有给出过滤器命名空间,则默认为所有命名空间。默认为Include
。 -
MetricNameFilters
:用于从流中过滤指标的命名空间-指标名称对的逗号分隔列表。如果没有给出指标名称过滤器,则默认为所有命名空间和所有指标。例如“AWS/EC2:CPUUtilization|NetworkIn|NetworkOut,AWS/RDS,AWS/S3:AllRequests”。 -
IncludeLinkedAccountsMetrics
:如果您在监控帐户中创建指标流,请指定true
以将来自链接到此监控帐户的源帐户的指标包含在指标流中。默认为false
。 -
Tags
:要应用于指标流的标签的逗号分隔列表。例如“org:eng,project:firehose”。
特定于日志的可选输入参数
-
EnableCloudWatchLogs
:启用 CloudWatch 日志收集。默认为true
。启用 CloudWatch 日志收集后,将为所有 CloudWatch 日志组(除为 Firehose 日志创建的日志组外)创建帐户级订阅过滤器策略。 -
FirehoseStreamNameForLogs
:用于收集 CloudWatch 日志的 Amazon Data Firehose 流的名称。默认为elastic-firehose-logs
。
某些 AWS 服务需要额外的手动配置才能正确摄取日志和指标。有关更多信息,请查看 AWS 集成 文档。
使用 AWS Firehose 收集数据在 AWS、Azure 和 GCP 中的 ESS 部署中受支持。
先决条件
编辑- 在 Elastic Cloud 上使用我们的托管 Elasticsearch 服务进行部署。部署包括用于存储和搜索数据的 Elasticsearch 集群,以及用于可视化和管理数据的 Kibana。
-
具有
superuser
内置角色 或联机数据所需的权限的用户。 - 一个活动的 AWS 帐户以及创建传递流所需的必要权限。
默认的 CloudFormation 堆栈是在为用户帐户选择的 AWS 区域中创建的。此区域可以通过 AWS 控制台界面修改,或者在创建堆栈时通过 AWS CLI 命令中指定 --region
参数来修改。
限制
编辑AWS Firehose 接收器具有以下限制
- 它不支持 AWS PrivateLink。
- 它不适用于本地 Elastic Stack 部署。
- CloudFormation 模板仅检测和摄取单个 AWS 区域内的日志和指标。
下表显示了受支持的 AWS 服务摄取的数据类型
AWS 服务 | 数据类型 |
---|---|
VPC 流日志 |
日志 |
API 网关 |
日志、指标 |
CloudTrail |
日志 |
网络防火墙 |
日志、指标 |
Route53 |
日志 |
WAF |
日志 |
DynamoDB |
指标 |
EBS |
指标 |
EC2 |
指标 |
ECS |
指标 |
ELB |
指标 |
EMR |
指标 |
MSK |
指标 |
Kinesis 数据流 |
指标 |
Lambda |
指标 |
NAT 网关 |
指标 |
RDS |
指标 |
S3 |
指标 |
SNS |
指标 |
SQS |
指标 |
Transit 网关 |
指标 |
AWS 使用情况 |
指标 |
VPN |
指标 |
未分类的 Firehose 日志 |
日志 |
收集您的数据
编辑- 在 Kibana 中,转到 可观测性 并单击 添加数据。
-
选择 云、AWS,然后选择 AWS Firehose。
- 单击 在 AWS 中创建 Firehose 流 以从 CloudFormation 模板创建 CloudFormation 堆栈。
- 返回 添加可观测性数据 页面。
可视化您的数据
编辑安装完成后,所有相关数据都流入 Elastic 后,“可视化您的数据”部分允许您访问各种服务的不同仪表板。
以下是以 VPC 流日志仪表板为例
请参阅 什么是 Elastic 可观测性? 以了解其他有用功能的说明。