Achieving True Infrastructure Agility with Red Hat OpenShift Virtualization
In the wake of VMware’s acquisition by Broadcom, businesses realize the downside of relying solely on one vendor for their infrastructure. In chats with over 30 clients using VMware, the recurring theme was their frustration with the 3x - 5x price increase with no value-add.
But they’re locked into those relationships because they built their environment in one place. This leaves firms at the mercy of their providers.
No one wants to feel trapped in a relationship with their infrastructure provider, forced to deal with exponential price increases or increased risk from disasters and security events. However, the flexibility to move between environments seamlessly hasn’t been possible.
Until recently.
Imagine an infrastructure that can adapt to any disruption by moving seamlessly between on-prem and cloud environments, giving you more freedom and resilience. With advancements in Kubernetes and supporting technology like Red Hat OpenShift Virtualization, businesses have all the tools they need to build a truly agile infrastructure.
Navigating Disruption: From Disaster Recovery to Security Breaches
Hyperscaling and moving your infrastructure from one availability zone to another within the same platform is not true infrastructure agility because you’re still bound to a single provider.
Recently, I was using a platform based on AWS that was suddenly very slow (almost non-functioning). I knew that the platform hosts almost all of its infrastructure on AWS. After checking, I confirmed that AWS had an issue. It wasn't just in the US-East or US-West. It was AWS as a whole. AT&T had an issue connecting with any AWS service.
What do you do if the entire connectivity of your infrastructure provider is not available? You have to fail over as part of your disaster recovery to an entirely different environment.
But how will you manage the differences between those environments? How will you run disaster recovery across them?
Companies married to a single cloud provider don't have a solution. They have to wait for the environment to come back online. Or, they have to rebuild everything in a different environment.
Data loss and time loss are guaranteed.
Avoiding Catastrophes with Infrastructure Agility
Imagine a security breach. AWS gets hacked. Everyone's account information is leaked.
Someone found a zero-day vulnerability in their hypervisor, and they're jumping from VM to VM inside AWS. If you have infrastructure agility, you simply turn off your VMs that are in AWS. Everything is already running in a different provider. You avert the security event.
If you have true infrastructure agility and your infrastructure goes down, you can move into a different environment. It’s a simple networking change.
If your infrastructure is not agile and there’s a breach, you deal with the downfall. Your team spends hours frantically rushing to get everything operational while evaluating the damage.
Redefining Infrastructure Agility with Kubernetes
Most companies are vendor-locked and hardware-locked. The closest they get to infrastructure agility is vMotion (where they can move from one piece of hardware to another), but that’s still dependent on one provider—one way of working.
However, under the hood of these hyperscalers, they’re not based on VMware. They’re based on custom technology that’s hard to identify because it’s abstracted far away from you. Because of this, there’s no unified way to manage operations between all these different environments.
Finding a solution requires out-of-the-box thinking, which is not easy (see the 9-Dot Problem).
Tech leaders only know what they’ve used over the years. They’re so stressed trying to keep the lights on that it’s impossible to be creative. Add to all that, they’re also not being incentivized to solve problems differently.
If you’re underwater, trying to keep the ship afloat, you don’t have the time to look at the problem from a different perspective and ask, “Is there a better way?”
To make this worse, you need the time and skills to assess the entire range of tools available.
Building Toward a Precepice
We’ve been building to a precipice (a singularity) with all of these new, developing technologies to manage our infrastructure better.
The goal has always been to create a truly fluid environment that can move between systems, regardless of tech, empowering the business through a robust and resilient environment.
That is what infrastructure agility is. And Kubernetes makes it possible.
With Kubernetes, you no longer have to be married to a specific infrastructure implementation. Instead, your environment can shift through various environments—unimpeded—based on your needs. It is true freedom.
Phasing Through Technological Constraints With Kubernetes
Kubernetes can live everywhere.
The least common denominator for every major orchestration platform (HyperV, KVM, VMware, or ProxMox) is the operating system. If you can run an operating system in any of these environments, you can run Kubernetes in any of these environments.
Chances are, you’ve seen EKS, AKS, or GKE across various cloud providers.
So, how does that make you more agile?
If you build your infrastructure on containerization (not married cloud-based services or different infrastructure-based services), you can build your entire tool stack:
- How you do continuous integration and delivery
- How you do automated deployments
- How you do network topology mapping
- How you do storage
All the things that make a software-defined data center become the same in every ecosystem because you’re not married to your current environment.
Instead, you’re married to Kubernetes. And Kubernetes is the same everywhere.
There are minute differences, such as the software-defined network you use. However, that’s abstracted away from you. As an end-user, you have a software-defined network and DNS. You interact the same way, whether in Azure, AWS, or on-premises. It doesn’t matter.
Additionally, Kubernetes offers virtualization as a function of Kubernetes under Kubevirt. It takes a KVM instance (a Linux-based virtualization), and puts it into a pod, the same construct used for containers in Kubernetes.
This means the virtual machine can leverage all the same constructs as a container. It has the same software-defined networking and storage, DNS, and service discovery capabilities.
In short, all of the infrastructure requirements embedded in your infrastructure provider become abstracted away and available to you in Kubernetes for both virtual machines and containers.
You can run bare metal operating systems inside major cloud providers (such as AWS), with more coming soon. This means you can use OpenShift Virtualization or Kubernetes Virtualization natively in any cloud provider. Your virtualization layer will be the same everywhere.
In other words, it’s the same infrastructure.
You’re building your infrastructure in Kubernetes and integrating the various Kubernetes environments—not provider environments, which gives you more flexibility.
Which Technology Updates Have Made Infrastructure Agility Possible?
Three years ago, Kubernetes virtualization was not as developed as it is now. It didn’t have a lot of the features you would find in traditional VMs.
It was also more complicated to set up and manage overlay networks. You had to link service mesh providers.
And while there was software-defined storage replication between clusters, it was time-intensive and difficult to configure.
All of these features hadn’t been battle-tested.
Networking is easier now. With Skupper, Red Hat Service Interconnect, or KubeSlice, you can run a service network overlay between different Kubernetes clusters. This allows you to run services inside a Kubernetes cluster in one environment (on-prem) and automatically connect and discover services in another (AWS or Azure).
You can also set up abstraction layers with Kubernetes for software-defined storage, allowing you to use tools like Portworx to create a shared storage system across multiple Kubernetes clusters. This gives you the unique ability to synchronously replicate (real-time) between two separate clusters thereby enabling true hot-hot failover.
This is infrastructure provider agility. You’re no longer married to a single environment. You can shift between environments with ease.
Red Hat OpenShift Virtualization Drives Infrastructure Agility
OpenShift Virtualization is the most robust virtualization platform on Kubernetes that can reliably support this type of agile infrastructure.
OpenShift, as a Kubernetes provider, already supported infrastructure agility for containers. But you don’t always need containers. People avoided Kubernetes because they thought, “It's just containers. I need support with virtual machines, too.”
OpenShift Virtualization goes beyond containers, supporting virtual machines. It offers the same benefits for virtual machines that it provides to containers—software-defined networking, storage, DNS, and service discovery.
Previously, you had to use a myriad of complex ways to do this. With these accessible capabilities, OpenShift Virt keeps you from being tied to the underlying infrastructure provider or limiting you to containers.
Everyone can be infrastructure agile.
Roadblocks to Infrastructure Agility
The biggest challenge to achieving infrastructure agility is a lack of awareness of what’s possible with Kubernetes. This makes it difficult to know where to start.
If technology leaders are aware of infrastructure agility, they’ve already invested in their infrastructure with no plans of leaving. That works until a new leader comes in and decides the cloud platform is a direct competitor and the organization needs to move.
There is also the belief that current cost-savings and improvements will be ongoing. The truth is that while cloud-native tools may save you more right now, there is no guarantee. We’re seeing this with price increases on VMware and other technology platforms.
People also perceive Kubernetes as more difficult. In reality, it’s different. Different is scary for teams because it’s unknown and takes time to learn. Fortunately, huge leaps have been made to make Kubernetes more accessible.
Infrastructure Agility Provides True Freedom
This is a prime moment. People are looking to switch off solutions like VMware or stay. But instead of looking to replace VMs, they should ask, “Is there a different solution that will provide capabilities we don’t have and isn’t possible with our existing environment?”
At the same time, we’re seeing more technology providers adding features to facilitate infrastructure agility.
They’re shining a light on the art of possible, opening the door for more businesses to avoid being married to a single provider.
---
About the author
Derrick Sutherland - Chief Architect at Shadow-Soft
Derrick is a T-shaped technologist who can think broadly and deeply simultaneously. He holds a master's degree in cyber security, develops applications in multiple languages, and is a Kubernetes expert.