I got my hands on three identical PC towers, I would like to hook them up into a render farm, but I would like some advice on what opperating system I should use. I know that I need one of them to be a master, when I looked up linux I found that they had a linux server, is that the sort of thing I'd want for the master?
To setup a render farm you need multiple computers that can talk to each other over a network. Then you setup one as a master and the others as slaves that will get their workload from the master.
Blender includes a network render addon that just needs to be enabled in preferences then configured on each machine.
Flamenco is the new network render project being worked on.
For a small farm you can also manually start blender on each machine, giving each a different range of frames to render. With *nix machines this can be done through an ssh connection with
blender -b myscene.blend -s 1 -e 10 -a, this can be expanded to a script that can automate sending the command to each machine for you.