Personal tools
You are here: Home Documentation Installing the VDT
Document Actions

Installing the VDT

by admin last modified 2006-06-26 07:36

A quick how-to on installing an OSG Compute Element.

As always, this is not authoritative.  This site is.  This page should be viewed as a minimal set of installation instructions, meant as a reminder for sysadmins who have set up an OSG CE at least once.

Installing the VDT - Head Node

First of all, get pacman. 
mkdir -p /opt/osg/pacman
cd /opt/osg/pacman
wget http://physics.bu.edu/pacman/sample_cache/tarballs/pacman-latest.tar.gz
tar zxf pacman-latest.tar.gz
cd pacman-3.18.4 #Or whatever version may apply
source setup.sh
Pacman is now installed and configured.  Next, install the OSG compute element.  Officially, there is no upgrading between version, so I make a separate directory for each install.  As of this writing, OSG-0.4.1 is the latest.  My installs are always to /opt/osg/osg-041 out of habit; the OSG software stack should not be put on an NFS mount.
mkdir -p /opt/osg/osg-041
cd /opt/osg/osg-041
# export VDT_PRETEND_32=1 ##only needed to get a 32 bit install on a 64 bit machine.##
# export VDT_LOCATION=/opt/osg/osg-041
pacman -get OSG:ce
The two export commands may not be required on the latest version.  Your mileage may vary.  That last command should take awhile and will have a few questions to ask you.  For the most part, the answer to all of them is "yes".  You may set the VDT_PRETEND_32 variable if you are on a 64-bit machine (but may not be required).  Due to a couple of components, we are unable to use the 64-bit version of the stack for version previous to OSG 0.4.1.  If you have installation difficulties and if you are on a 64-bit machine, try to install a 32-bit perl (requires you to install an RPM) and that you have the 32-bit perl-CPAN RPM installed.

Once this has completed, Pacman puts together all the new file paths into one location.  Try:
source /opt/osg/osg-041/setup.sh
This should setup your environment to use the new install of the OSG.

Now, we need to configure the various bits and pieces that we just installed to work correctly.  I'll be skimpy on some parts, and refer to other documents on other parts.  If in doubt, try looking at the configuration scripts in $VDT_LOCATION/vdt/setup.

Installing Worker Node Software

Once you install all the software on the headnode, there are some client libraries that need to go on the worker nodes.  Because you sourced the setup.sh script above, you need a clean environment.  Log out and back in.  Now, in an NFS-shared directory, do this:
pacman -get OSG:wn-client
Due to problems with the $GLOBUS_LOCATION variable, for each worker node, you will need the globus location on the head node to be softlinked to the actual shared globus location on the worker node.  For example, if you install the OSG to /opt/osg/osg-041 on the head node, then your $GLOBUS_LOCATION will be /opt/osg/osg-040/globus.  Suppose, on the other hand, you install the OSG to /shared/apps/osg on all the worker nodes.  Then, you must create a softlink like the following on all the worker nodes:
mkdir -p /opt/osg/osg-041/globus
ln -s /shared/apps/osg/globus /opt/osg/osg-041/globus

Configuring Authentication

If this is a fresh install, before you can request your certificate, you must setup the correct environment for the certificate request.  This is done with the following script:
$VDT_LOCATION/vdt/setup/setup-cert-request
Follow the on-screen instructions.  Set up the DOEGrids certificate authority (choose the option which matches 1c3f2ca8), even if you won't be using it.

If you are upgrading the OSG stack on a machine then the server certificates should already be in place.  If you are installing a machine from scratch or the server certificates have been lost on your machine then you'll have to request new server certificates.  Instructions can be found here.

If you are going to be requesting a grid certificate from the UNL CA (or are a GPN user), the process is slightly different.  The documentation is here.

There are two types of authentication available: gridmap (old) and PRIMA (new, preferable).  We will fill in the documentation about authenticating via gridmap or PRIMA callouts later.  For now, see the corresponding parts of the official documentation.

Starting globus and the Grid3 information provider

Globus should have been pre-installed.  Its services are all run through xinetd, like a good daemon should; make sure that /etc/xinetd.d/globus-gatekeeper.conf and /etc/xinetd.d/gsiftp both exist.  Then, restart xinetd:
/etc/rc.d/init.d/xinetd restart
Now we must configure the Grid3 information provider.  This means that you should setup a temp directory ($TMP_DIR), data directory ($DATA_DIR), and apps ($APP_DIR) directory that all the worker nodes in your cluster can access (the simplest way to do this is with an NFS mount).  Make sure all three are world readable and writable.  Next, set aside a temporary directory on each worker node that is NOT shared with all the others ($TMP_WN_DIR).  Below is the official recommendations for the size of each directory (I'd like to note that I haven't seen this much space used, but then again, CMS isn't in production...)

Directory
Recommended Size
$DATA_DIR
Varies by VO.  At least 10GB per worker node.  One VO requests as much as 100 GB per worker
$APP_DIR
Approximately 10GB per application
$TMP_DIR
Approximately 10GB per worker node
$WN_TMP_DIR
10 GB

Once you have all of this setup, run the following script:
cd $VDT_LOCATION/monitoring
./configure-osg.sh
This script correctly configures the $VDT_LOCATION/monitoring/grid3-info.conf configuration file, which is necessary for any grid job to run (and more importantly, for site verification to succeed).

Monitoring and Information Services

A monitoring service is fairly self-explanatory: it monitors the compute element, and gives you a accurate, human-readable description of the state of the system.  It can be something as simple as a green (passing) status on GridCat versus a red (failing) status, or something a bit more elaborate like detailed MonALISA graphs.  An information service shares information about the configuration of the compute element.  For example, if one were to publish all the information gathered in the previous section into one central catalog for all the OSG sites, it would be an information service.  GridCat does exactly that.  The three most used information services (and the ones that the site verification scripts check for) are:
Click on the link to install the service.  I recommend installing them in the order listed.

Site Verification and Registration

Congratulations!  Ideally, everything is now working.  Now, check your work out with the following:
cd $VDT_LOCATION
source ./setup.sh
grid-proxy-init #Input your password
cd verify
./site_verify.pl
Go into troubleshooting mode, and fix any problems that site_verify can come up with.  Next, use the webform to register with the OSG.

Congratulations!  You are finished.  Take a look at some of the other documentation on this site to determine where to go next.

Powered by Plone, the Open Source Content Management System