Stop counting infrastructure
Technology has melted infrastructure. From solid stacks that you could count and dust, to streams of instances and containers and cloud services.
In the solid infrastructure world you could get the inventory state and squeeze it in a database. Things were slow and tangible enough to make you feel, up to some degree, that you knew how your resources were being utilized. And that your infrastructure served the purpose you wanted it to serve.
In the liquid infrastructure world, you are told “well, here’s the credentials for an unlimited supply of invisible stuff, make sure everyone uses it right, because it’s expensive!”
In this reality you need to find new ways to make sure these resources flow into the right places, and help your business get faster.
Infrastructure stacks are no longer a manageable entity
Traditionally, infrastructure is managed like an inventory. You count infrastructure stacks and allocate them to consumers. But cloud instances, storage, containers, services — they are no longer meaningful. They were created automatically a second ago, and — count to 3 — now they are gone.
Managing this stream of infrastructure cannot be done with inventory and traditional cloud management methods. It’s too dynamic.
I think this is a lot like water
Let’s forget infrastructure for a second. If you were asked to manage the consumption of water with a traditional inventory system, what would you do? You would probably put it in bottles or buckets, to make it possible to count something. But it is so much better to offer water through taps, right? And when the technology is mature and tap water is finally invented, you no longer count it the same way. Instead of counting buckets, you find a way to meter the water stream.
The technological maturity - being able to offer water consumption through tap instead of buckets - is only the beginning. Finding the right way to manage this consumption is quite a serious challenge on its own. It requires understanding the value that the consumers get from water.
If you stick to traditional inventory methods, you may end up counting taps instead of metering how much water is being consumed.
Back to infrastructure, but still thinking of what the consumers need
Adapting to the new era of infrastructure management requires abstracting the business need from the infrastructure elements. The business need is what your consumers actually need when they ask for infrastructure:
> The applications (what applications reside on the infrastructure, at the end of the day this is your business)
> The activity (what is being done with these applications — developing a new feature? security testing? staging environment? production?)
If you manage to offer this to your consumers, it doesn’t really matter what infrastructure elements are hidden under the hood.
Bye bye infrastructure elements, hello environment
Instead of offering sporadic infrastructure elements, you can start offering complete working environments, that bundle together the infrastructure elements and the business need.
An environment is simple to understand — it’s what the consumers need to get their job done.
It’s not as simple to achieve technically, but technology makes it possible. And isn’t this where technology is most beautiful — when it helps you make very complex things damn simple.
Metering infrastructure
If you no longer control consumption with inventory systems, you need a good metering method that doesn’t stop consumers from getting their jobs done. And just like you wouldn’t like to open a request ticket for hand washing, no one wants to do this for infrastructure.
Using environments makes it possible to automatically translate the streams of consumed infrastructure with the business need. Instead of translating it manually (““guys, who used five t3.2xlarge instances on AWS last week?!”), you know exactly what it is being used for.
Once you can connect the consumption data to the business need, the stream can move as fast as needed. You don’t stand in its way. Consumers open infrastructure taps around the world, and you don’t panic. You can measure consumption and make sure that everyone uses infrastructure right.