AWS Perspective solution architecture
The AWS Perspective CloudFormation template consists of six components.
The web user interface (web UI) component interacts with the data component via Amazon API Gateway and AWS AppSync endpoints. The web UI requests resource relationship data from the data component. The data component queries and returns data from an Amazon Neptune database.
The discovery component uses AWS Config and AWS API calls to maintain an inventory of resource data from imported accounts and Regions, then stores its findings in the data component. This runs every 15 minutes as a container task on AWS Fargate. The discovery component container image is built in the image deployment component using AWS CodePipeline and AWS CodeBuild.
The cost component processes AWS Cost and Usage Reports (AWS CUR) to make cost data available in AWS Perspective. To use this feature, you must create a report in AWS CUR to publish reports to an Amazon S3 bucket. When an AWS CUR is uploaded, it triggers an AWS Lambda function to process the cost data and store it in an Amazon DynamoDB table. The data component queries this DynamoDB table to provide the costs associated with the individual resources for display in the web UI. If you do not create an AWS CUR, cost data will not be included in AWS Perspective architecture diagrams.
For additional details about each component, refer to the implementation guide.