What does this AWS Solution do?

Workload Discovery on AWS (formerly called AWS Perspective) is a tool to visualize AWS Cloud workloads. Use Workload Discovery on AWS to build, customize, and share detailed architecture diagrams of your workloads based on live data from AWS.

The image to the right is a sample architecture diagram generated by Workload Discovery on AWS.

AWS Perspective | Sample architecture diagram
Sample architecture diagram generated by Workload Discovery on AWS
 Click to enlarge

Benefits

Build architecture diagrams

Workload Discovery on AWS lets you build, customize, and share detailed architecture diagrams. Workload Discovery on AWS maintains an inventory of the AWS resources across your accounts and Regions, mapping relationships between them, and displaying them in a web UI.

Query AWS Cost & Usage Reports (CURs)

The cost query builder lets you locate AWS resources and services that may have incurred a cost. The estimated cost data is automatically calculated for the time period specified and displays on your architecture diagrams.

You can generate a cost report for your architecture diagrams that contains an overview of the  estimated cost and export them as CSV.

Search
blank

The search feature lets you use basic information, such as resource name, Tag name, or IP address to locate the resources you are interested in.

Resource directory
blank

Explore resources provisioned across your accounts and Regions using the resource directory. It contains all the resources Workload Discovery on AWS has discovered. You can start building your Workload Discovery on AWS architecture diagrams by selecting a resource in the web UI.

Save and export architecture diagrams

You can save your Workload Discovery on AWS architecture diagram to revisit later or share it with other Workload Discovery on AWS users. To use the diagrams outside of Workload Discovery on AWS you can export to PNG, JSON, CSV, or draw.io.

AWS Solution overview

The diagram below presents the architecture you can automatically deploy using the solution's implementation guide and accompanying AWS CloudFormation template.

AWS Perspective | Architecture diagram
 Click to enlarge

Workload Discovery on AWS Solution architecture

The CloudFormation template deploys the following architecture consisting of six components:

1. CloudFront Functions adds HTTP Strict-Transport-Security (HSTS) security headers for each response from the Amazon CloudFront distribution.

2. An Amazon Simple Storage Service (Amazon S3) bucket hosts the web user interface (web UI), which is distributed via Amazon CloudFront. Amazon Cognito authenticates user access to the web UI.

3. AWS Amplify and an Amazon S3 bucket are deployed for the storage management component to store user preferences and saved architecture diagrams.

4. Amazon API Gateway endpoints allow the web UI component to request resource relationship data from the data component. AWS AppSync endpoints allow the web UI component to request resource relationship data, import new AWS Regions, and update preferences.

5. API Gateway and AWS AppSync use JSON Web Tokens (JWTs) provisioned by Amazon Cognito to authenticate each request.

6. An AWS Lambda function persists imported Regions and other configurations to Amazon DynamoDB.

7. The data component uses a Lambda function to query and return data from an Amazon Neptune database.

8. The data component uses a Lambda function to query and persist resource data into an Amazon OpenSearch Service domain.

9. For the cost component, a Lambda function uses Amazon Athena to query AWS Cost and Usage Reports (AWS CUR) to provide estimated cost data to the web UI.

10. Amazon Athena runs queries on AWS CUR.

11. AWS CUR delivers the reports to an Amazon S3 bucket.

12. A Lambda function stores the Amazon Athena results in an Amazon S3 bucket.

13. CodePipeline and AWS CodeBuild build the discovery component container image in the image deployment component.

14. Amazon Elastic Container Registry (Amazon ECR) contains a Docker image provided by the image deployment component.

15. Amazon Elastic Container Service (Amazon ECS) manages the AWS Fargate task and provides the configuration required to run the task. AWS Fargate runs a container task every 15 minutes to refresh inventory and resource data.

16. AWS Config and AWS SDK calls help the discovery component maintain an inventory of resource data from imported Regions, then store its results in the data component.

17. The AWS Fargate task persists the results of the AWS Config and AWS SDK calls into an Amazon Neptune database and an Amazon OpenSearch Service domain via API calls to an API Gateway resource.

Workload Discovery on AWS

Version 1.1.4
Last updated: 04/2022
Author: AWS

Estimated deployment time: 30 min

Use the button below to subscribe to solution updates.

Note: To subscribe to RSS updates, you must have an RSS plug-in activated for the browser you are using.  

Did this Solutions Implementation help you?
Provide feedback 
Build icon
Deploy a Solution yourself

Browse our library of AWS Solutions Implementations to get answers to common architectural problems.

Learn more 
Find an APN partner
Find an APN Partner

Find AWS certified consulting and technology partners to help you get started.

Learn more 
Explore icon
Explore Solutions Consulting Offers

Browse our portfolio of Consulting Offers to get AWS-vetted help with solution deployment.

Learn more