Advanced Kubernetes
Kubernetes provides a way to dynamically modify your deployment during runtime. This is especially important if your application is already running in production and you need to support zero-downtime deployments. First, let's look at how to scale up an application and then present the general approach Kubernetes takes on any deployment changes.
Scaling an application
Let's imagine that our Calculator application is getting popular. People have started using it and the traffic is so high that the three Pod replicas are overloaded. What can we do now?
Luckily, kubectl
provides a simple way to scale up and down deployments using the scale
keyword. Let's scale our Calculator deployment to 5
instances:
$ kubectl scale --replicas 5 deployment calculator-deployment
That's it, our application is now scaled up:
$ kubectl get pods NAME ...