This is a guest post for the Computer Weekly Developer Network written by Rob Tribe in his capacity as VP for systems engineering EMEA at Nutanix.
As an enterprise cloud organisation with a foundation in infrastructure management and intelligence, Nutanix has seen the shape of software automation in cloud (and now increasingly cloud-native) deployments play out and develop over the last couple of decades – using that background to provide a special kind of insight into what ‘cloud automatism’ will give us next.
Given the compounded complexities and idiomatic incongruous incompatibilities that many cloud engineers have to struggle with, Nutanix’s Tribe provides some reasoning to take forward and writes as follows…
The age of automation
Automation in the realm of software engineering manifests itself at various levels of complexity, power and scope. Specifically in the cloud computing space, we talk about cloud automation as the accelerating use of tools, services and functions all designed to remove the stress (and, very often, the system errors) caused by cloud engineers having to shoulder tedious and time-consuming manual processes.
Given that cloud is an always-on entity in the vast majority of IT stacks that it serves to underpin, managing the operational requirements for cloud workloads represents an extremely burdensome task.
If we consider the very recent (and still current) global disruptions that have forced IT teams to create, innovate, change, adapt and re-engineer, these types of innovations are far tougher to pull off if the team has to spend all its time (often 110% of its time with people simply pulling extra shifts) keeping the lights on.
There needs to be a more intelligent (and more automated) separation between valued-operations and high-value project innovation.
Cloud automation fundamentals
Using automation to build, create, deploy, monitor, extend and retire or decommission clouds, is an agnostic advantage i.e. these are processes that work across private on-premises, public and hybrid cloud instances in multi-cloud deployment zones, with some even straddling poly-cloud architectures.
But enough big picture contextualisation, what are these cloud automation fundamentals in specific terms? We are talking about services built to automate the steps needed to set up Virtual Machines (VM) clusters, tools to enable cloud engineers to create virtual networks, deploy cloud workloads and to provide controls capable of staying on top of availability and performance standards.
Each and every one of those actions can be performed by a human, but this (spoiler alert, the clue is in the name) inevitably introduces more potential for human error. This is obviously a bad thing in any context, but because cloud computing is so powerful and is often run at scale, the scale of potential system errors increases at the same rate, as does the possibility of security vulnerabilities being exposed.
Fixing these scenarios through troubleshooting is possible, but it’s expensive, takes time and it generally leads to system downtime, which is also expensive and time consuming – it’s not hard to create a vicious circle.
Encapsulation & automation
But if cloud is anything it is flexible, composable and inherently open to be codified. This means that cloud orchestration and cloud automation give us the ability to convert any process into a software-defined block of code that can be encapsulated, instantiated and above all automated to serve the IT teams needs and alleviate pressure.
There’s something of an epiphany moment once this point happens. Business teams find they can work with a more effective IT service where system errors are a rarity and innovative new service augmentations are a normality. In balance also, IT teams find they can reassign sysadmins to higher-level tasks where they don’t just keep the lights on – they’re more likely to be reengineering the next carbon-neutral lightbulb.
Analysts and industry commentators estimate that every penny invested in automation today, organisations should be able to reap a whole pound, dollar or Euro (roughly speaking) in return within a five-year period.
As we progress from this point of cloud automation silver linings, let’s remember where we started when we said that cloud was inherently powerful. This means that all cloud automation needs to adhere to policies governing compliance standards and other regulatory rulings – many of which will typically apply to the country of operation and to any nation states that any given organisation chooses to operate in.
The road to Infrastructure-as-Code
If this has been a story, a progression of realisation and a journey, then it brings organisations who travel this road to a point where they can comprehensively embrace the automation advantages that define Infrastructure-as-Code (IaC). This highly flexible state of operations enables an enterprise IT team to categorize and deploy compute resources into pools, which then lets users add and deploy more resources no matter where they live in the datacentre.
At this level, cloud automation enables a business to ‘pull’ common configuration items that work in the realm of the total cloud instance such as containers, storage Logical Unit Numbers (LUNs), VPNs or centrally important Virtual Machines (VMs) into use. The IT team is then able to depend upon cloud automation services to place application components onto configuration items.
With an interlaced ‘sandwich layer’ of cloud automation engineered to provide Application Performance Management (APM) and observability functions, teams will be able rely on cloud automations to handle extended tasks such as auto-scaling, adding clusters, removing container instances and other features to ration or improve resource consumption when needed.
The end result is an automated, unified, software-defined, workload-managed, intelligently orchestrated and eminently deploy-able (and retire-able) cloud environment.
Cloud really does have a silver lining, but it should be no surprise to find out that it’s a digital one. Grab your sunglasses, the future is bright.