šŸ’„Kubernetes and itā€™s Usecase šŸ’„

Anuja Kumari
4 min readSep 21, 2021

Hello Everyone šŸ™‹ā€ā™€ļø

In this blog Iā€™m explaining about what is Kubernetes and how does industries got benefited using Kubernetes.

šŸ”° What is Kubernetes?

Kubernetes is a tool for automation of Linux container operations. In short we can make cluster of containers and then Kubernetes can manage them together. Kubernetes automates the manual processes involved in deploying, managing and scaling containerized applications.

It was originally designed byĀ GoogleĀ and is now maintained by theĀ Cloud Native Computing Foundation.Ā It aims to provide a ā€œplatform for automating deployment, scaling, and operations of application containers across clusters of hostsā€. It works with a range of container tools and runs containers in a cluster, often with images built using Docker. Kubernetes originally interfaced with the Docker runtime through a ā€œDockershimā€; however, the shim as since been deprecated in favor of directly interfacing with containerd or another CRI-compliant runtime.

šŸ”° What is Kubernetes used for?

When there is a need to do same operations in multiple containers together we can used Kubernetes to group them together and it will manage to do all operations together in all containers.

šŸ”° Kubernetes ARCHITECTURE

Kubernetes defines a set of building blocks (ā€œprimitivesā€), which collectively provide mechanisms that deploy, maintain, and scale applications based on CPU, memory or custom metrics. Kubernetes is loosely coupled and extensible to meet different workloads. This extensibility is provided in large part by the Kubernetes API, which is used by internal components as well as extensions and containers that run on Kubernetes. The platform exerts its control over compute and storage resources by defining resources as Objects, which can then be managed as such. Kubernetes follows the primary/replica architecture. The components of Kubernetes can be divided into those that manage an individual node and those that are part of the control plane.

šŸ”° Kubernetes Features

šŸ”° PINTEREST Case Study šŸ¤©

Pinterest is an American image sharing and social media service designed to enable saving and discovery of information on the internet using images and, on a smaller scale, animated GIFs and videos, in the form of pinboards.

šŸ”° Challenge

After eight years in existence, Pinterest had grown into 1,000 microservices and multiple layers of infrastructure and diverse set-up tools and platforms. In 2016 the company launched a roadmap towards a new compute platform, led by the vision of creating the fastest path from an idea to production, without making engineers worry about the underlying infrastructure.

šŸ”° Solution

The first phase involved moving services to Docker containers. Once these services went into production in early 2017, the team began looking at orchestration to help create efficiencies and manage them in a decentralized way. After an evaluation of various solutions, Pinterest went with Kubernetes.

šŸ”° Impact

"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," says Micheal Benedict, Product Manager for the Cloud and the Data Infrastructure Group at Pinterest.

By the end of Q1 2018, the team successfully migrated Jenkins Master to run natively on Kubernetes and also collaborated on theĀ Jenkins Kubernetes PluginĀ to manage the lifecycle of workers. "Weā€™re currently building the entire Pinterest JVM stack (one of the larger monorepos at Pinterest which was recently bazelized) on this new cluster," says Benedict
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. We not only saw reduced build times but also huge efficiency wins. For instance, the team reclaimed over 80 percent of capacity during non-peak hours. As a result, the Jenkins Kubernetes cluster now uses 30 percent less instance-hours per-day when compared to the previous static cluster."

Thanks for ReadingĀ !! šŸ™ŒšŸ»šŸ˜šŸ“ƒ

šŸ”° Keep LearningĀ !! Keep SharingĀ šŸ”°

šŸ¤© Feel free to connect with me šŸ¤©

LinkedIn : https://www.linkedin.com/in/anuja-kumari-4a62581aa

GitHub : https://github.com/Anujakumari

--

--

Anuja Kumari

Learner @ Linuxworld Informative Pvt Ltd || DevOps(Docker,K8S, Jenkins, Terraform, Git and GitHub) || AWS || ( Python | Java )