▶️ Frequently used deployment strategies

Photo by Alex Kotliarskyi

DevOps practices will regularly make use of deployments to manage application deployment, there are three popular deployment strategies .

Blue-Green deployment

  • from a high-level perspective this type of deployment consists of two identical environments in front of which is a load balancer that allows you to direct traffic to the appropriate environment.
Blue-green deployment

Canary deployment

  • deploying an application in small incremental steps to a small group of clients this is achieved by routing only some percentage of the traffic to the new application or by using a toggle feature (basically a snippet of code that serves to activate or deactivate a certain feature in a given code base)
Canary deployment

Ramped

  • also know as Rolling deployment which is the process of deploying the application by slowly replacing currently running instances of the application with newer ones as soon as they’re ready to receive traffic
Rolling update

The central component of a deployment strategy is the k8s object named deployment which is nothing more than a manifest that allows you to:

  • Deploy a replica set or pod
  • Update pods and replica sets
  • Rollback to previous deployment versions
  • Scale a deployment
  • Pause/Resume a deployment

There are many more deployment strategies but they key takeaway is that a well chosen deployment strategy will allow to change or upgrade an application with minimum amount of downtime.

Bibliography:

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store