I would like to setup an N-master x M-slave Jenkins build/execution farm.
I'd like to allow multiple projects to run their own Jenkins master server, each distributing their builds into the same pool of Jenkins slaves.
So each slave will have separately configured workspaces and so on.
What is the recommended way of load balancing the jobs across the slaves? i.e. if Master 1 has kicked off a job on Slave 1, and Master 2 comes along to run a job, I'd like it to pick a slave other than 1 to run that job on.
What is the recommended way of setting that up?