When something gets complex, our primary approach is to break it down — even cloud management. If you’re a part of a growing company that uses the cloud, you can see your infrastructure becoming more complex as you scale and expand. That means its management does too.
Earlier you could put a few scripts together and use them to perform basic management functions. Or you could use an external tool for certain functions, but they’re limited in their offering. It’s only backups, or only scheduling, or only monitoring, all a little too siloed. But now these methods simply don’t scale — and it’s not ‘basic’ cloud management functions anymore, we’ve moved on, we’ve become sophisticated.
What is ‘componentization’?
So if AWS managed to ‘componentize’ the cloud to make it easier to use — through servers, and databases, and storage units; why not apply the same concept to cloud management? Componentizing cloud management means breaking it down into blocks that can be combined in various ways to achieve various use cases, just like workflows. I usually refer to them as LEGO blocks being put together to create anything intuitively, from LEGO houses to LEGO cities. Since they’re workflows, it doesn’t matter how complex your use case is, you just create a simple workflow.
It’s not the function that matters here, it’s the power of the underlying componentized platform, that is practically giving you complete control of how you want to handle your infrastructure. The idea isn’t to eliminate code in entirety, but to use its best functionality, which is its ability to provide flexibility and customization, to give you the best of both worlds.
Faultless agility is all that matters
‘Agility’ has moved from a simple noun to a mainstream concept in technology with the rise of ‘agile methodologies’. This need for a fast-paced method of deployment and maintenance is what led to the inception of DevOps — so keeping in line with the very core of DevOps, cloud management needs to function at maximum velocity. This is where the need for a componentized system arises, so that you’re problem-solving and churning out workflows at an accelerated pace, instead of writing scripts from scratch. The best part about workflows is that although you’re doing it quickly, you don’t compromise on the customization element.
Componentized automation is key
In this age of fast-paced digitization, we need to be automating everything that can be automated. This has been the very premise of cloud management, to make it self-service, event-based and fully managed. Instead of coding for every repetitive or custom action, you can simply create and deploy workflows.
Cloud management needs have become superhuman
As we scale, our focus has shifted to maximizing reliability and efficiency. We’re looking for more evolved use cases:
Imagine you want to rebalance your instance fleet (are you the Star Destroyer?!) across your AZs at the exact moment two stars align in a galaxy far far away? As insane as this sounds, these are exactly the kind of demands we have from cloud management now, or at least these are the demands we should have in order to deal with our complex cloud infrastructure. Here’s where the power of componentization is truly evident — it can democratize cloud management so engineers can problem-solve without having to code.
Everything is connected, as all systems should be.
Cloud management can’t be an external activity that’s avoidable, it needs to be a part of your infrastructure, and fit in as another step in your processes — and here’s one word for it — integrations! A workflow system allows these integrations to fit into your existing workflows seamlessly, through API calls. Let’s say you work with a ticketing system, where you log a cloud issue, the auto-remediation of that should be triggered from that ticketing system. What’s the point of having two amazing systems in place if they can’t work together?
Or imagine you’re using Jira for project management, you should be able to initiate actions from Jira tickets that you file. But it doesn’t stop there, it needs to be able to resolve the ticket when the action is complete. It’s not just flexible triggers, but the integration needs to come full circle to give you flexible notifications and resolution.
Workflows are a powerful way to componentize.
You’re trying to maximize efficiency, minimize your error margins, automate everything that’s remotely automatable and streamline all your processes — your answer to this chaos is workflows, and that’s what lies ahead, even when it comes to the cloud. With the inevitable increase in intensity of business, we’re all trying to innovate at an insane speed and scale, to make everything 10x better than the previous step. For cloud management, componentization is the innovation that’s been overdue.