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

Re: [Condor-users] New to Condor



> >1. We'd like to have Condor be able to force a job onto a particular 
> >node.  For example, I'd like to know how to start a job on node3 
> >regardless of the current load average, etc.  It would also 
> be useful 
> >to nice the other jobs (if any) currently running on the node.  In 
> >this way we'd like to have a mechanism in place for letting someone 
> >run an "emergency" job without having to wait in the queue 
> or waiting 
> >for specific resources to free-up.
> >  
> >
> Try adding custom attributes to the machine's ClassAd.   For 
> example, in 
> node3's condor_config file, add these lines:
> 
> NODE3=TRUE
> STARTD_EXPRS=NODE3
> 
> In your job's submit file, add NODE3 to the "Requirements=" line.  
> Condor should automatically try scheduling that job on the 
> only machine 
> with the NODE3 attribute.

There is no need to setup special ClassAds for this, just use
REQUIREMENTS = ... && Machine == node3.x.y.z
or
REQUIREMENTS = ... && Name == node3.x.y.z

Note that this, like previous solution does not force the job to run, nor
pre-empt any currently running jobs - it just ensures that if that job runs,
it can only run on the machine that matches. You would need to change the
PREEMPT expression for that and have something in a job's RANK or ClassAds
that specify when it should be a pre-empting job. Maybe having a 
CAN_ONLY_RUN_ON_NODE3 in the job ClassAds could be used for this,
but I haven't tinkered with the pre-emption mechanisms myself.

Note also that if you have >1 proc on that machine, then one of the above
(Name I think) becomes vmX@xxxxxxxxxxx

Cheers

JK