public:grid:ubuntu_install

Installing GRID software

This is a guide to installing gLite 3.2.2 on (K)Ubuntu 8.04.

There is some instructions about installing gLite on these sites:

But it doesn't go into enough detail, so I started my own page detailing how to install the glite software.

I'm making a separate page for Network Tuning.

Get the tar balls from https://twiki.cern.ch/twiki/bin/view/LCG/UiTarInstall

wget http://grid-deployment.web.cern.ch/grid-deployment/download/relocatable/glite-UI/SL5_x86_64/glite-UI-3.2.2-0.tar.gz
wget http://grid-deployment.web.cern.ch/grid-deployment/download/relocatable/glite-UI/SL5_x86_64/glite-UI-3.2.2-0-external.tar.gz

Untar the two files

mkdir grid
cd grid
tar -zxf ../glite-UI-3.2.2-0.tar.gz
tar -zxf ../glite-UI-3.2.2-0-external.tar.gz

Create a softlink to libexpat:

ln -s /usr/lib/libexpat.so.1 grid/external/usr/lib/libexpat.so.0 (does this work? only on 32bit systems?)
ln -s /usr/lib/libexpat.so.1 grid/external/usr/lib64/libexpat.so.0

Create softlinks to libssl and libcrypt:

ln -s /usr/lib/libssl.so.0.9.8 grid/external/usr/lib/libssl.so.6 (does this work? only on 32bit systems?)
ln -s /usr/lib/libcrypto.so.0.9.8 grid/external/usr/lib/libcrypto.so.6 (does this work? only on 32bit systems?)
ln -s /usr/lib/libssl.so.0.9.8 grid/external/usr/lib64/libssl.so.6
ln -s /usr/lib/libcrypto.so.0.9.8 grid/external/usr/lib64/libcrypto.so.6

Please note that depending on your exact OS, you might need a newer version of OpenSSL and link to that instead. (see below)

Create a softlink to libldap:

ln -s grid/external/usr/lib64/libldap-2.3.so.0 /usr/lib/libldap.so

Install rpm related tools:

apt-get install rpm
apt-get install alien

You might also need to install java JRE 1.5 (or 1.6 ?) as the tools need it.

Create directories for the certificates

mkdir grid/etc/grid-security
mkdir grid/etc/grid-security/certificates
mkdir grid/etc/grid-security/vomsdir

FIXME : We'll need a cron job to keep these up to date. There seems to need to create a script to do this: grid/glite/libexec/fetch-crl.sh Cron command:

1 6 * * * /app/grid/glite/libexec/fetch-crl.sh >> /var/log/fetch-crl-cron.log 2>&1

This probably uses grid/external/usr/sbin/fetch-crl

Create a directory for the configuration scripts:

mkdir grid/config

We need to make the following files:

  • groups.conf
  • users.conf
  • site-info.def

The files groups.conf and users.conf can be empty. The file “site-info.def” is the important configuration file that we need to get right.

First generate a site-info.def. You do this by taking one of the examples and editing it to tailor it to your site. Important parameters are:

USERS_CONF=/opt/grid/config/users.conf
GROUPS_CONF=/opt/grid/config/groups.conf
FUNCTIONS_DIR=/opt/grid/glite/yaim/functions
INSTALL_ROOT=/opt/grid
OUTPUT_STORAGE=/tmp/jobOutput
JAVA_LOCATION="/usr/lib/jvm/java-1.5.0-sun"
# Site-wide settings 
SITE_EMAIL=grit@astron.nl
SITE_NAME=Astron
SITE_LOC="Groningen, The Netherlands"
SITE_LAT=53.23821 # -90 to 90 degrees
SITE_LONG=6.53481 # -180 to 180 degrees
SITE_WEB="http://www.rug.nl/rc"
SITE_TIER="n/a"
SITE_SUPPORT_SITE="Sara NL"

Next we need to do something along these lines using YAIM http://yaim.info/ ../glite/yaim/bin/yaim -c -s site-info.def -n UI_TAR After a lot of fiddling with the site-info.def this works, even though it gives some errors. One of the things you need to change is the glite/yaim/functions/utils/detect_platform because using uname -i is not POSIX compliant according to https://bugs.launchpad.net/ubuntu/+source/coreutils/+bug/111863 It works if you use uname -m instead.

uname -m

Also you need to edit glite/yaim/functions/config_ui_tar change the following line:

yaimgridpath_append LD_LIBRARY_PATH ${GLITE_EXTERNAL_ROOT}/usr/lib

You need to add:

## added by Adriaan Renting
if [ "x${OS_ARCH}" = "x64BIT" ]; then
  if [ -d ${GLITE_EXTERNAL_ROOT}/usr/lib64 ]; then
      yaimgridpath_append LD_LIBRARY_PATH ${GLITE_EXTERNAL_ROOT}/usr/lib64
  fi
fi

This generates the startup scrips. (see usage below)

I needed to also update OpenSSL, as the version that came with Ubuntu 8.04 was too old and gave unresolved symbols. I got the libraries from a rpm of OpenSSL 0.9.8e and put them in this directory:

> ls grid/downloads/lib64
libcrypto.so.0.9.8e  libcrypto.so.6  libssl.so.0.9.8e  libssl.so.6

I then updated the links made earlier to point to them.

ln -s grid/downloads/lib64libssl.so.0.9.8e grid/external/usr/lib64/libssl.so.6
ln -s grid/downloads/lib64/libcrypto.so.0.9.8e grid/external/usr/lib64/libcrypto.so.6

I could probably just have copied the .so files to grid/external/usr/lib64 instead.

# gLite environment
source /${APS_LOCAL}/grid/external/etc/profile.d/grid-env.csh
source /${APS_LOCAL}/grid/globus/etc/globus-user-env.csh
voms-proxy-init -valid 24:00 -voms lofar:/lofar/ops
setenv LFC_HOST `lcg-infosites --vo lofar lfc`

On the LOFAR systems there is a script in /opt/scripts/doGrid that does exactly this.

After a while I encountered this error message from voms-proxy-init:

globus_gss_assist token :-1: read failure: Operation not permitted

It seems it's caused by your time/date being out of sync. Fixing NTP solved the problem at least.

  • Last modified: 2017-03-08 15:27
  • by 127.0.0.1