With CloudShell Colony you can take your software from the final stage of testing to live production with high velocity and safety. This is made possible by implementing a blue/green deployment technique.
With blue/green deployment you handle two separate, but identical, environments:
- Blue - which is your current live production environment. All user traffic is handled by this environment.
- Green - which is your pre-production environment, containing the latest verified code, updated and ready to be pushed to production.
The two environments are connected to a load balancer which manages the distribution of incoming traffic between the environments. The load balancer and the green environment are each assigned with a distinct URL (either using subdomains or two separate hostnames).
As you prepare to push the new release of your software you deploy your green environment and run the final testing on it without exposing it to incoming traffic.
Once all testing has successfully completed in the green environment, you are ready to expose the green environment to user traffic switching it gradually from the blue to the green environment. You can define the exposure rate, according to which the traffic will be shifted, moving from 0% to 100%.
The URL of the load balancer (the domain of your production environment) will redirect users to either the blue or the green environment, according to the defined exposure rate.
One of the advantages of blue/green deployment is that as long as both environments are live you can carefully monitor the new green environment and in case any unexpected issues come up you can quickly switch the traffic back to the old blue environment, fix the issues and start the same process by deploying a fresh green environment.
Once 100% of the traffic is handled by the green environment and you verified that the green environment is working perfectly, you are ready to update the URL of the load balancer to redirect users to the green environment, making green the new blue. Since the old blue is no longer needed, it is torn down in order to save unnecessary cloud expenses.