Chafik Belhaoues
Do you have dozens of services running on AWS, but no one on your team can draw how they are connected? It's a familiar situation. The infrastructure has grown organically, the documentation is six months out of date, and the new engineer has been trying to figure out where the traffic is going for three days. The solution is to create an AWS architecture diagram based on what already works. Not from scratch, but by reverse engineering the existing environment. Below is a step-by-step guide to doing this.
Of course, you can live without a diagram as long as everything works. But then an incident occurs on Friday evening, and you spend half an hour figuring out which ALB maps to which target group, where the NAT gateway is located, and why traffic from one VPC isn't reaching the other.
The AWS data flow diagram is not just a decoration for a Confluence page. It is a working tool that is needed in several situations:
If your diagram is more than three months old, consider it obsolete. Infrastructure changes faster than people can update documentation.
AWS maintains an official library of icons - AWS symbols, organized by service category. They can be downloaded for free and used in any AWS diagram tool, from draw.io to specialized platforms. The icons are updated with each major service release.
Components found in almost any AWS diagram:
Important point: don't try to cram all 200+ AWS services into one diagram. A good diagram shows what a specific DevOps audience needs - network and deployment. For the security team - data flows and access points. For management - the big picture without technical details.
Brainboard uses standard AWS icons out of the box - no need to download and import anything manually.
Now let's get down to business. The process of creating an AWS components diagram from a live infrastructure consists of four steps. You don't have to do everything in one day - it's better to do it in parts, but do it well.
The first thing you need is a complete list of everything that works. It sounds obvious, but this is where most people stumble. A typical mistake is to scan only the main account and the main region.
How to collect inventory:
Don't forget to check all regions. A forgotten EC2 instance in ap-southeast-1, launched "for five minutes" two years ago, is a classic example. And yes, check all accounts in the organization if you have a multi-account setup.
You have your inventory - now you need to understand how it all fits together. To build an AWS data flow diagram, go through:
Draw arrows - where the data goes from and to. Incoming traffic from users, inter-service communication, database access, and external API calls. Without arrows, the diagram is just a set of icons.
A flat list of 87 resources on a single canvas is not a diagram; it's chaos. Group resources by functional layers:
Grouping helps the reader understand why all this exists, not just what it is. The difference is like that between a subway map and a list of stations.
Final assembly. Place the groups on the canvas, connect them with arrows with labels (traffic direction, protocol, port). Circle the VPC and subnets with borders - this immediately adds structure.
What to label: instance types, availability zones, endpoints, and CIDR blocks. Not everything - just what's important for understanding. If the diagram can't be read without zooming in, it has too many details. It's better to make two levels: an overview diagram and detailed drill-downs for each layer.
Brainboard is ideal for this process - it lets you build diagrams visually and generate Terraform code from them. In other words, the diagram ceases to be a "picture" and becomes a working artifact.
There are plenty of tools available, from free to enterprise-level. Here's what teams actually use for AWS network diagram:
The choice depends on the task. For a one-time diagram, draw.io is sufficient. For live documentation that updates along with the infrastructure, you need a tool that integrates into your workflow.
Drawing a diagram is half the battle. Keeping it up to date is the real challenge. Here are a few rules to help you avoid abandoning your diagram after a month:
The main thing is to create an AWS diagram, not for a pretty picture, but for a working tool the team uses every day.
1. Can I generate an AWS diagram automatically from my account?
Yes. Cloudcraft and other tools can scan your account and automatically build a diagram. Brainboard lets you import your existing infrastructure and get both a diagram and Terraform code simultaneously.
2. What is the best free tool to create an AWS architecture diagram?
draw.io (diagrams.net) is the best free option. It works in a browser and has a complete library of AWS icons. For more serious tasks, use AWS Application Composer (free but limited).
3. How detailed should my AWS network diagram be?
It depends on the audience. An overview diagram for management - 15-20 components. Technical for DevOps - all services with ports, CIDR, and availability zones. It is better to have two levels than to overload a single diagram.
4. Where can I download official AWS architecture symbols?
On the official AWS website: Architecture Icons. They are updated regularly and available in PNG, SVG, and formats for major tools (draw.io, PowerPoint, Figma).
5. How often should I update my AWS infrastructure diagram?
After every significant change, and once a quarter during scheduled checks, if the update is not built into the deployment process, the diagram will become outdated in a couple of weeks.