Member-only story

How to have “Zero-downtime” of your services — Deployment using Kubernetes

Nikhil Verma
5 min readApr 14, 2020

Deploying Model-As-A-Service and then managing it via Supervisor and Nginx was one of the way to deploy your model with zero-downtime. In the same, Supervisor is responsible for automatically running computer programs(service) in priority defined basis and Nginx is responsible for load balancing in either round-robin or FCFS manner, that takes care of the equally distributing load of work to all services running on a server.

Every user request is handled with no-delay due to Load balancer

But do you know there is way of deploying your services with multiple replicas, load balancing them and making sure of Zero/No-downtime; which we are going to explore in this post using an orchestration system known as Kubernetes. Lets explore.

Kubernetes

It is an open-source system for automating deployment, scaling and management of containerized applications.

We know that docker has solved the problem of packaging, deploying and running containerized applications that uses concept of :-

  1. Control groups
  2. Namespaces

Docker is great for running few containers on few machines. But what if a docker container dies due to some OOM error or else. Our application just vanishes and we need to manually run the container again. We know today is the…

--

--

Nikhil Verma
Nikhil Verma

Written by Nikhil Verma

Knowledge shared is knowledge squared | My Portfolio https://lihkinverma.github.io/portfolio/ | My blogs are living document, updated as I receive comments

No responses yet