4 ms·
Yeah, that sounds pretty tedious, but I guess it could still be automated (but somewhat tricky). Once CoreOS becomes more stable, we're looking to move to it.
by mvip 12y ago
Yeah, that sounds pretty tedious, but I guess it could still be automated (but somewhat tricky).
Once CoreOS becomes more stable, we're looking to move to it. The idea is then to use `etcd` to feed the load balancer (probably Nginx) with the appserver pool. That way you can easily add new servers and decommission old ones.
- michaelmior 12y agoWe automated this pretty trivially at my last job using Fabric[0]. All we had to do was cycle through a list of servers and apply the remove from LB, update, add to LB steps. Removing from the LB should simply block until connections drain (or some reasonable timeout). It makes deploys take longer for sure, but avoiding the inevitable killing of user connections was worth it. [0] http://www.fabfile.org/ http://www.fabfile.org/
- crucialfelix 12y agothat's exactly what I'm doing, but using ansible. I used to do it with fabric before that. its slow, but I go have a cup of tea while it works.
- michaelmior 12y agoI will add that if you're using Docker (which we weren't) it might be easier to deploy a new set of Docker containers with updated code and just throw away the old ones.