cli icon indicating copy to clipboard operation
cli copied to clipboard

Staggered Deploys

Open tzmanics opened this issue 9 years ago • 8 comments

Add the ability to stagger deploys. Deploy 1/2 the servos, wait some period of time, then deploy the other half. This is intended to provide a quick solution for zero downtime deploys.

I discussed briefly with Jack and the medusa implementation should be pretty straight forward. When it queue's up the deploys (in Kue), it can queue half of them with a delayed start.

Possible UX could be:

$ modulus deploy --staggered=30

30 is the number of seconds to wait. If no time is specified default to 5 seconds.

tzmanics avatar Jan 25 '16 13:01 tzmanics

If the servos are expendable, would it be better to just deploy the code into a new servo then destroy the old one once the deploy is completed?

theworkflow avatar Jan 25 '16 15:01 theworkflow

I think most of this discussion should be on internal tools. The only bit that needs to be addressed on this repo is adding support for the flags if/when the feature lands.

jackboberg avatar Jan 25 '16 15:01 jackboberg

If we're deployed on Modulus for production, we shouldn't bring down our entire API for minutes every time we re-deploy. This is a critical feature.

cryptoquick avatar Apr 19 '16 07:04 cryptoquick

Hi @cryptoquick we definitely agree and have zero-downtime deployment on our roadmap to be tackled soon. Thanks for reaching out!

tzmanics avatar Apr 19 '16 14:04 tzmanics

That's appreciated, thanks... We just went into production this morning, so... I'm really not sure if I'm comfortable having API downtime on each deployment, especially when working with CI.

cryptoquick avatar Apr 19 '16 15:04 cryptoquick

@tzmanics Any news on this or maybe an ETA? I don't like it that my app's users see an error message every time I deploy.

troxler avatar Aug 08 '16 11:08 troxler

Hi @troxler, we have zero-downtime deployment on schedule for release this quarter. We'll keep you updated to when the release happens.

tzmanics avatar Aug 09 '16 13:08 tzmanics

@tzmanics Great! Thanks for the update.

troxler avatar Aug 09 '16 14:08 troxler