How Industries are using Kubernetes? Use cases solved by Kubernetes
How Industries are using Kubernetes? Use cases solved by Kubernetes

How Industries are using Kubernetes? Use cases solved by Kubernetes

Hey Guys ..!!

Today I have written a new article. In this article, you will know about How Industries are using Kubernetes? Use cases solved by Kubernetes

What is Kubernetes?

Kubernetes (K8s) is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery.

Kubernetes is a container orchestration system developed by Google. Kubernetes is designed to effectively solve many of the issues we outlined earlier.

Kubernetes is an open-source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.

Kubernetes can run containerized applications of any scale without any downtime.

Kubernetes can self-heal containerized applications, making them resilient to unexpected failures.

Kubernetes can auto-scale containerized applications as per the workload, and ensure optimal utilization of cloud resources.

Kubernetes greatly simplifies the process of deployment operations. With Kubernetes, however, complex an operation is, it could be performed reliably by executing a couple of commands, at most.

Although Kubernetes was initially designed by Google, it is now maintained by the Cloud Native Computing Foundation (CNCF) an open-source software foundation dedicated to making cloud native computing universal and sustainable. Since Kubernetes initial release, the open-source community has been contributing heavily to its growth; adding new features and making Kubernetes more robust and efficient.

Knowledge of Kubernetes is an indispensable tool for anyone tasked with designing an application, as per modern requirements. But before we dive deep into Kubernetes, let’s take a look at things like what one could expect from Kubernetes, and when we should choose to use it. We’ll also look at a few alternatives to Kubernetes, and how these differ.


Why Kubernetes?

The Docker adoption is still growing exponentially as more and more companies have started using it in production. It is important to use an orchestration platform to scale and manage your containers. 

No alt text provided for this image

Imagine a situation where you have been using Docker for a little while, and have deployed on a few different servers. Your application starts getting massive traffic, and you need to scale up fast; how will you go from 3 servers to 40 servers that you may require? And how will you decide which container should go where? How would you monitor all these containers and make sure they are restarted if they die? This is where Kubernetes comes in. 


What Problems Does Kubernetes Aim to Solve?

Kubernetes provides a container-centric management environment. It orchestrates computing, networking, and storage infrastructure on behalf of the user. It eliminates the need for direct manual orchestration in a cluster and automates the orchestration process so that the applications are highly available and compute resources are optimally utilized.


Service discovery and load balancing:- 

You have an application comprising of hundreds of Microservices, and they need to efficiently and reliably communicate with each other. Kubernetes can take care of that.

Horizontal scaling:- 

The workload on your application is known to surge abruptly. Scaling up the replicas of service will balance your workload. Scaling it down after the surge keeps your costs low. Kubernetes can do that for you (auto scale).

Self-healing:- 

 Whenever one of the hundreds of services goes down due to a fatal error, you’ll want to automatically instantiate a new, healthy replica of this service. Kubernetes can do this for you (self-healing).

Automated rollouts and rollbacks:- 

Kubernetes can take care of deployment operations like the rollout of a new version of the application, and the rollback to a previous version. All of these operations can be performed reliably just by executing a couple of commands from a command line.

Secret and configuration management:- 

Kubernetes provides built-in mechanisms to effectively store and manage configuration (like environmental variables, database connections) across different environments (eg: production, test, development). It also allows for storing sensitive configuration data, meant to be kept secret in a special manner, so that accidental exposure of such data is minimized.

Storage orchestration:- 

Kubernetes allows for effective management of storage required by an application. In Kubernetes, storage management is separated into multiple steps. The allocated storage is first configured, then a claim is made whenever an application in the cluster requires this storage. Kubernetes provides excellent integration with various storage solutions supported by cloud providers.


Kubernetes Use Cases 

1. Tinder’s Move to Kubernetes

No alt text provided for this image

Credits: Tinder

Due to high traffic volume, Tinder’s engineering team faced challenges of scale and stability. What did they do? The answer is, of course, Kubernetes.

Tinder’s engineering team solved interesting challenges to migrate 200 services and run a Kubernetes cluster at scale totaling 1,000 nodes, 15,000 pods, and 48,000 running containers.

Was that easy? No way. However, they had to do it for the smooth business operations going further. One of their engineering leaders said, “As we onboarded more and more services to Kubernetes, we found ourselves running a DNS service that was answering 250,000 requests per second.” Tinder’s entire engineering organization now has knowledge and experience on how to containerize and deploy their applications on Kubernetes.


2. Reddit’s Kubernetes Story

Credits: Reddit

Reddit is one of the busiest sites in the world. Kubernetes forms the core of Reddit’s internal infrastructure. For many years, the Reddit infrastructure team followed traditional ways of provisioning and configuring. However, this didn’t go far until they saw some huge drawbacks and failures happening while doing things the old way. They moved to Kubernetes.

 

3. The New York Times's Journey to Kubernetes

No alt text provided for this image

Credits: The New York Times

Today the majority of the NYT's customer-facing applications are running on Kubernetes. What an amazing story. The biggest impact has been an increase in the speed of deployment and productivity. Legacy deployments that took up to 45 minutes are now pushed in just a few. It’s also given developers more freedom and fewer bottlenecks. The New York Times has gone from a ticket-based system for requesting resources and weekly deploy schedules to allowing developers to push updates independently.


4. Airbnb’s Kubernetes Story

Credits: Slides by Melanie Cebula at QCon London 2019

Airbnb’s transition from a monolithic to a microservices architecture is pretty amazing. They needed to scale continuous delivery horizontally, and the goal was to make continuous delivery available to the company’s 1,000 or so engineers so they could add new services. Airbnb adopted Kubernetes to support over 1,000 engineers concurrently configuring and deploying over 250 critical services to Kubernetes (at a frequency of about 500 deploys per day on average).


5. Pinterest’s Kubernetes Story

Image credits: Pinterest

With over 250 million monthly active users and serving over 10 billion recommendations every single day, the engineers at Pinterest knew these numbers are going to grow day by day, and they began to realize the pain of scalability and performance issues.

Their initial strategy was to move their workload from EC2 instances to Docker containers; they first moved their services to Docker to free up engineering time spent on Puppet and to have an immutable infrastructure.

The next strategy was to move to Kubernetes. 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.


6. Pokemon Go’s Kubernetes Story

Image credits:  iThome

How was Pokemon Go able to scale so efficiently became so successful? The answer is Kubernetes. Pokemon Go was developed and published by Niantic Inc. and grew to 500+ million downloads and 20+ million daily active users.

Pokemon Go engineers never thought their user base would increase exponentially to surpass expectations within a short time. They were not ready for it, and the servers couldn’t handle this much traffic.

Pokemon Go also faced a severe challenge when it came to vertical and horizontal scaling because of the real-time activity by millions of users worldwide. Niantic was not prepared for this.

The solution was in the magic of containers. The application logic for the game ran on Google Container Engine (GKE) powered by the open-source Kubernetes project. Niantic chose GKE for its ability to orchestrate their container cluster at a planetary-scale, freeing its team to focus on deploying live changes for their players. In this way, Niantic used Google Cloud to turn Pokémon GO into service for millions of players, continuously adapting and improving. This gave them more time to concentrate on building the game’s application logic and new features rather than worrying about the scaling part.

→ Follow me on Linkedin for more Article’s on Research based and integration of new tools and technologies.

In Upcoming days , I will be sharing many article’s on Integrating multiple tools and technologies like Cloud Computing, DevOps, Big Data Hadoop, Machine Learning etc..


Further Query or Suggestion’s Feel Free to Connect with me On Linkedin.

I Hope you have learn something new from this article


If you like it then Like & Share ...

Thank you EveryOne For reading ..!!!

要查看或添加评论,请登录

Devendra Kanade的更多文章

社区洞察

其他会员也浏览了