Difference between revisions of "GLite on Nikhef Desktops"

From PDP/Grid Wiki
Jump to navigationJump to search
Line 67: Line 67:
 
  else
 
  else
 
   set mycshtmpfile=`mktemp /tmp/gridenv.XXXXXX`
 
   set mycshtmpfile=`mktemp /tmp/gridenv.XXXXXX`
   bash -c "export ISCSHELL=yes ; source /global/ices/lcg/glite<VERSION>/external/etc/profile.d/grid-env.sh" >> $mycshtmpfile
+
   bash -c "export ISCSHELL=yes ; source /global/ices/lcg/glite<VERSION>/etc/profile.d/grid-env.sh" >> $mycshtmpfile
 
   source $mycshtmpfile
 
   source $mycshtmpfile
 
   rm -f $mycshtmpfile
 
   rm -f $mycshtmpfile
Line 76: Line 76:
 
  then
 
  then
 
   RHEL_VERSION=`/bin/sed -e 's/.* \([0-9]\).*/\1/' /etc/redhat-release`
 
   RHEL_VERSION=`/bin/sed -e 's/.* \([0-9]\).*/\1/' /etc/redhat-release`
   if [ "$RHEL_VERSION" -lt 4 ]
+
   if [ "${RHEL_VERSION}" -lt 4 ]
 
   then
 
   then
 
     echo "WARNING WARNING WARNING" 1>&2
 
     echo "WARNING WARNING WARNING" 1>&2
Line 83: Line 83:
 
     . /global/ices/lcg/glite3.0.21/etc/profile.d/grid_env.sh
 
     . /global/ices/lcg/glite3.0.21/etc/profile.d/grid_env.sh
 
   else
 
   else
     INSTALL_ROOT=/global/ices/lcg/glite<VERSION>
+
     ARCH=`/bin/uname -i`
     . $INSTALL_ROOT/external/etc/profile.d/grid-env.sh
+
    if [ "${RHEL_VERSION}" -eq 4 -o "${ARCH}" = "i386" ]
+
    then
 +
        INSTALL_ROOT=/global/ices/lcg/glite3.1.42
 +
    else
 +
        INSTALL_ROOT=/global/ices/lcg/glite3.2.4
 +
    fi
 +
     . ${INSTALL_ROOT}/external/etc/profile.d/grid-env.sh
 +
 
 
     # fix a few things that Yaim breaks...
 
     # fix a few things that Yaim breaks...
     if [ `/bin/uname -i` = "x86_64" ]
+
    EXTERNAL_BIN=${INSTALL_ROOT}/external/usr/bin
 +
     if [ "$ARCH" = "x86_64" -a -d "${EXTERNAL_BIN}" ]
 
     then
 
     then
       export PATH=$INSTALL_ROOT/external/usr/bin:$PATH
+
       export PATH=${EXTERNAL_BIN}:${PATH}
 
     fi
 
     fi
 
     unset SRM_PATH
 
     unset SRM_PATH
Line 96: Line 103:
  
 
Note that glite 3.0.21 is the last version of glite that is supported on SLC 3.x.
 
Note that glite 3.0.21 is the last version of glite that is supported on SLC 3.x.
('''TODO''') Note that gLite 3.2 is currently not supported via this script.
 
  
 
* copy over glite_wms*conf files from bosui. To make absolutely sure that we're supporting the same VOs on the Nikhef desktops as on <tt>bosui.nikhef.nl</tt> we copy over the glite_wms*conf files and the <tt>vomses</tt> directory from <tt>bosui</tt>:
 
* copy over glite_wms*conf files from bosui. To make absolutely sure that we're supporting the same VOs on the Nikhef desktops as on <tt>bosui.nikhef.nl</tt> we copy over the glite_wms*conf files and the <tt>vomses</tt> directory from <tt>bosui</tt>:

Revision as of 15:56, 11 December 2009

Notes on how to install the gLite UI tarball for Nikhef desktop use

Download the tarballs from the glite website:

Make sure to download both the glite-UI tarball itself and the glite-UI-externals tarball.

Extract the tarballs

  • Log in as the user 'gridadm' on a Nikhef desktop, login.nikhef.nl (SL4) or login2.nikhef.nl (SL5)
  • Go to the global installation directory
cd /global/ices/lcg
  • Create a directory for the new tarball and 'cd' into it,
mkdir glite<VERSION>
cd glite<VERSION>

where <VERSION> denotes the full version number of the glite update, e.g. 3.1.35

  • Unpack the tarballs
tar xzf .../glite-UI-<VERSION>-0.tar.gz
tar xzf .../glite-UI-<VERSION>-0-external.tar.gz

Configure using Yaim

  • Copy a site-info.def from a previous installation
cd /global/ices/lcg/glite<VERSION>
export INSTALL_ROOT=$PWD
cp -rp ../glite3.1.35/site-info.def ../glite3.1.35/vo.d .
  • Modify the INSTALL_ROOT variable to point to the new version
  • Create a grid-security directory, otherwise Yaim will barf:
cd $INSTALL_ROOT/etc
ln -fs ../../grid-security
  • Run Yaim
$PWD/glite/yaim/bin/yaim -c -s $PWD/site-info.def -n UI_TAR

Create the log directory

The user gridadm has a crontab on host ribble.nikhef.nl which keeps the grid certificates up-to-date. The output of this script is written to the directory $INSTALL_ROOT/log, so we'd better make sure this directory exists:

 mkdir $INSTALL_ROOT/log

Clean up after Yaim

There are a few things that need to be cleaned up/corrected after a default Yaim configuration:

  • use the correct grid-security directory
cd $INSTALL_ROOT/external/etc
rm -rf grid-security
ln -fs ../../../grid-security
  • By default Yaim creates symlinks in the directory $INSTALL_ROOT/etc/profile.d:
$INSTALL_ROOT/etc/profile.d/grid-env.csh -> ../../external/etc/profile.d/grid-env.csh
$INSTALL_ROOT/etc/profile.d/grid-env.sh -> ../../external/etc/profile.d/grid-env.sh

We replace these links by scripts that figure out which platform they are running on. Therefore, copy the correct grid-env scripts from the previous release ($INSTALL_ROOT_PREV_RELEASE/etc/profile.d) in the directory etc/profile.d for the new release and create symlinks:

grid_env.csh -> grid-env.csh
grid_env.sh -> grid-env.sh

The contents of the copied scripts contain a hard-coded reference to the current gLite version. Change that version to reflect the correct value for the new installation. The contents of the scripts are shown below.

For csh/tcsh:

set RHEL_VERSION=`/bin/sed -e 's/.* \([0-9]\).*/\1/' /etc/redhat-release`
if ( "$RHEL_VERSION" < 4 ) then
  echo "WARNING WARNING WARNING"
  echo "You're running on RHEL/SLC/CentOS 3.x! glite support for this platform is deprecated!"
  echo " (for now things will/should still work but in the near future this might change...)"
  source /global/ices/lcg/glite3.0.21/etc/profile.d/grid_env.csh
else
  set mycshtmpfile=`mktemp /tmp/gridenv.XXXXXX`
  bash -c "export ISCSHELL=yes ; source /global/ices/lcg/glite<VERSION>/etc/profile.d/grid-env.sh" >> $mycshtmpfile
  source $mycshtmpfile
  rm -f $mycshtmpfile
endif

and for bash/zsh:

if [ "X${GLITE_ENV_SET+X}" = "X" ]
then
  RHEL_VERSION=`/bin/sed -e 's/.* \([0-9]\).*/\1/' /etc/redhat-release`
  if [ "${RHEL_VERSION}" -lt 4 ]
  then
    echo "WARNING WARNING WARNING" 1>&2
    echo "You're running on RHEL/SLC/CentOS 3.x! glite support for this platform is deprecated!" 1>&2
    echo " (for now things will/should still work but in the near future this might change...)" 1>&2
    . /global/ices/lcg/glite3.0.21/etc/profile.d/grid_env.sh
  else
    ARCH=`/bin/uname -i`
    if [ "${RHEL_VERSION}" -eq 4 -o "${ARCH}" = "i386" ]
    then
        INSTALL_ROOT=/global/ices/lcg/glite3.1.42
    else
        INSTALL_ROOT=/global/ices/lcg/glite3.2.4
    fi
    . ${INSTALL_ROOT}/external/etc/profile.d/grid-env.sh
    # fix a few things that Yaim breaks...
    EXTERNAL_BIN=${INSTALL_ROOT}/external/usr/bin
    if [ "$ARCH" = "x86_64" -a -d "${EXTERNAL_BIN}" ]
    then
      export PATH=${EXTERNAL_BIN}:${PATH}
    fi
    unset SRM_PATH
  fi
fi

Note that glite 3.0.21 is the last version of glite that is supported on SLC 3.x.

  • copy over glite_wms*conf files from bosui. To make absolutely sure that we're supporting the same VOs on the Nikhef desktops as on bosui.nikhef.nl we copy over the glite_wms*conf files and the vomses directory from bosui:
    • Make a tarball of the config files:
slogin bosui
cd /opt/glite/etc
tar czvf ~/glite-conf.tar.gz */glite*conf vomses
    • Copy over the file and extract it:
cd $INSTALL_ROOT/glite/etc
scp <user>@bosui:glite-conf.tar.gz .
tar xzvf glite-conf.tar.gz
rm glite-conf.tar.gz

Test the new installation

  • Load the environment first
. /global/ices/lcg/glite<VERSION>/etc/profile.d/grid-env.sh

and watch for any warnings/errors

  • Generate a proxy
voms-proxy-init -voms pvier
  • Delegate your proxy to the WMS
glite-wms-job-delegate-proxy -d $LOGNAME.test
  • Do a job list match:
glite-wms-job-list-match -d $LOGNAME.test HelloWorld.jdl