概览
Workload Discovery on AWS(前身为 AWS Perspective)是一种可对 AWS Cloud 工作负载进行可视化的工具。使用此 AWS 解决方案构建、自定义,以及分享您的工作负载的详细架构图,这些工作负载基于来自 AWS 的实时数据。 此解决方案可跨账户和 AWS 区域维护 AWS 资源清单,映射它们之间的关系,并在 Web 用户界面(UI)中显示它们。
该解决方案还附带成本查询生成器,让您可以定位可能产生成本的 AWS 资源和服务。针对特定时段将自动计算预计成本数据,并在您的架构图中显示。您可以为您的架构图生成成本报告,其中包含预计成本的概述,您还可以将其导出为 CSV。
右侧的图像是该解决方案生成的示例架构图。
优势
搜索功能让您可以使用基本信息(例如资源名称、标签名称或 IP 地址)来查找您感兴趣的资源。
通过在 Web UI 中选择一个资源(其中包括一个包含解决方案已发现的所有资源的目录)来开始构建架构图。
保存您的架构图以便稍后重访或与其他解决方案用户共享。要在解决方案之外使用架构图,您可以导出至 PNG、JSON、CSV 或 draw.io。
技术详情
您可以使用实施指南和随附的 AWS CloudFormation 模板自动部署该架构。
第 1 步
HTTP 严格传输安全性(HSTS)向来自 Amazon CloudFront 发行版的每个响应添加安全标头。
第 2 步
Amazon Simple Storage Service(Amazon S3)存储桶托管 Web UI,它通过 CloudFront 进行分发。Amazon Cognito 会对 Web UI 的用户访问进行身份验证。
第 3 步
AWS WAF 可保护 AWS AppSync API 免受常见漏洞和机器人的攻击,它们会影响可用性、降低安全性或占用过多资源。
第 4 步
AWS AppSync 端点允许 Web UI 组件请求资源关系数据、查询成本、导入新的 AWS 区域,以及更新首选项。AWS AppSync 还允许发现组件将持久数据存储在解决方案的数据库中。
第 5 步
AWS AppSync 使用由 Cognito 预置的 JSON Web 令牌(JWT),以便对每次请求进行身份验证。
第 6 步
AWS Lambda 函数设置将已导入的区域和其他配置保留到 Amazon DynamoDB。
第 7 步
该解决方案将 AWS Amplify 和 S3 存储桶部署为存储管理组件,以便存储用户首选项和已保存的架构图。
第 8 步
数据组件采用 Gremlin Resolver Lambda 函数来查询数据并将其从 Amazon Neptune 数据库返回。
第 9 步
数据组件使用 Search Resolver Lambda 函数来查询资源数据并将其保留到 Amazon OpenSearch Service 域。
第 10 步
成本 Lambda 函数使用 Amazon Athena 来查询 AWS 成本和使用情况报告(AWS CUR),以向 Web UI 提供预计成本数据。
第 11 步
Athena 在 CUR 上运行查询。
第 12 步
CUR 将报告传送到 CostAndUsageReportBucket S3 存储桶。
第 13 步
成本 Lambda 函数将 Athena 结果存储在 AthenaResultsBucket S3 存储桶中。
第 14 步
AWS CodeBuild 在映像部署组件中构建发现组件容器映像。
第 15 步
Amazon Elastic Container Registry(Amazon ECR)包含由镜像部署组件提供的 Docker 映像。
第 16 步
Amazon Elastic Container Service(Amazon ECS)管理 AWS Fargate 任务,并提供运行任务所需的配置。Fargate 每隔 15 分钟会运行一次容器任务,以刷新清单和资源数据。
第 17 步
AWS Config 和 AWS SDK for JavaScript 调用帮助发现组件维护导入的区域的资源数据清单,然后将其结果存储在数据组件中。
第 18 步
Fargate 任务通过对 AWS AppSync API 的 API 调用,将 Config 和 SDK for JavaScript 调用的结果保留到 Neptune 数据库和 OpenSearch Service 域中。
相关内容
本课程介绍 AWS Config 以及记录和规范化 AWS 账户内配置更改的过程。我们还讨论了使用案例和配置,并且还对该服务进行了简短的演示。
此课程向您介绍 Amazon Neptune 及其核心特征和功能。课程描述了此服务如何与其他 AWS 服务集成,介绍了重要的术语和技术概念,并且还包括服务的演示。
本课程提供了关于 AWS CloudFormation 如何用于自动化资源供应的基本概览,此外还介绍了 CloudFormation 以重复且可预测的方式创建资源组的使用案例。本课程还包括针对资源供应设计 AWS CloudFormation 模板的演示。