Installation of a VO Frontend

1. Description

The VO Frontend will match user jobs with glidein factory ads. It is responsible for the submission of new glideins.

The VO Frontend will be installed as user gfrontend, and the home directory will be /home/gfrontend. The name of the node is mymachine.fnal.gov.
The WMS collector is located on wmspool.fnal.gov, the glidein pool collector is located on mypool.fnal.gov, and there are two schedd nodes, each with 4+1 schedds (as per installation instructions ), located at mysubmit1.fnal.gov and mysubmit5.fnal.gov.
If you want to use a different setup, make the necessary changes.

2. Hardware requirements

This machine needs a fast  CPU and a moderate amount of memory (512MB should be enough).
The disk needed is just for binaries, config files and log files (2GB should be enough)

3. Needed software

Any Condor-supported OS.
The OSG client software.
The Condor distribution.

4. Condor installation

The VO Frontend can use any Condor installation, as long as it points to the glidein pool Collector.
If you don't have already Condor installed, consider:
  1. collocating it on a GCB node (using the OSG client, as described below)
  2. collocating it on a submitter node or the glidein pool Collector node,
  3. using the Condor distribution that comes with the OSG client software (see below)

4.1 OSG client software installation

If you have not installed the OSG client in /opt/vdt already, do it now.
(Note: An EGEE/gLite Grid User Interface will work as well, but you need to replace /opt/vdt with whatever is appropriate for that installation)

To install OSG 0.6.0 client, as of the time of writing, you would execute the following as root
(please be aware that you will need gcc, g++ and python-devel installed, and that you may need -pretend-platform packman option on some systems):
mkdir /opt/vdt
cd /opt/vdt
wget http://physics.bu.edu/pacman/sample_cache/tarballs/pacman-3.19.tar.gz
tar --no-same-owner -xzvf pacman-3.19.tar.gz
cd pacman-3.19
source setup.sh
cd ..
pacman -trust-all-caches -get OSG:client
#Do you agree to the licenses? [y/n] y
#Would you like to enable the Condor batch system to run automatically? n
#Would you like to setup daily rotation of VDT log files? y
#Do you want to update the CA certification revocation lists (CRLs) automatically? [y/n] y
#Where would you like to install CA files? r

# If you have already a condor version installed on the system
# uncomment the line below
#pacman -remove Condor
# and ignore the error messages
source setup.sh
vdt-control --on

PS: The most up-to-date instructions can be found on https://twiki.grid.iu.edu/twiki/bin/view/ReleaseDocumentation/ClientInstallationGuide.
(Please notice that those installation instructions tell you to install in ~/client_directory, please use /opt/vdt instead)

4.1.1 OSG Condor configuration

WARNING: Condor v6.8.3, shipped with the current OSG VDT client, has a broken condor_q binary. If you want to use this version, you need to replace the condor_q binary with a more recent one (maybe from another node).

If you plan to use the condor installation that comes with this package, you need to properly configure it.

Modify /opt/vdt/condor/local.*/condor_config.local to contain:
# make sure you never start any Condor daemon
DAEMON_LIST = None

# point to the glidein pool collector
CONDOR_HOST = mypool.fnal.gov

# setup basic GSI security
GSI_DAEMON_TRUSTED_CA_DIR=/opt/vdt/globus/TRUSTED_CA
SEC_DEFAULT_AUTHENTICATION = OPTIONAL
SEC_DEFAULT_AUTHENTICATION_METHODS = GSI
SEC_DEFAULT_ENCRYPTION = OPTIONAL
SEC_DEFAULT_INTEGRITY = OPTIONAL

Finally, put in /home/gfrontend/.bashrc:
export PATH=/opt/vdt/condor/bin:$PATH
export CONDOR_CONFIG=/opt/vdt/condor/etc/condor_config
(Remember to exit end reenter the shell to pick up the new environment)

5. VO Frontend installation

This document describes how to install the VO Frontend found in glideinWMS v1_2.

Unless otherwise stated, all the installation is done as user gfrontend.

5.1 Setup the GSI security

Create and maintain the a valid x509 proxy in ~/.globus/x509_service_proxy.
How you keep this proxy valid (via MyProxy, kx509, voms-proxy-init from a local certificate, scp from other nodes, or other methods), is beyond the scope of this document.

Setup the environment, by adding the following lines to ~/.bashrc:
VDT_BASE=/opt/vdt
export X509_CERT_DIR=$VDT_BASE/globus/TRUSTED_CA
export X509_USER_PROXY=~/.globus/x509_service_proxy

Make sure the DN of this proxy is put into the grid-mapfile on the WMS collector.

5.2 Get glideinWMS binaries

In your home directory, check  out glideinWMS from CVS:
export CVSROOT=:pserver:anonymous@cdcvs.fnal.gov:/cvs/cd_read_only
cvs co -r v1_1 glideinWMS

5.3 Create a configuration file

Get one of the examples in ~/glideinWMS/frontend/config_examples/ and  copy it to ~/glideinWMS/frontend/myfontend.cfg.

In ~/glideinWMS/frontend/myfontend.cfg change:
frontend_name='<select a name here>'
factory_pool='wmspool.fnal.gov'
schedd_names=['mysubmit1.fnal.gov','schedd_jobs1@mysubmit1.fnal.gov','schedd_jobs2@mysubmit1.fnal.gov','schedd_jobs3@mysubmit1.fnal.gov','schedd_jobs4@mysubmit1.fnal.gov','mysubmit5.fnal.gov','schedd_jobs1@mysubmit5.fnal.gov','schedd_jobs2@mysubmit5.fnal.gov','schedd_jobs3@mysubmit5.fnal.gov','schedd_jobs4@mysubmit5.fnal.gov']
glidein_params={"GLIDEIN_Collector":"mypool.fnal.gov"}
There are other options that can be changed, but I will leave it to the glideinWMS manual.

Please note that you need to create the directory specified as log_dir.

6. Starting the VO Frontend

Decide how often should the VO Frontend query the schedds and the WMS collector, how often should it advertise itself, and finally execute ~/glideinWMS/factory/glideinFrontend.py:
~/glideinWMS/frontend/glideinFrontend.py myfrontend.cfg >/dev/null 2>&1 </dev/null&


Back to the index