重要提示:我们最近推出了使用 OpenSearch 进行集中式日志记录解决方案,可以帮助您快速构建集中式日志分析平台。如果满足以下所有条件,我们建议迁移到此新解决方案:
- 您目前使用 AWS 上的集中式日志记录解决方案
- 您没有使用 AWS GovCloud(美国)区域部署
- 您没有使用跨区域日志记录功能
要迁移到新的解决方案,请按照 AWS 上的集中式日志记录实施指南中概述的步骤进行操作。
概览

AWS 上的集中式日志记录解决方案可帮助组织在单个控制面板上收集、分析和显示 Amazon CloudWatch Logs。该解决方案可整合、管理和分析来自各种来源的日志文件,例如访问、配置更改和计费事件的审计日志。您也可以从多个账户和 AWS 区域收集 Amazon CloudWatch Logs。
该解决方案使用 Amazon OpenSearch Service 和 Kibana(一个与 Amazon OpenSearch Service 集成的分析和可视化平台),可以将所有日志事件整合在统一的视图中。通过与其他 AWS managed services 相结合,此解决方案为您提供了一个一站式环境,以便开始记录和分析您的 AWS 环境和应用程序。
支持的日志格式包括 Amazon VPC 流日志、AWS CloudTrail、AWS Lambda、通用日志格式、空格分隔格式、JSON、Apache Web 服务器日志以及其他(用户定义的)格式。
优势

AWS CloudFormation 模板会自动启动和配置必要的组件,以将日志文件从多个账户和 AWS 区域上传到 Amazon OpenSearch Service,以便在可自定义的用户友好型控制面板中进行分析和可视化。
使用 Amazon Cognito 控制对仪表盘的访问,以简化对 Amazon OpenSearch Service 的身份验证。
将您的日志功能扩展到默认的 AWS 服务日志之外。此灵活的解决方案包括用于捕获主机级日志文件和 VPC 流量日志的示例,并且可随着您业务的增长而扩展。
使用内置的 Amazon OpenSearch Service 对 Kibana 的支持来简化数据可视化,其中包括一组默认的预配置控制面板,使您可以初步了解 Kibana 的自定义功能。
技术详情

AWS 上的集中式日志记录解决方案包含以下组件:日志提取、日志索引和可视化。您必须在打算存储日志数据的 AWS 账户中部署 AWS CloudFormation 模板。
步骤 1a - 日志提取
Amazon CloudWatch Logs 目标在主账户中部署,并在每个选定区域中使用所需权限创建。可以配置 CloudWatch Logs 订阅筛选器,以将日志组流式传输到 AWS 上的集中式日志记录账户。
步骤 1b - 日志提取
可以部署一个可选的演示 AWS CloudFormation 模板来为 AWS CloudTrail、Amazon Virtual Private Cloud (Amazon VPC) 流日志和 Amazon Elastic Compute Cloud (Amazon EC2) Web 服务器生成示例 CloudWatch Logs。
步骤 2a - 日志索引
预置集中式 Amazon Kinesis Data Streams 和 Amazon Kinesis Data Firehose 来为集中式 Amazon OpenSearch Service 域上的日志事件创建索引。创建用于流式传输日志事件的 CloudWatch Logs 目标,将 Kinesis Data Streams 作为其目标。
步骤 2b - 日志索引
一旦日志事件传输到 Kinesis Data Streams,该服务将调用 AWS Lambda 函数将每个日志事件转换为 Amazon OpenSearch Service 文档,然后将其放入 Kinesis Data Firehose。您可以在 Kinesis Data Firehose 发送包含每个交付流的详细监控数据的自定义 CloudWatch Logs 时对其进行监控。
步骤 3 - 可视化
Amazon OpenSearch Service 和 Kibana 提供数据可视化和浏览支持。在 Amazon VPC 内创建了一个 Amazon OpenSearch Service 域,以防止公众访问 Kibana 控制面板。可以根据需要启动 Microsoft Windows Jumpbox 服务器来访问 Amazon OpenSearch Service 集群和 Kibana 控制面板。