Installing the VDT
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.
Once this has completed, Pacman puts together all the new file paths into one location. Try:
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:
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:
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.
Once you have all of this setup, run the following script:
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:
Congratulations! You are finished. Take a look at some of the other documentation on this site to determine where to go next.
Installing the VDT - Head Node
First of all, get pacman. mkdir -p /opt/osg/pacmanPacman 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.
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
mkdir -p /opt/osg/osg-041The 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.
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
Once this has completed, Pacman puts together all the new file paths into one location. Try:
source /opt/osg/osg-041/setup.shThis 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-clientDue 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-requestFollow 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 restartNow 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 |
cd $VDT_LOCATION/monitoringThis 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).
./configure-osg.sh
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_LOCATIONGo into troubleshooting mode, and fix any problems that site_verify can come up with. Next, use the webform to register with the OSG.
source ./setup.sh
grid-proxy-init #Input your password
cd verify
./site_verify.pl
Congratulations! You are finished. Take a look at some of the other documentation on this site to determine where to go next.