'Is there a way to visualize AWS current running infrastructure?

for example, how my ec2 instances are connected, how many different clusters available, what instances are behind ELB, what security groups are tagged to each instance, basically i'm looking for a architecture of my current AWS environment



Solution 1:[1]

It may not be as convenient as the paid third-party apps that interrogate your account (makes me nervous), but I have previously done the following in the native AWS console:

  • Generate a CloudFormation template for the current account. Using Amazon's CloudFormer you can selectively generate a template for all of the resources in your account.

    CloudFormation > Create Stack > Select Template "CloudFormer" > Follow CloudFormer User Guide.

  • Visualise the Template in CloudFormation Once you have the CloudFormation json template for your account, copy and paste it into the CloudFormation Designer. Then you see all the resources and links, just spend a bit of time laying them out as you want them.

    CloudFormation > Create Stack > Design template > Template tab (at the bottom) > paste


Also, CloudCraft have a live update process, I do like their free online AWS drawing app. I have not tried the subscribed service with Live Update, but always considered giving it a go when I have a good reason to.


UPDATE 2021 - CloudFormer has been discontinued, instead have a look at Former2. Thanks to @Perplexabot for the suggestion.

Solution 2:[2]

One challenge with most cloudformation visualizations is that they map every single resource instead of the logical entity. For example, a VPC is typically 20ish resources, but logically only one entity. The Stackery VS Code plugin is free and enables visualization and editing with logical entities. The editing is mostly focused on serverless apps, but can visualize all cloudformation resources.

In order to answer the question of "what's running right now" New Relic Infrastructure, Datadog, and Signalfx all have good solutions for doing that.

Solution 3:[3]

As others have pointed out, your can either go with a slightly complex way by first using Cloudformer (I could never get it to depict the exact state) to create a CloudFormation template and then visualize the same using CloudFormation designer or just use a third party app e.g. VisualOps. From what I have read so far , this looks quite interesting and accurate. Here's a walkthrough.

Solution 4:[4]

Yes, You can use https://aws.amazon.com/solutions/implementations/aws-perspective/ AWS Perspective is a visualization tool that quickly generates architecture diagrams of AWS Cloud workloads.

Solution 5:[5]

In 2021, this appears to be an acceptable open-source, self-hosted answer: https://github.com/duo-labs/cloudmapper

Blurb from the README:

CloudMapper helps you analyze your Amazon Web Services (AWS) environments. The original purpose was to generate network diagrams and display them in your browser. It now contains much more functionality, including auditing for security issues.

Solution 6:[6]

I don't know any way to do so in retrospect but there are some tools to build and deploy AWS infrastructure so you always have an up-to-date visualization of it. You can use Altostra Designer to visualize your infrastructure and later on use it to manage your stacks.

Solution 7:[7]

Using AWS CDK + AWS CloudDesigner =

AWS CDK Workshop - Framework for Infrastructure as Code (way better than Terraform and CloudFormation templates)

  1. In your workdir go to the folder "cdk.out"
  2. Go to "Nameofyourstack.template.json"
  3. Copy only the "Resources"
  4. Go to Cloud Designer
  5. In the bottom window pick the template tab

enter image description here

  1. Paste it and visualize it enter image description here

Solution 8:[8]

I found AWS Perspective for visualization of the running infra.

Still playing with it. Seems a nice tool, but it's not free, full account discovery could take several hours. For example, after an hour and a half, I still do not see all my resources, especially serverless.

For me, the most informative charts are made by tags.

discovered resources

Solution 9:[9]

Datadog is the best I've found so far (writing in 2019). It's a paid service but not expensive. Its primary focus is monitoring, not infrastructure visualization, but it may be useful for your use case. https://www.datadoghq.com/dg/monitor/aws/

enter image description here

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1
Solution 2 Abnerg
Solution 3 st_rt_dl_8
Solution 4 Shelly Dar Rapaport
Solution 5 Marc Tamsky
Solution 6 Shahar Yakov
Solution 7 Edward Casanova
Solution 8
Solution 9