5 things you need to know to draw better AWS diagrams

  • Learn how to decomplexify

  • Dealing with large environment

  • Increase consistency

AUTHOR

Pascal Bonheur

READING TIME

10 min

Creating nice AWS Diagrams is quite a complex task. Sure you can create small diagrams with a few basic components like an EC2 Instance, a few S3 Buckets and a VPC : this one is not too much a challenge. But when it comes to create a diagram of your complete AWS Account, it becomes a lot more complex, and this is brought by multiple factors.

  • Who is going to use the diagram?
    A network specialist will probably be interested in seeing VPC and ACL wheres a Storage specialist will be more interested in S3 Buckets
  • How do you display many components?
    You want to minimize the number of crossing arrows and optimize the shape position
  • Is you diagram matches 100% of what is really deployed in your AWS Account?
    There are strong chances that this will not be the case in one or two weeks…

Here are a few hints to draw wonderfull AWS diagrams and impress your boss !

 

1. Keep dependent AWS resources close to each other

This tip is quite obvious and most of the time this is a natural way of creating diagrams : for example, you will put the Elastic Load Balancer near the EC2 instance which is also need to the S3 storage bucket. You also typically create layered diagrams with a layer that contains all the Elastic Load Balancer and all your Networking components like VPC and Route 53. Here is an example of that.

This diagram is easy to read because it respect the following best practices:

  • Layered diagram
    • First layer on top has the Elastic Load Balancers which makes sense because the load balancer is the first component hit by user requests
    • Then, you have the networking components in the diagram with the VPC and Network Interfaces
    • After that, you draw the Compute Instances
    • Finaly, on the last layer, the storage is displayed
  • Components that are related are grouped together:
    • As you can see, storages related to the Compute instance are kept close to each other.
    • That decreases the number of crossing arrows as illustrated bellow (two identical diagrams but 1st one has a lot more crossing arrows) :

2. Add Data to the shapes to make your diagram more relevant

Having a nice diagram gives you a really good visualization of what you have in your AWS Accounts and what the dependencies are but you also want to avoid having to jump to the documentation as soon as you want to see more details.

That’s why you should leverage data when possible. Most of the well-know diagraming tool will give you the option to add data to your shape. Here is for example of screenshot of draw.io that shows how to add data.

and you have the exact same option in Visio.

3. Create multiple diagrams with different grouping

As explain at the begining of this page, there is not a single audience for the diagrams you draw so it means that you have to adapt your drawing depending on your target.

The best way to manage that is to adopt different ways to group your shapes and also to play with the level of details you display.

For example, if you draw a diagram for your Network specialist, you should probably include Networking details like route tables directly in the diagram.

Whereas if you are an Application specialist and you want to display your components (including some related to VPC), you should draw something like this.

4. Work in powerfull diagram tools

As possible, you want to work with ‘classic’ diagram tool that are well known and that people in your company already uses. There are many advantages of doing that:

  • Don’t need extra knoweldge as you already know the tool
  • Diagraming tool are really focused on diagrams and have plenty of powerfull features like shapes data, layering, exporting, conditional formatting..
  • You don’t need extra license as people in your company already use those classic tools
  • The diagram that you generate are easily shareable as they are using well know diagrams standards

As an example, here is for instance a digram with all the rich features of draw.io (like shapes properties, layers, tabs…)

5. Keep your diagrams up to date

This one is pretty obvious but you can draw the best AWS Diagram ever, if you don’t update it, this is a waste of time as there are good chance that your diagram will be obsolete very soon.

That’s where a tool like Cloudockit comes into play : it will do the job for you and it will automatically proceed with the diagram generation. Currently, Cloudockit only generates ‘new’ diagrams but we are currently working on giving you the option to update your diagrams. So it means that in a near future, you will be able to create a Diagram with cloudockit, adapt it the way you want and add some extra shapes as needed. Then, we will update the diagram with new components and new links detected.

 

Also, use consistent stencils and stay up-to-date with your icons

You need to use consistent stencils if you draw diagrams for not only AWS but also your other components like Hyper-V, VMware or other Cloud Providers like Azure and Google.

That’s the reason why we have choosen to make our Cloudockit stencil free for download. We hope that this will help you draw 2D and 3D diagrams that make sense accross all your IT Systems.

If you want to make sure that your diagrams are well understood by anyone working in the AWS playfield, you need to ensure that you are using the ‘real’ AWS stencils, not a stencil that you have created and you think is nicer than AWS official one ! You need to stay up-to-date regarding the stencils and make sure you use the latest one or at least one version that is well know. For example, AWS has recently released a new set of icons that you can download in there : https://aws.amazon.com/fr/architecture/icons/

Cloudockit also support

all these platforms