BT

New Early adopter or innovator? InfoQ has been working on some new features for you. Learn more

Use Canary Deployments to Test in Production

| by Aslan Brooke Follow 0 Followers on Mar 26, 2013. Estimated reading time: 1 minute |

Companies use "Canary Deployments" to test software in production by routing a subset of users to new functionality as part of continuous delivery according to Nolio in their 1st video in a series about DevOps Best Practices. A "Canary Deployment" is a type of incremental release performed by deploying a new version of software side by side with its production version counterpart. Running multiple versions of a software product side by side requires the software to be specifically designed for that configuration and flawless deployment automation.

Overcoming the technical challenges involved in "Canary Deployments" will reduce the risk in the deployment process, allow for A/B testing and pre-emptive performance testing. A/B testing allows for new features to be tested without changing the user experience for the majority of users. The performance testing likewise would have a negligible affect on the user base as a whole.

According to Nolio "Canary Deployments" consist of the following steps:
  1. Stage artifacts for deployments, including: build artifacts, test scripts, config files, and deployment manifests.
  2. Remove "Canary" servers from load balancing.
  3. Upgrade "Canary" application (drain and deploy).
  4. Automated testing of application.
  5. Restore "Canary" servers to load balancing (connectivity and sanity checks).
  6. Upgrade the rest of the servers if the "Canary" testing with live usage is successful. (Otherwise rollback)
Nolio includes in the presentation an overview of using their product for high level orchestration of "Canary Deployments". They use an application model that can be reused in multiple processes by driving the usage of it from data. Administration and reporting are done adjacent to the "Canary Deployment".

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT