Mailing List Archives
	Authenticated access
	
	
     | 
    
	 
	 
     | 
    
	
	 
     | 
  
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Condor-users] Jobs License Management
- Date: Tue, 14 Oct 2008 15:51:14 -0500
 
- From: Matthew Farrellee <matt@xxxxxxxxxx>
 
- Subject: Re: [Condor-users] Jobs License Management
 
kschwarz@xxxxxxxxxxxxxx wrote:
Hi all,
We are using Condor in a pool where the master node is Linux based and all 
the executors are Windows based. 
We have several third-party applications that could run in batch but they 
need licenses available for the jobs. 
Interactive sessions could also checkout the licenses and therefore they 
will compete with the jobs for these licenses.
I have read the Condor Technical Document "Managing Jobs That Use Licenses 
With Condor" (Draft, As of August, 2008, still a draft),
however the "Assign Licenses to Machines" method in our case is not 
applicable,
and the "Have Jobs Restart" seems to be one way that could attend our 
today needs, 
but as a novice Condor user I have not understood how it is implemented.
Could anyone share how to implement this method to manage jobs that use 
Flexlm licenses (e.g.)? 
Both methods using DagMan and without its use, will be appreciated. 
Please share the examples of the scripts and submit files.
Don't worry about scripting languages. I can translate them to windows 
compatible scripting languages.
Could anyone help me to get it working?
Are there other methods?
I have also read in the Condor Users mailing list archive that there are 
plans to have license management as a Condor feature and that it would be 
out in the version 6.9.x development series (03 Aug 2005). 
Could anyone update the planned deployment date of this feature?
Thanks, Klaus
You can use Concurrency Limits from 7.1.3 [1].
Assign some number of licenses for use by Condor jobs, say 300. In your 
Negotiator's configuration add: MYLICENSE_LIMIT = 300
Now in each job that needs the license add: concurrency_limits = MYLICENSE
Condor does not check out the licenses from Flexlm, it just tries to 
keep the number of jobs that /will/ check out licenses under control.
Especially since you are sharing licenses between batch jobs and 
interactive users you should setup your jobs to notice if they failed 
because they did not checkout a license. This configuration will be 
specific to your application, but the document you already mentioned has 
a good example [2]. If your program exits with code 52 when it fails to 
checkout a license you'd add this to your job: on_exit_remove = 
(ExitBySignal == TRUE) || (ExitCode != 52)
Best,
matt
[1] 
http://www.cs.wisc.edu/condor/manual/v7.1/8_3Development_Release.html#SECTION00931000000000000000
[2] http://www.cs.wisc.edu/condor/techpaper/licenses.html