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

Re: [Condor-users] Condor-G Matchmaking



> -----Original Message-----
> From: condor-users-bounces@xxxxxxxxxxx [mailto:condor-users-
> bounces@xxxxxxxxxxx] On Behalf Of Kewley, J (John)
> Sent: 08 November 2007 11:04
> To: Condor-Users Mail List
> Subject: [Condor-users] Condor-G Matchmaking
> 
> Hi
> 
> I am doing some work with Condor-G and am trying to find out how to
> submit a job that can be matched by more than one globus resource.
> 
> I understand that this was done using
>   Universe = globus
> and
>   Globusscheduler = $$(GatekeeperUrl)
> in the past.
> 
> What is the syntax for this when using the newer
> 
>   Universe = grid
>   Grid_resource = gt2 globus_resource/jobmanager
> 

I imagine it would be

Grid_resource = gt2 $$(GatekeeperUrl)

for compatibility with with the old version.

> Also, what needs to be setup on the globus resources to enable the
> matchmaking?
> 

You need to advertise an attribute e.g. Name (fully qualified host name) 
for each resource and use that for matchmaking in the requirements spec e.g.

requirements = ( TARGET.gatekeeper_url =!= UNDEFINED )  && ( Name  == "host.domain" ) )

You also need to advertise GatekeeperUrl as a machine classad corresponding to
the resource e.g.  my.host.domain/jobmanager-condorg. When the scheduler makes a match
it will subsititue the value in the $$(GatekeeperUrl) macro so you get the right 
jobmanager. If you advertise some dynamic info such as the number of free nodes you
can perform more sophisticated matchmaking e.g.

 requirements = ( TARGET.gatekeeper_url =!= UNDEFINED )  && \
               ( ( ( Name  == "host.domain"      ) && ( FreeNodes >= 4 ) ) || \ 
                 ( ( Name  == "otherhost.domain" ) && ( FreeNodes >= 8 ) ) )

( run the job on host.domain if there are at least four free nodes or otherhost.domain
  if there are at least eight ).

You could use condor_advertise on each resource to send the classads to the central manager
( could be security/firewall issues tho' ) or have the central manager "pull" the info and
use condor_advertise locally to publish the classads (may be safer).

BTW the old syntax still works fine for us on 6.8.4

cheers,

-ian.


-------------------------------------------
Dr Ian C. Smith
e-Science Team
University of Liverpool
Computing Services Department