Recently, I was the keynote speaker at the AppViewX digital event, “Simplify app delivery in 2021 “. While there were many subtopics for the event, the one I focused on is automation as I believe this is the most important capability for future application delivery.
The application delivery landscape is rapidly evolving from a vertically integrated hardware stack to a cloud-native set of capabilities. While this significantly increases agility, it raises the bar for complexity, driving the need for automation.
Distributed clouds: paradigm shift in the cloud
I used the first part of my speech to describe how the rise of distributed computing is changing application delivery. It is important to understand why distributed clouds are fundamentally different from any other computing model, including traditional cloud computing.
Looking back at local, hosted and cloud computing, while the financial model for these shifted from CAPEX to OPEX, the operating model did not, as they were all based on a centralized computing function. In this case, IT professionals would run workloads on a data center or in the cloud and front-end with an application delivery controller (ADC). If the location was the company’s own data center, the product of choice was a physical ADC. With the cloud, virtual ADCs were used.
With distributed computing, applications are created by accessing workloads or data from public clouds, private clouds, and edge location, giving rise to the concept of composability.
The applications are no longer vertically integrated stacks, but rather lightweight cloud-native services that are ‘composite’, increasing business speed and agility. With distributed clouds, the main computing unit evolves from a virtual machine to a container, which is ephemeral in nature. Containers can be activated, run for a few minutes, and then deprecated just as quickly.
Legacy Application Delivery – Too Slow for Distributed Clouds
The problem with traditional application delivery is that even a virtual ADC can take hours to load – far too long for cloud-native systems. This is driving the evolution of ADCs into a number of new form factors, such as a set of containerized services or even API-level ADCs where functions can be called by an application when needed. Now ADC functions can be activated when a container requires it.
But how is this going to be managed? With cloud-native systems and distributed computing, events happen too quickly for people to manage application delivery. This is the role that automation plays, eventually leading to an AIOps model where artificial intelligence is used to make decisions about what changes are needed and when.
For IT professionals, it’s important to evolve their thinking about automation from being task-oriented to intent-based. While it’s true, IT automation has been around for some time, the effectiveness of automation frameworks like Puppet, Chef, and even Python is limited. In this case, these tools are used to automate specific tasks and this works well on static systems. Task automation will not work in highly dynamic environments because the scripts would have to be constantly updated.
AI-Based Automation – Required for Cloud Native
Automation must evolve towards a closed loop model based on AI, where the intent of the rules is continuously analyzed and applied. This allows for true contactless automation as the machines will run the network.
A couple of years ago, IT professionals often scoffed at the idea of fully autonomous IT operations, but that attitude has changed. I recently conducted an AIOps study and found that 97% of respondents would rely on AI to run their IT environments and 99% believe AI is important for managing application and cloud performance.
During the panel I did at the event, one of the topics we discussed was using automation to implement zero trust and this is a perfect use case for AIOPs. With zero confidence, policies are created to allow specific devices or workloads to connect to others only when explicitly allowed.
Task-based automation would suffice in a static environment, as policies could be configured once and then applied. In dynamic environments, such as a distributed cloud, where workloads are constantly being created and then shut down, people cannot update zero-trust policies quickly enough to comply, but machines can.
IT is at a tipping point where we are evolving from centralized clouds to distributed clouds and this will allow companies to digitally transform faster than ever. While this is happening, IT professionals must embrace closed-loop automation for application delivery. This will ensure that the correct ADC services are implemented according to business policy, without having to introduce the long lead times created by manual operations.