Tuesday, March 6, 2018

What is Blue Green deployment or Red Black deployment ?

Recently you must have came across the words blue/green deployment or red/black deployment as netflix calls it.

we know Tomcat deployment or springboot deployment.

So is this blue/green deployment or red/black deployment?


A blue/green deployment is a change management strategy for releasing software code by Martin Fowler

This technique is not new to industry.

We need 2 prod environments. These two environments should be nearly identical

So now by convention, these are referred to as the blue and the green environments.


Only one of these environments is active and receiving production traffic at any one time




Initially after passing dev/qa tests, we deploy our release version on the Blue (internal) environment ,which is active prod environment which receives traffic.


When a new release is planned, it is deployed to the non-active environment i.e. Green

For blue-green deployments, the non-active environment functions as a final staging environment.

It mirrors the production environment very closely and can be used for final testing before deciding to push changes live.


Switch from Blue to Green using router. Now new version receives all production traffic


At this point, your previous software version is non-active, but still accessible. If your newly active deployment suffers from any serious issues, reverting to your previous version is as simple as modifying the routing mechanism again


Initially small organizations did not use this approch as its high on cost. But now they are adapting this approach due to cloud


No comments:

Post a Comment