When it comes to technology for deploying applications, one name comes up quite often: Kubernetes.
Today, this technology lies at the heart of the infrastructure of many companies, from start-ups to large international organisations. But what exactly is Kubernetes, and what is it used for?
Kubernetes comes from Ancient Greek and means “captain” or “pilot”. It is the name given to a technology that enables a set of applications to be deployed and coordinated, much like a conductor leading an orchestra.
And in IT, things do not always go according to plan: servers can fail, internet connections can go down, and so on. This is why we need a tool capable of adapting to these unexpected events and ensuring that the service provided by an application can continue to operate without interruption. Kubernetes ticks all these boxes.
To achieve the desired result, this technology is installed across a group of servers. This is what we call a cluster.
To continue with our analogy, if Kubernetes is the conductor, the cluster represents the entire orchestra, the musicians, the instruments and so on.
Put simply, it is a group of servers working together as though they were a single machine.
Working as a group rather than individually offers many advantages: if one of these servers fails or becomes overloaded, the others immediately take over. For the end user, the service remains available and runs smoothly, as if nothing had happened.
As you will have gathered, Kubernetes ultimately acts as the “brain” that coordinates all these decisions and keeps an application up and running.
As infrastructure grows and more applications need to be deployed, a new challenge begins to emerge.
It is very rare to have just one Kubernetes cluster. Typically, there are several. This makes it possible, for example, to separate critical environments from non-critical ones, or simply to have clusters in different locations, whether in local data centres or in the cloud.
At Piguet Galland, we use a tool called Cluster API to deploy and maintain all these clusters.
Think of it as a control tower that enables us to deploy Kubernetes clusters wherever they are needed, while integrating all our security processes and managing the lifecycle of the underlying machines.
Relying on this layer of automation simplifies many aspects of the process: deployment times are significantly reduced, as is operational complexity.
Why? Because manual intervention is kept to a strict minimum, reducing the risk of errors.
Over time, Kubernetes has become the platform of choice for deploying applications within the bank.
We now want to take things even further, particularly by deploying databases or artificial intelligence models on Kubernetes, allowing us to broaden the range of needs that the platform can support.