The core problem: How to update a live application
When you’ve deployed your application to a Kubernetes cluster, the journey doesn’t end there. Development is an ongoing process that involves fixing bugs, adding new features, and responding to user needs. So, how do you deploy these changes to your cluster? While we’ve already reviewed the basic deployment processes available in Kubernetes out of the box, such as recreating and rolling updates, it’s essential to explore the other deployment strategies available on the market that can be implemented in Kubernetes.
The simplest (but riskiest): The Recreate deployments strategy
This is the simplest strategy. Here, when a new version is ready, the old version is stopped and removed, and the new one is deployed. This straightforward approach, however, involves downtime. During deployment, the application is unavailable. If a rollback is needed, we must repeat the procedure, resulting in further downtime...