Around 2010’s Virtual Machine’s or VM’s were the state-of-art in the Industry and used for most of the purposes, Container Technology was released that is Docker which made a huge impact on the Industry Use-Cases. With the help of Container Technology, the company’s cost to maintain the resources reduced and they can launch multiple different O.S. on the same machine as resources of the Bare-Metal is shared among different containers and they could be left running in the background and other work could be completed. Even though Docker helps the Industry and turn the Industry Upside-Down (in a way) like running multiple O.S., Easy to Install, Less Time Consuming and many more but there were few limitations with the Docker also but still Docker is been used till now, the limitation was Docker could not auto-scale, no GUI available so a little difficult to understand. Due to this Kubernetes was released in around 2015.
Kubernetes is an open-source container orchestration engine for automating deployment, scaling, and management of containerized applications. The open-source project is hosted by the Cloud Native Computing Foundation (CNCF). Kubernetes provide a framework to run distributed systems resiliently that is it will take care of scale-up, scale-down, launch another container if one fails, load balancing and so on. There are many companies who uses Kubernetes (see the pic below). Before knowing how some of the companies uses Kubernetes for themselves, Let’s know some of the Kubernetes Vocabulary moreover before that see the pic attached to see the difference between Docker Swarm (one of the Docker Service) and Kubernetes.
Kubernetes Basic Vocab :
A node is a worker machine on Kubernetes. It is a Virtual Machine or a physical machine based on the cluster. The master maintains the code, and each node contains the necessary components required to run the Kubernetes cluster. Since Kubernets works on a Distributed System Structure so we have two types of Nodes : Master and Slave.
Cluster is made up of both master and slave. Kubernetes works on the cluster rather than the individual node. There can be more than one Kubernetes Cluster.
Kubernetes is (somewhat we can say) created on top of Docker so basic knowledge of container is useful. Containers are self-contained environments where applications are executed. We generally use one container for one application.
Kubernetes pod is a group of containers deployed together on the same host. These groups of containers work together to operate for a single process.
A deployment is a set of identical pods. It runs multiple replicas of the application, and if in case an instance fails, deployment replaces those instances.
Companies using Kubernetes
As you have seen above there are many companies that uses kubernetes in their organizations. In this article, I will tell about few of them. Let’s see:
It is the world’s first visual discovery engine. There mission is to help users discover and do things they love. Today they have almost around 250 million active monthly users and they are serving over 10 billion recommendations every single day. Pinterest have been on the cloud from the starting and as the company grew they have to remove the overheads of the virtual machines and thus they start using Kubernetes. With the help of Kubernetes they are able to deploy there services in minutes time that would normally take hours and sometimes days.
“So far it’s been good, especially the elasticity around how we can configure our Jenkins workloads on that Kubernetes shared cluster. That is the win we were pushing for.” — MICHEAL BENEDICT, PRODUCT MANAGER FOR THE CLOUD AND THE DATA INFRASTRUCTURE GROUP AT PINTEREST
At the beginning of 2018, the team began onboarding its first use case into the Kubernetes system: Jenkins workloads. They ramped up the cluster, and working with a team of four people, got the Jenkins Kubernetes cluster ready for production. By the end of 2018 Q1, the company was able to move the Jenkins to the Kubernetes and collaborated on a Jenkins-Kubernetes Plugin to manage the lifecycle of workers. Overall, by moving to Kubernetes the team was able to build on-demand scaling and new failover policies, in addition to simplifying the overall deployment and management of a complicated piece of infrastructure such as Jenkins. After successfully deploying the Jenkins on the Kubernetes, the company trying to deploy TenserFlow and Apache Spark over the kubernetes.
Bose Corporation is an American Manufacturing Company that predominantly sells Audio Equipments. From the begining the team wanted a microservices and firstly they decided to build the structure from the scratch but after evaluating and prototyping different orchestrations, the team decided to use Kubernetes which they integrated with IoT platform-as-a-service of AWS. The impact of using Kubernetes is that the platform is now enabling 30,000 non-production deployments across dozens of microservices per year.
“At Bose we’re building an IoT platform that has enabled our physical products. If it weren’t for Kubernetes and the rest of the CNCF projects being free open source software with such a strong community, we would never have achieved scale, or even gotten to launch on schedule.” — JOSH WEST, LEAD CLOUD ENGINEER, BOSE
At Bose, the team wants to automate as much as possible and they want a solution which will be for a long time rather than for the time being and so they chooses Kubernetes over Docker Swarm or any other. Today, just one of Bose’s production clusters holds 1,800 namespaces/discrete services and 340 nodes. With about 100 engineers now onboarded, the platform infrastructure is now enabling 30,000 non-production deployments across dozens of microservices per year. In 2018, there were 1250+ production deployments.
The biggest advantage of Kubernetes over other platforms is:
Due in part to its portability, Kubernetes can host workloads running on a single cloud as well as workloads that are spread across multiple clouds. In addition, Kubernetes can easily scale its environment from one cloud to another.
Over the past decade the Kubernetes is almost part of every community running over Cloud even though we have Red-Hat OpenShift in the market but Kubernetes will remain in use for a long time in future.
Thank You for Reading. Hope you find it useful that how Kubernetes is being used in the Industry and Why it is being used.
Thank You 🙂