By: Mohamad Rizk, Regional Director, Middle East & CIS at Veeam Software
Container use in enterprises is exploding across the globe. Kubernetes, the de facto platform for orchestrating containers today, is an open-source container orchestration platform that automates deploying, managing and scaling containerised applications. A Cloud Native Computing Foundation (CNCF) survey found that 92% of responding companies run containers in production, and 83% of those deployments use Kubernetes. The Middle East is not far behind! According to findings of the Veeam Data Protection Trends Report 2022, 69% of UAE organisations and 76% of Saudi Arabian organisations are already running containers in production, while 29% and 22% respectively plan to do so in the next 12 months.
Why Containers and Kubernetes?
The advantages of a virtualised infrastructure are well documented. Greater workload mobility, availability of resources, automated operations and increased performance are all benefits of virtualisation that make IT simpler to manage and less costly to own and operate. Containers are a lighter-weight, more agile way of handling virtualisation. Without the need of a hypervisor, organisations leveraging containers can enjoy faster resource provisioning and speedier availability of new applications. Instead of dedicating one operating system for each application, multiple applications can run independently from each other on the same operating system, which means less hardware and licenses and reduced load on servers.
Containers and Kubernetes have greatly simplified operations for DevOps teams. Previously, to create a virtual machine or to provision a physical server, developers needed to talk to a number of different units including the infrastructure team, backup administrators and network administrators. With containers and Kubernetes, that workflow is not needed anymore. Developers have become the A-team and are responsible for everything. The infrastructure team is still required to provision physical servers and put in the layer of Kubernetes and hypervisors, but they are no longer needed to create new applications, or the resources needed for the applications. All this means that companies can go to market with new applications and technologies, internally or externally, much faster. The provisioning phase of any application – the testing and moving it from development stage to production stage – now takes place in a very short time.
Also, with app deployments accelerating, very often companies experience huge server workloads. For high availability, Kubernetes can shift from one cluster or one node or one server to another very easily, thus making processing faster and more efficient. It optimises the response time and evenly distributes tasks to avoid overloading compute nodes. Kubernetes can load balance by creating more microservices and containers to serve the excess load. When the load scales down, those containers are deleted.
In simple terms, what Kubernetes has done, is to decouple the application from the data and the underlying infrastructure. The repeatable service and repeatable function become an independent piece of code that can be replicated to any number of servers, to any infrastructure or to any site, that would give organisations and their customers much more agility, resiliency and a much faster go-to-market. Kubernetes enables organisations to create self-healing, high available applications.
Kubernetes in the Middle East
Enterprises that we talk to in the Middle East have a good understanding of Kubernetes. It’s not just a buzzword – like in the early days of Cloud, companies were using the term ‘Cloud’ quite loosely by saying that they were moving to Private Cloud or Public Cloud, when most of the time they meant, they were going to virtualise their environment. With Kubernetes, however, regional enterprises now have skilled teams in place (skillsets are quite unique in this space) and because it is controlled by developers and not infrastructure teams, there is a much better and deeper understanding which ultimately leads to high quality deployments.
In Saudi Arabia, which is the biggest IT market in the region, government agencies are the leading adopters of Kubernetes technologies, followed by banks and financial institutions. Typically, these organisations have a large number of users of digital services. The reasons for high adoption rates are clear.
Government entities providing public services are unable to predict the number of users that will be accessing their services. If they decide to go with a traditional IT model of physical infrastructure and virtualisation and estimate that a maximum of 50,000 users would access their systems, then they would need to pay upfront for an infrastructure that can accommodate all these users, involving an undesirably high CAPEX. With Kubernetes, as explained earlier, because services and applications are decoupled from the data and the operating system, those services can scale up and down easily and the customer doesn’t need to make a huge upfront investment to have dedicated physical servers for each application or service or each operating system. The self-healing aspect of a Kubernetes environment is another big advantage. Any microservice or replica of a microservice that is not running properly can be restarted easily without affecting the overall service. Self-healing translates to better uptime in terms of the availability of the service to customers and end users.
The competitive nature of the banking and financial industry is a big driver for Kubernetes adoption. Banks are constantly trying to be the first-to-market when it comes to innovative applications and services. Kubernetes short circuits the laborious app provisioning cycle, making it quick and easy to spin-up apps.
Protecting Kubernetes Environments
There is no doubt that the attack surface is growing as more companies adopt containers and do their orchestration using Kubernetes. The complexity that early adopters are finding is the lack of data management and data integrity when it comes to protecting Kubernetes and container workloads. Kubernetes and containers are often compared to virtual machines, but it is a very different approach. It is very much focused on a different persona. The person that looks after the lifecycle of containers in a Kubernetes environment is not your traditional operations infrastructure admin. They are focused on the application and have more of a DevOps function, but also understand the platform where the application lives. Bringing the infrastructure or platform closer to the application carries its own benefits anyway. But this same approach means that data integrity has to be looked at differently than how we approach virtual machine backup. Kubernetes environments require an application-centric approach over an infrastructure focus. This is why regional enterprises need to look at modern data protection technologies that work against a wide range of Kubernetes application stacks and deployment methods, like Kasten K10 by Veeam for example, that completes that ability to protect these new cloud-native workloads.