What is Kubernetes?
Kubernetes is an open source solution for container orchestration, initially released by Google in 2014 and later transferred to the Cloud Native Computing Foundation (CNCF). It allows you to deploy, scale, and manage container-based applications in an automated, declarative way.
In the Distributing the application as a monolith versus a microservice section in Chapter 11, Quarkus Integration, we went through the advantages and disadvantages of distributing our application as a monolith or as multiple microservices. We learned that when dealing with a distributed architecture, it’s advisable to rely on tools such as Kubernetes that help you automate and orchestrate the deployment and maintenance tasks for your services since there is a large number of them.
One of the main features of Kubernetes is that it abstracts away the underlying hardware infrastructure, providing a declarative interface to configure it. This allows you to define the requirements...