This article was originally published in the Winter 2018 issue of The Record. Subscribe for FREE here to get the next issue delivered directly to your inbox.
Also known as A/B Deployments, blue/green deployments are a change management strategy that has long been espoused by development organisations. In this scenario, there are two identical hardware environments that are configured exactly the same way. Whilst one environment is active and serving end users, the other environment remains idle. Organisations rely on the blue/green architecture when they want an infrastructure that will allow them to test and deploy new applications that build or update with zero downtime, by leveraging identical application stacks.
The drawback to this type of deployment has always been the cost: Organisations are creating and paying for twice the infrastructure they need and require since only one environment is active at any time. However, the cloud profoundly changes the picture.
Because applications and solutions running in Microsoft Azure can be licensed either on an annual, all-you-can-use basis (called BYOL or bring-your-own-license) or as consumed (called PAYG or pay-as-you-go), duplicate architectures can be created that are only licensed as-used, i.e. only the active environment is consuming Azure infrastructure, greatly reducing costs. This is deployed essentially as infrastructure-as-code, so the set-up is greatly simplified and doesn’t require on-premises servers. It is also inherently scalable because the framework is Azure.
Lastly, it allows organisations to truly focus on developing and deploying code optimised for the cloud. They can leverage Azure services, they can rely on in-built Azure security, and they can deploy much more rapidly. They can even leverage application programming interfaces that will automate security aspects so application testing requirements are greatly reduced.
In a cloud-based blue/green design, two environments are used to manage the implementation of new software releases or components whilst maintaining high availability of the services in that environment. You can easily move users from one environment to another as necessary to complete the release with minimal interruption. This architecture can also be leveraged in the scenario where you want to rehydrate your environment to ensure it is clean.
Customers have found deploying blue/green environments in Azure to be very successful and cost-effective. In fact, vendors are publishing blue/green reference architectures on sites like GitHub because the solution overcomes the cost-burden of traditional blue/green architectures and allows rapid deployment, as well as the ability to develop true born-in-the-cloud applications that leverage available Azure services.
Chris Hill is regional vice president of Public Cloud at Barracuda Networks