Jump to content

Setting up a render farm properly


Craig Ramsay
 Share

Recommended Posts

I have recently made several new quad core machines that I intend to use as a render farm using Max and Vray. Now they are all working happily with no problems I'm interested to know how you guys manage your farms. What I am specifically interested in is how you guys update software on the machines so they are all the same software wise.

 

I have True Image Workstation so thought about just installing all the software on one machine then just mirroring the hard disk onto the other machines but that won't work because of machines needing different drivers and windows would be unhappy too.

 

Surely there must be an easier way than installing everything on each machine one by one?

Link to comment
Share on other sites

I have a farm of 160 machines and once a year we usually do a major upgrade which requires a machine to machine hit so we can install Max and all of its plugins. Some of the software plugins have files that can simply be copied into the Max directory but the big stuff like Max and Vray have to be installed manually. If there is an easier way I'd love to know because that kind of operation usually takes several days to complete. We also use login scripts to push out updates; most of the updates can be handled in this fashion.

Link to comment
Share on other sites

Its not a really simple task for a network administrator novice. If your servers support pxe boot, you could run a pxe imaging server (just reboot the machines and they get reloaded on the fly) after you make an image of a correctly setup machine. If you do this, make sure you delete backburner.xml as it caches your mac address so if you put it onto another machine, backburner does some funky stuff. You mentioned having different hardware configurations, this should be fine as long as the image contains the drivers for all possible hardware configurations. You can verify this by taking a single drive, and playing musical hard drive with it by installing it into every possible configuration and installing all of the drivers. Before you make an image from it, remove all hardware profiles, reboot, and then make the image.

 

Make sure you use DHCP on the image so you dont get ip conflicts. I use that method when I first image the machines. You could use it for updates as well, although it is overkill. Install all plugins to a network shared drive. That way most plugins can be installed on all servers by copying them to 1 location.

 

If the software you are installing supports silent installs, you can use systernals handy utilities to execute remote commands on the machines from the command line. Its very easy to write a script to execute the same command on every node in your network. Once max is installed, I dont really see much else needing to be installed other than plugins. You dont need windows updates or anything because the machines shouldnt be on the internet anyways.

Link to comment
Share on other sites

Some of the software plugins have files that can simply be copied into the Max directory but the big stuff like Max and Vray have to be installed manually.

 

come on Maxer. i am jealous of the automation your renderfarm has. ...from what i know of it, i consider the best i have ever heard.

 

...but i digress. max can be installed, updated, and what have you via a batch script, though i do know it has changed some for version 2008. simply have a batch file in your startup directory that calls a another batch file on the server that contains the install commands for max. yo modify one file, and it updates max on every machine on the farm the next time they boot. At least this is how it was for Max9. I think user Demo38 has figured it out for Max2008.

 

....vray can be copied to a machine without installing it. you only need to pay attention to where the files are. script it to create directories, and place the files in there, including the plugin directory, the chaos group files in the program files directory, and the license file in the program files directory/common files. also, there are a few files that need to be placed in max's root directory, and then create a plugin.ini file that resides on the server, and have it copy to max's root directory, and overwrite the one that is there. that file contains the paths that max will need to load vray when it starts.

 

i don't know how to do anything fancy, in the past i did everything using bat's.

Link to comment
Share on other sites

The trick for installing Max 2008 from the batch was a work around really. Trying to install the Max exe, it would launch the install and tell you that it wasn't a valid MSI. Since Autodesk stopped supporting installing Max from an MSI, the bat script no longer had any way to launch it or monitor if the install was finished or not as it steps from one app install to the next.

 

The work around I ended up going with was to first create a Max 2008 Deployment from the disc onto a network share. Then, launch that install file from the batch script and that would work. Then, to get around it jumping to the next task prior to finishing installing 2008, I set up a network ping every 2 minutes and then had it do a file check for the license file in the root directory (as it appeared to be one of the last files installed). If the file existed, it would assume that the install was finished and move on to the next item on the list (copying plug-ins, scripts over). If the file didn't exist, it would wait another 2 minutes and check again.

 

CHG set up our install script to start with, so I can't take any credit on that, I've just adapted it since then. We're now using it to automatically install Max 9 (if it's not installed), then copy over all scripts, files and plugins, then install Max 2008 (if not installed) and copy over those scripts and plugins. Basically log into the machine on an admin account, run the bat and walk away for a while, come back and enter the backburner info, and the box is ready to render.

 

Perhaps we can trade the bat script for the step by step on how you launch your network boxes Maxer??? I seem to recall some mystery magic referenced in a prior thread?

 

:)

Link to comment
Share on other sites

I have read on some other sites about computer clustering. this is possible using Windows 2003 server.

 

Clustering from what I understand, joins the processors together and runs them from one main computer. I'd love to give this a try some day.

 

Has anyone ever tried this???

Link to comment
Share on other sites

I had a fair amount of luck with creating a deployment for max 2008 recently so that will do unattended installs.. which you can do remotely via commandline with psexec if you're so inclined.

 

psexec \\targetComputer -u DOMAIN\Login -p passowrd -i -d cmd.exe /c start \\server\drive\Max2008Deployment.lnk

 

where Max2008Deployment.lnk is the shorcut to the deployment. (or really, any process you wish to start on the remote machine.) The above commandline will start the process as if it were run locally on that machine.

 

I didn't try and include my plugins though, i just did a batch xcopy of my plugins across.

 

most of this stuff is automated to one degree or another with a VBscript wrapper for me to loop it over a list of machines at one go.

 

Its not perfect, its not easy, but it beats sitting at each machine clicking next :p

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...