Visibility and accessibility are key factors when it comes to efficient software development. They’re also key pillars of DevOps, and a first step in the fight against silos which hinder, well, pretty much everything.
Today's infrastructures are complex and inaccessible to everyone except the most technical profiles. This isn't good for efficient teamwork. Infrastructure diagrams don't work with modern infrastructures, so we've come up with an alternative called InfraView.
The problem with modern infrastructure
Much of what DevOps produces is not, by default, very accessible. Services and tools are complicated and no one except very technical profiles can decipher Terraform. So how can teams ensure that everyone can see their infrastructures?
Diagrams - the good and the bad
Early in the world of DevOps - and system administration before it - people cottoned on to the idea of using infrastructure diagrams quite early. They skip the need to decipher or understand code and give everyone the opportunity to see what’s going on in production. Diagrams take a snapshot of what’s happening in a given infrastructure in a given moment and everyone can see it.
Except there’s a catch.
There are several, actually. Firstly, diagrams are time-consuming and boring to create. In the olden days, making diagrams was an infrequent task and could be incorporated as a small part of a project manager’s or ops engineer’s job.
As computing has marched forward, however, these diagrams are getting bigger and more complex and change on an almost constant basis. That makes manually creating diagrams a thankless, effort-intensive task and one that you really can’t ask anyone to just fit in to an already-packed day.
There’s another problem with the old-style manual diagrams - they’re a snapshot of a moment and in cloud computing, a moment is a long time. Sure, you can make a diagram of the infra you specified in design but, between here and production, it could have changed unrecognizably. If people can’t see how and where it has changed, it can lead to some pretty huge misunderstandings.
Our solution - InfraView
Our devs weren’t happy with this situation. Diagrams were better than nothing, sure, but objectively they weren’t very good at all. This prompted us to develop InfraView and we’ve been working on it ever since.
How it works
Simply, Infraview is a visual representation of your infra-as-code. It queries your Terraform state file directly, so it’s not reliant on your cloud provider’s API. Infraview is a tab on your project interface. When you select it, it will show you the various resources that make up your infrastructure.
Some resources have icons, for easy identification and, by clicking on the settings cog, you’ll open a panel on the right where you can see the specific attributes for each resource. There’s also a search function, so you can search for the details of a specific item, and you can copy-paste, in case you need to use the details you find somewhere else.
Infraview is very cool but it's also in contant evolution. It's currently about 25% of where we want it to be. Very soon we’ll release auto-refresh so that InfraView leverages sister feature TerraCognita to give you an almost real-time diagram of your infra.
We’re also planning on integrating StackCraft, our drag and drop infrastructure creator, so that you can modify your infrastructures in StackCraft and see the changes replicated in your InfraView diagram.
Later, we’re also going to enable resource grouping and update the information panel, which will both help InfraView become a more user-friendly tool.
Hopefully, you’ve enjoyed and understood this explanation of InfraView - it’s one of our favorite features and we really hope it becomes one of yours. If you’d like more information about it or Cycloid in general, check out our walkthrough video or InfraView release blog post. If you’re craving something more technical, you’ll enjoy (is enjoy too strong?!) the tech doc - click the button below..