solutious/rudy

Distributing instances across AZs

Opened this issue · 2 comments

We'd like to distribute our servers across availability zones for some robustness on downtime. With a machines config it's not possible to put specific positions in specific AZs. It is possible via --position and --zone command line options to startup a machine in a certain zone, but you then have to remember to add the --zone option every time you want to run a Rudy command on that server, or else Rudy doesn't know how to find it.

This highlights one of the problems with the way Rudy currently names things. If a position could have it's own AZ, machine names would end up like this:

m-us-east-1a-prod-fe-01
m-us-east-1b-prod-fe-02
...

which is a little nasty but probably not a huge deal in practice. However, it does complicate the handling of routines when you run say: rudy -e prod -r fe bundle-install. Currently it would assume the default AZ and run against only machines within it and not the rest.

I don't have any time to work on this right now but I'm happy to pull in a patch. You already have a couple patches on the go so I'm not you take this as well. I just want to set expectations about it.

This particular issue isn't as much of a pain point for us at the moment, so I'll probably hold off on fixing it for a little while, but thanks for the feedback. I'll hit you up if I have any more questions.