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

Re: [HTCondor-users] Define requirement to run in a group of machines



The way Iâd approach this is to add a startd attribute to the cluster-based computers to advertise that fact. You could either have the following in config files only used by the cluster machines:

 

STARTD_ATTRS = IsClusterNode

IsClusterNode = True

 

Or, you could apply it to all machines like so, using the regexp() function:

 

STARTD_ATTRS = IsClusterNode

IsClusterNode = regexp(â^node*\.domain\.comâ, Machine, âIâ)

 

Machines named node* would set this to âTrue,â and other machines would set it to âFalse.â

 

Then in your submit file, youâd just add the requirement âTARGET.IsClusterNode == Trueâ.

 

                -Michael Pelletier.

 

From: HTCondor-users [mailto:htcondor-users-bounces@xxxxxxxxxxx] On Behalf Of Fernando Nellmeldin
Sent: Monday, June 12, 2017 5:21 AM
To: htcondor-users@xxxxxxxxxxx
Subject: [HTCondor-users] Define requirement to run in a group of machines

 

Hello, we have a linux cluster with names node01.domain.com, node02.domain.com, etc. HTCondor is correctly configured and I can successfully run jobs in them.

 

But, as we also have other computers which can run jobs, I would like to write in the submit file a requirement that says: "only run in computers of the cluster". 

How can we do this? Something like: requirements = (Machine == "node*.domain.com").

 

 

I found a very old topic (link at the end) which suggests doing the following in the condor_config of the manager:

clusternodes = Machine == "node01.domain.com" || Machine == "node02.domain.com" || ....

submit_exprs = clusternodes

 

And then, in the submit file:

requirements = clusternodes 

(this would transform into the machine=nodeXX)

 

However, this doesn't work (I get no match for running the job). 

 

Thank you!

 

 

Fernando.