7 min read

Auto Generate GCP Diagrams

February 21, 2022

Auto Generate GCP Diagrams

When you are building on GCP or working with applications built on GCP as a development or operations engineer you possibly already appreciate the value of a well laid out network topology diagram. Especially if that diagram accurately represents what resources you have configured in your (or your client's) GCP accounts.

While there is little dispute cloud network diagrams are an essential tool when you want to know what you currently have running or if you want to communicate the design of your network  to consultants or new engineers, the problem has always been the time it takes to create a well laid out accurate Google Cloud Platform diagram.

Auto Generate GCP Diagrams

Unfortunately the methods that spring to mind when creating GCP cloud network topology diagrams have always been slow, tedious manual work involving transposing information from your GCP console onto a drawing canvas using drag and drop diagram applications like Visio to construct your diagrams.

The drawing process involved getting your hands on a GCP icon set, working out what services and resources you have running, what virtual networks, zones and subnets are in use and then working out which resources belong to each virtual network. Very time consuming, mind-numbing work.

Hava's engineers have a long history of cloud consulting and every time they took on a new client, they had to go through the same tedious task of documenting the client's existing network, so internally they developed a toolset for automating this process. That toolset was eventually spun off into a stand alone application and business now known as Hava.

The Hava application allows you to connect your GCP accounts to either a SaaS or self-hosted instance of Hava and it automatically generates GCP network topology diagrams and for each Virtual Network discovered.

Recently a few drawing application vendors have attempted to bolt on an import function to their drawing applications, however these appear to be a one-shot function, unlike Hava which continuously monitors the connected data sources and automatically updates diagrams when changes are detected.

Hava auto generates GCP diagrams hands free, no user intervention is required, and you always have up to date GCP network infrastructure diagrams on hand whenever you need them.

Because your auto generated GCP diagrams may change several times in between you logging in to Hava to view them, Hava retains all the diagrams that have been superseded in version history.

Hava_Versions

So you have an audit trail of changes that have been made to your GCP environment should you need to track down unexpected network behaviour, performance issues or an unexpected jump in billing.

If you were relying on manually invoked diagram updates, you could possibly miss changes that have come and gone that caused the problem you are trying to investigate, which makes Hava's approach of continuously polling your configuration data and auto generating diagrams a much smarter methodology in our view.

How to Auto create a GCP diagram fast.

When you leverage the power and accuracy of Hava's diagram generator to create your Google Cloud Platform infrastructure diagrams on autopilot you only need to connect your GCP account once. That's it. 

Hava can be hosted on your own infrastructure (self-hosted) or you can subscribe to a SaaS plan and be up and running in a minute or two.

Then all you need to do is create a Read-only Service Account and plug that into Hava. The Service Account connection provides secure read-only access to console metadata which is what Hava uses to analyse running resources and construct diagrams.

So a minute or two of effort on your part connects your GCP account to Hava, which will create potentially unlimited GCP virtual network diagrams that stay up to date automatically until you disconnect. 

If you are running multiple GCP accounts, or are managing GCP accounts for multiple clients, you can connect them to your Hava account. 

So what do you get when you connect Hava to your GCP account, to auto generate GCP diagrams.

The first diagram you get is the Infrastructure View.

gcp_diagram_no_connections

The GCP Infrastructure diagram lays out your GCP networks into separate diagram sets. Subnets within the Virtual Network are mapped within zones and detail resources both inside and outside the subnets and virtual network.

The diagrams automatically generated by Hava are all interactive. Which means, clicking on any of the GCP resources on the diagram changes the attribute panel on the right of the diagram which allows you to take a deep dive into the resource settings like security groups, IP ingress/egress ports, connected storage and so on. The infrastructure view diagrams also display the estimated costs of each resource which are totalled for the entire environment when the environment is opened up.

All the diagrams auto generated by Hava are kept as clean and readable as possible. By default, connections and resource names are not shown on the diagram, however connection lines and resource names can be toggled on like in the example below.

GCP_Architecture_Diagram

Right from inception, our engineers decided to keep the Hava diagrams clean and free from non essential resources like network interfaces that could flood the diagrams with lots of unimportant information making them messy and confusing. 

Although these less important components are not on the infrastructure diagrams, we did need to know about these 'non-visualized' components, so we created the "GCP List View". The List View is an extensive data set that lists all the resources discovered in your GCP configuration. This view lists both visualized resources shown on your diagrams and non-vizualized resources.

The listed resources also have an estimated cost detailed against them.

GCP_List_View

One of the benefits of this list view is the ability to sort the list, including by costs. This reveals what resources make up the bulk of your estimated cloud spend which should help when you are looking to save cloud costs or explain to management which important resources make up the bulk of your Google Cloud bill.

Now you have the ability to take advantage of the quickest way to create a GCP diagram.

Whichever Hava diagram or view makes the most sense or delivers the information your team needs to build and manage your environments, the upside to using this hands free automatic Google Cloud Platform infrastructure diagram tool like hava.io is that your diagrams are sourced directly from your GCP configuration, so nothing is missed out and nothing can be added by mistake.

What you see on the diagrams is derived from the source of truth, so your diagrams are always accurate and always up to date.

When your GCP configuration changes, so do all your diagrams, all automatically,  all hands-free, no human interaction required. The diagrams that are automatically replaced are archived in a version history. You can open up previous versions at any time you like. The diagrams are fully interactive so you can compare old configurations to new ones to find out what has changed in the event of a problem or compliance audit.

The diagrams generated by Hava are also exportable. You can produce an GCP architecture PDF or a JPG for inclusion in your reporting as well as CSV and JSON.

There are currently two options for using Hava to generate your cloud infrastructure diagrams.

Option 1: SaaS

The Hava SaaS option is by far the quickest and easiest way to start visualizing your GCP cloud infrastructure.

You simply create a GCP service account with read only permissions, then log into hava.io and connect your GCP account. Hava will read your GCP config data and render the diagrams and start to track any changes for audit purposes.

A fully functional 14 day trial is available (along with demo data) so you can try Hava for yourself. At the time of writing, no credit card is required to take the trial.

Option 2: Self Hosted

The self-hosted option allows you to run Hava from within your own infrastructure. If you have particular security or enterprise policies that prevent the connection of 3rd party applications to your cloud environments, then self-hosted may be the solution.

Both options are identical in functionality, but you will need to contact our support team to organise a self-hosted solution.

As well as using the Hava application console to generate and view diagrams, Hava has a fully featured API that allows you to programmatically add and remove data sources, projects and diagrams. You can use the API to programmatically integrate diagram processes in build pipelines.

We recommend requesting a one on one demo with our sales team if you would like to see Hava in action and explore the self-hosted option.

You can contact us via sales@hava.io or jump into a free trial here:

Topics: gcp
Team Hava

Written by Team Hava

The Hava content team

Featured