Popular Articles

The XebiaLabs DevOps Platform provides visibility and synchronizes data across the CI/CD pipeline by connecting issue tracking and ITSM ticketing tools, so that user stories and change tickets are always up to date.

The “Take Release Automation to the Next Level” series gives you insights into the benefits and challenges surrounding DevOps deployment patterns. In this series, we’ll look at how different patterns work, the advantages and disadvantages of each one, considerations for implementing them, and best practices when applying them.

As DevOps teams mature beyond their first initiatives to automate software build, test, deploy, and release activities, advanced deployment patterns provide a flexible structure that they can use to speed up the software delivery cycle while maintaining control over the way applications are deployed.

One popular deployment pattern is blue/green deployment. In this pattern, a load balancer directs traffic to the active (blue) environment while you upgrade the standby (green) environment. After smoke testing the application in the green environment and establishing that it is operating correctly, you adjust the load balancer to direct traffic from the blue environment to the green environment.

Advantages of Blue/Green Deployments

The blue/green deployment pattern provides a safe way to upgrade applications without interrupting their use. Blue/green deployments work particularly well for monolithic applications that can take significant time to deploy, because you have full control over the point at which users can access the new version of the software.

Disadvantages of Blue/Green Deployments

Adopting the blue/green deployment pattern can increase operational overhead because you have to maintain duplicate Production environments with identical infrastructure. Additionally, updating database schemas while following a blue/green approach requires caution, as the new version of the application cannot use the database until it has been upgraded.

Rolling Back a Blue/Green Deployment

Blue/green deployments offer fast and straightforward rollbacks. If the transition to the green environment fails, or if something goes wrong once the green environment is in active use, you simply adjust the load balancer to direct traffic back to the blue environment.

Adopt Blue/Green Deployments with the XebiaLabs DevOps Platform

To adopt the blue/green deployment pattern in a way that can scale across teams, projects, applications, and environments, you must ensure that the full, end-to-end deployment flow is automated: from managing user traffic, to deploying and smoke testing the application, to handling failures in the process. The XebiaLabs DevOps Platform makes it easy to apply the blue/green pattern to your deployments consistently, without requiring you to design or script the deployment flow for every application and environment. With XebiaLabs, you can safely upgrade applications without inconveniencing users. And XebiaLabs’ support for automated rollback, you can quickly revert application versions without risk.

This white paper gives you insights into the DevOps best practice of advanced deployment patterns. It describes how each pattern works, the advantages and disadvantages of each one, considerations for implementing them, and best practices when applying them. Read more.

Hes Siemelink is a Senior Product Architect at XebiaLabs. Hes is the original development and product manager for XL Release, the release orchestration component of the XebiaLabs DevOps Platform.

The Reality of Software Releases

Many organizations model software delivery as if the features that are initially planned for a release are always the features that are actually delivered to production when the release is done. But the reality of software releases is more complicated than that, because it’s hard to predict the delivery of planned features. The XebiaLabs DevOps Platform can help you deal with the reality of software releases. See for yourself!

Start Your Trial

The XebiaLabs DevOps Platform provides the intelligence, automation, and control that technical and business teams need.