LFC-min

Introduction

This package is OBSOLETE. It has been replaced by LCG-Utils included in VDT. This page is left here for historical reason and to provide more information about the content (functionalities are equivalent).

Package LFC-min (LFCmin)

Requires VDT-Client installation (to test with WN client) and Pacman (v>3.20). It has been tested on SL3/4 32 bit (x86) platforms.

To work correctly requires a valid host certificate and a valid grid proxy.

Setup

LFC-min is never used by itself. Typical use is through the dq2 enduser tools (tools and Grid setup):
source /share/osg-client-plus/setup.sh
source /share/dq2/dq2.sh 

Example:
> dq2_ls -fv -s CERN fdr08_run1.0003076.StreamEgamma.merge.AOD.o1_r24_t3
get file info from prod-lfc-atlas-local.cern.ch
.
fdr08_run1.0003076.StreamEgamma.merge.AOD.o1_r24_t3   Total: 1  - Local: 1
    fdr08_run1.0003076.StreamEgamma.merge.AOD.o1_r24_t3._0001.1

Installation

On top of an existing VDT-Client (OSG-Client-plus, the one including LCG-Utils, is recommended):
pacman -get http://www.mwt2.org/caches/:LFC-min
(alt. pacman -get http://grid.uchicago.edu/marco/pacman/:LFC-min)

Description

This package includes the minimum requirements to run the python API of LFC (lfc.py) Python API used is used by dq2-enduser tols to interact with LFC (file catalog on LCG)

Beside the Python binding and the shared library (lfc.py _lfc.so) it requires additional library that have been extracted from the gliteUI tarfile installation (as package described in InstallingDQ2AtUC and https://twiki.cern.ch/twiki/bin/view/LCG/TarUIInstall). This package works on SL3/4 32bit (x86) and derived. It has not been tested on other platforms.

Additional libraries (in libext):
  • From glite/globus/lib/ :
libglobus_gssapi_gsi_gcc32dbgpthr.so* libglobus_gss_assist_gcc32dbgpthr.so* libglobus_gsi_proxy_core_gcc32dbgpthr.so* libglobus_gsi_credential_gcc32dbgpthr.so* libglobus_gsi_callb ack_gcc32dbgpthr.so* libglobus_oldgaa_gcc32dbgpthr.so* libglobus_gsi_sysconfig_gcc32dbgpthr.so* libglobus_gsi_cert_utils_gcc32dbgpthr.so* libglobus_openssl_error_gcc32dbgpthr.so* libglobus_proxy_ssl_gcc32dbgpthr.so* libglobus_common_gcc32dbgpthr.so* libssl_gcc32dbgpthr.so* libcrypto_gcc32dbgpthr.so* libltdl_gcc32dbgpthr.so* libglobus_callout_gcc32dbgpthr.s o*
  • From glite/lcg/lib/ :
libCsec_plugin_GSI_thread*
  • From glite/glite/lib/ :
libvomsc_gcc32dbgpthr* ~/addlib/

It is required that the host where the client is running have a valid host certificate

Packaging process

lfc.py and _lfc.so have been extracted from a GliteUI tarfile installation.

The set of required libraries has been extracted from the same installation with a trial and error process involving changes of LD_LIBRARY_PATH and use of strace and LD_DEBUG. strace allowed to find out also the requirement of a valid host certificate. Error messages/codes are not very explicit (if they are returned at all). A short test script invokes directly a critical function.
LFC_HOST='prod-lfc-atlas-local.cern.ch' python ~/lfcshort.py
Where lfcshort.py is:
import lfc #,os
#os.environ['LFC_HOST'] = 'prod-lfc-atlas-local.cern.ch'
aa, as = lfc.lfc_getreplicas(['04E7F9E6-4B1D-DD11-B80B-0030487C7696'], '')
print aa, as

LFC binaries have not been included. Only use through dq2 endusers tool has been tested.

LD_LIBRARY_PATH could be modified within lfc.py to be less invasive.

GliteUI

LFC-min is extracted from the Glite client packaged as tar file distribution. Previously GliteUI, then GliteWN.

Information about the LCG user interface is available here Another link points to thee tar UI install

Here is how to install the LCG UI. This could be useful to prepare future versions or to have a complete LCG UI. In short, to install the gLite you have to get the packages:
$ mkdir glite; cd glite/ 
$ wget http://grid-deployment.web.cern.ch/grid-deployment/download/relocatable/glite-UI/SL4_i686/glite-UI-3.1.4-1-external.tar.gz
$ wget http://grid-deployment.web.cern.ch/grid-deployment/download/relocatable/glite-UI/SL4_i686/glite-UI-3.1.4-1.tar.gz
and:
  • for i in glite*; do tar -zxvf $i; done (On Jan 28 08 I fond them here )
  • edit ./site-info.def to match your local configuration
    • the installation page explains how
    • some values are LCG specific. I configured only INSTALL_ROOT
  • ./glite/yaim/bin/yaim -c -s ./site-info.def -n TAR_UI The command printed the following error (tolerable ocnsidering that this is not a LCG node):
   INFO: -   --   ---  ----  o  oo ooo OOO #### OOO ooo oo  o  ----  ---  --  -
         .  __  _____   ______  ___
         .  \ \/ / _ | /  _/  |/  /  Current Working directory is: /share/glite
         .   \  / __ |_/ // /|_/ /   Site-info file used: Jan 28 16:51 ./site-info.def
         .   /_/_/ |_/___/_/  /_/    Mon Jan 28 16:53:57 CST 2008 : ./glite/yaim/bin/yaim -c -s ./site-info.def -n TAR_UI
         YAIM versions used:
   INFO: Output will be written into log file: /share/glite/./glite/yaim/bin/../log/yaimlog
   INFO: Using site configuration file: ./site-info.def
   INFO: The default location of the grid-env.(c)sh files will be: /share/glite/glite/etc/profile.d
   WARNING: FUNCTIONS_DIR not set using default: /share/glite/./glite/yaim/bin/../functions/
   INFO: Sourcing the utilities in /share/glite/./glite/yaim/bin/../functions//utils
   INFO: Detecting environment
   ERROR: The node-info for service TAR_UI not found in /share/glite/./glite/yaim/bin/../node-info.d nor in /share/glite/./glite/yaim/bin/../defaults/node-info.def

The setup files are in /share/glite/etc/profile.d/ but not always are correct. If you install LCG for testing pay attention not to contaminate the OSG installation and not to modify permanently your environment with LCG specific setups.

-- MarcoMambelli - 21 May 2008
Topic revision: r5 - 27 Aug 2009, MarcoMambelli
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback