Canary deployments

Is it possible to canary deployments or staged rollouts for a service over the global network ?

I would to be able to do a partial rollout a specific version of a service and resume the rollout to the entire network based some metrics.

Hey @arnaudm one option I’m familiar with for a blue/green style deploy strategy is:

  1. Start by creating three services. Two are for the blue/green services, and one is for a lightweight routing service on the outermost layer.
  2. The routing service should contain your user-facing domain, and connect to your Blue/Green services as backends via a Director. This guide on load balancing goes into detail on setting this up Load balancing | Fastly Documentation
  3. Make sure that the routing service is configured to never cache any content, also referred to as a Force Pass setting. This will prevent any issues around accidental double-caching. Controlling caching

Then, to control traffic shifting, you’d change the load balancing Director’s weight settings.

There are different ways that we’ve seen this: some customers use an edge dictionary for managing traffic shifting for frequent (multiple times per day/hour) weight adjustments; some customers have client-slide logic to manage traffic shifts. But, this is a solid starting model for experimentation.

1 Like