Amazon’s Chris Munns announced at the recent Serverless Conference NYC that AWS Lambda will soon support a feature called traffic shifting. This will allow a weight to be applied to Lambda function aliases to shift traffic between two versions of a function. The feature will enable the use of canary releases and blue/green deployment.
Amazon’s Chris Munns announced at the recent Serverless Conference NYC that AWS Lambda will soon support a feature called traffic shifting. This will allow a weight to be applied to Lambda function aliases to shift traffic between two versions of a function. The feature will enable the use of canary releases and blue/green deployment.
Canarying is one of the key operational patterns to evolve alongside of infrastructure as a service (IaaS), and its use by companies like Netflix is well documented (e.g. Roy Rapoport’s QCon NYC 2014 presentation ‘ Canary Analyze All The Things ‘). Using the canary approach depends upon being able to direct traffic across multiple versions, with control over what proportion of traffic goes to the newly deployed version. ‘Serverless’ Functions as a Service (FaaS) services like Lambda might have load balancers behind the scenes, but control of those load balancers has previously been out of reach.
The difficulty of canarying in Lambda has been commented on by serverless pioneers like Paul Johnston, who dedicated a section of his ‘ Serverless and Deployment Issues ‘ post to the problem. Johnston’s proposed workaround was to create a router function, but he (and others) acknowledged the folly of writing what would become mission critical infrastructure code as part of an application. Johnston was one of the Serverless Conference attendees who captured and tweeted Munns’s slide, and other attendees noted that a cheer went up from the audience.
There hasn’t yet been an official announcement of the new feature via the AWS blog, which normally includes an overview of usage and configuration along with which regions are first to be updated.