[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Condor-users] Can this be done?



On Monday, 6 August, 2012 at 10:44 AM, Sarah Williams wrote:
I would like to have something like this in my condor config:

offline_nodes = [ 'machine01', 'machine02', 'machine03' ]
APPEND_REQUIREMENTS = Target.Machine not in offline_nodes

Is there any such thing?

Not quite.

Requirements have to reference an attribute in the machine's ad or in the job's ad. They can't reference random configuration settings. So you'd have to maintain that list of machines on every single machine in order to reference it in a requirements _expression_ like that. Bit of a pain. You might as well localized the off/online-ness of a machine like so:

Try adding to the Machine's configuration:

IsOffline = False
STARTD_ATTRS = $(STARTD_ATTRS), IsOffline

When you want to make a machine offline you change:

IsOffline = False

to:

IsOffline = True

and reconfigure the machine.

And then jobs append to their requirements:

&& (Target.IsOffline == False)

So:

APPEND_REQUIREMENTS = Target.IsOffline == False

Regards,
- Ian

---
Ian Chesal

Cycle Computing, LLC
Leader in Open Compute Solutions for Clouds, Servers, and Desktops
Enterprise Condor Support and Management Tools

http://www.cyclecomputing.com
http://www.cyclecloud.com
http://twitter.com/cyclecomputing