next up previous contents index
Next: 7.6 Troubleshooting Up: 7. Frequently Asked Questions Previous: 7.4 Condor on Windows   Contents   Index

Subsections

7.5 Grid Computing

Do I need to have a Condor pool installed to use Condor-G?

No, you do not. Condor-G is only the job management part of Condor. It makes perfect sense to install Condor-G on just one machine within an organization. Note that access to remote resources using a Globus interface will be done through that one machine using Condor-G.

I want to install Globus on my Condor pool, and have external users submit jobs into the pool. Do I need to install Condor-G?

No, you do not need to install Condor-G. You need to install Globus, to get the "Condor jobmanager setup package." See the Condor-G homepage at http://www.cs.wisc.edu/condor/condorg/ for a link to Globus.

I am the administrator at Physics, and I have a 64-node cluster running Condor. The administrator at Chemistry is also running Condor on her 64-node cluster. We would like to be able to share resources. Do I need to install Globus and Condor-G?

You may, but you do not have a need to. Condor has a feature called flocking, which lets multiple Condor pools share resources. By setting configuration variables, jobs may be executed on either cluster. Flocking is good (better than Condor-G) because all the Condor features continue to work. Examples of features are checkpointing remote system calls. Unfortunately, flocking only works between Condor pools. So, access to a resource managed by PBS, for example, will still require Globus and Condor-G to submit jobs into the PBS queue.

What is glidein?

Glidein provides a way to temporarily add a Globus resource to a local Condor pool. Condor-G is not required to use glidein. Glidein uses Globus resource-management software to run jobs. It works by executing the portions of Condor software on the Globus resource. Then, Condor may execute the user's jobs. There are several benefits to working in this way. Checkpoints can be made of the jobs running on the Globus resource, and remote system calls can be supported. Condor can also dynamically schedule jobs across the Grid.

See section 5.3.4 of the manual for further information.


Submitting Condor jobs through my Globus gatekeeper does not work. What is wrong?

The Condor configuration file is in a non-standard location, and Globus does not know how to locate it, when you see either of the following error messages.

first error message

% globus-job-run \
  globus-gate-keeper.example.com/jobmanager-condor /bin/date

Neither the environment variable CONDOR_CONFIG, /etc/condor/,
nor ~condor/ contain a condor_config file.  Either set
CONDOR_CONFIG to point to a valid config file, or put a
"condor_config" file in /etc/condor or ~condor/ Exiting.

GRAM Job failed because the job failed when the job manager
attempted to run it (error code 17)

second error message

% globus-job-run \
   globus-gate-keeper.example.com/jobmanager-condor /bin/date

ERROR: Can't find address of local schedd GRAM Job failed
because the job failed when the job manager attempted to run it
(error code 17)

As described in section 3.2.3, Condor searches for its configuration file using the following ordering.

  1. File specified in CONDOR_CONFIG environment variable
  2. /etc/condor/condor_config
  3. ~condor/condor_config

Presuming the configuration file is not in a standard location, you will need to set the CONDOR_CONFIG environment variable by hand, or set it in an initialization script. One of the following solutions for an initialization may be used.

  1. Wherever globus-gatekeeper is launched, replace it with a minimal shell script that sets CONDOR_CONFIG and then starts globus-gatekeeper. Something like the following should work:

      #! /bin/sh
      CONDOR_CONFIG=/path/to/condor_config
      export CONDOR_CONFIG
      exec /path/to/globus/sbin/globus-gatekeeper "$@"
    
  2. If you are starting globus-gatekeeper using inetd, xinetd, or a similar program, set the environment variable there. If you are using inetd, you can use the env program to set the environment. This example does this; the example is shown on multiple lines, but it will be all on one line in the inetd configuration.
    globus-gatekeeper stream tcp nowait root /usr/bin/env
    env CONDOR_CONFIG=/path/to/condor_config
    /path/to/globus/sbin/globus-gatekeeper
    -co /path/to/globus/etc/globus-gatekeeper.conf
    
    If you're using xinetd, add an env setting something like the following:
    service gsigatekeeper
    {
        env = CONDOR_CONFIG=/path/to/condor_config
        cps = 1000 1
        disable = no
        instances = UNLIMITED
        max_load = 300
        nice = 10
        protocol = tcp
        server = /path/to/globus/sbin/globus-gatekeeper
        server_args = -conf /path/to/globus/etc/globus-gatekeeper.conf
        socket_type = stream
        user = root
        wait = no
    }
    


next up previous contents index
Next: 7.6 Troubleshooting Up: 7. Frequently Asked Questions Previous: 7.4 Condor on Windows   Contents   Index
condor-admin@cs.wisc.edu