Before we learn about the use cases of Kubernetes, let us first understand what Kubernetes is; where and why is it used?
I would begin by talking about containers. I am sure many of you might have discovered this word before. So, let us review a few concepts.
When developers write an application, they write it in their development environment that has all the dependencies and libraries the application needs to run correctly. It is often the case that the development and production environments are different. Thus, developers felt the need of making the production and deployment of these applications in varying environments easier. It was then that ‘containers’ came into the picture.
In simple terms, a container indicates a box that carries some load. Similarly, a container in the technological world can be thought of as a box that encapsulates an application — often a single executable service or micro service — along with its libraries, frameworks, and other components. In the production of an application, that container can be run on any computer that has a containerization platform.
After understanding containers, let’s try to analyze where Kubernetes fits in our discussion.
In practice, a containerized application consists of several containers, each running the same or different micro services. The question now is, how do we coordinate and schedule these containers? How can we upgrade an application without any interruption of service? How do we monitor the health of an application? How can we scale the application, or how do we run a different container when one fails to meet requirements?
The answer to all of these questions is ‘Kubernetes’!
Kubernetes is a tool that can handle a large volume of containers and track interactions between containers and users. It is easier to automate and scale container-based workloads for live production environments with Kubernetes.
Here are some amazing success stories of Kubernetes.
Pinterest which has more than 250 million monthly active users and can serve over 10 billion recommendations each day is because of using Kubernetes. Pinterest had its workload supported on EC2 instances in the cloud earlier. But with time, their users and services grew in number which ultimately brought them into the realm of containerization technology backed by the powerful container orchestration technology, Kubernetes.
Initially, they moved their workload from EC2 instances to Docker containers and then took the next step towards Kubernetes, to effectively manage and scale their containerized application. Now they can take ideas from ideation to production in a matter of minutes, whereas earlier they used to take hours or even days. They have cut down so much overhead cost by utilizing Kubernetes and have removed a lot of manual work without making engineers worry about the underlying infrastructure.
Pinterest is one among the many businesses like Spotify, Tinder, Airbnb to have benefited from Kubernetes. Out of all the uncertainties in the world today, one thing is certain that the scope of Kubernetes is to increase in the coming years.
Thank you for reading till here. I hope you found this article informative and interesting.