Instructions to deploy and configure a gip information provider for pure xrootd storages

Prerequisites

In order to have a running provider, bdii need to be installed and properly configured. This is already done if you are installing on a host already running a site or resource bdii for other services. If you are installing on a different machine, it is advised to have a 5.X bdii installed, as configuring it may be as easy as installing the rpm (eg. for SL 5.5).

It is also required to have a working xrd command from xrootd. The provider scripts allow to specify which xrd to use, so existing xootd installation may be used. Note that a recent xrootd version is required, as space reporting by xrd is a relatively recent feature. The NIHAM-xrootd yum repository described in the following provides working xrootd rpms.

In order to report the xroot GlueService, you need to have glite-info-provider-service package installed, as the service provider uses it.

Generic installation

The provider consists in 2 scripts, one for providing SE-related data (SE,SA etc. entries) called glite-info-se-xrootd, and another, called glite-info-service-xrootd for providing data for glite-info-service information provider from glite-info-provider-service package. Both scripts may be run with --help option to get the available options. NIHAM-xrootd repository include glite-info-provider-SE_xrootd package containing the 2 scripts in /opt/glite/libexec. If you don't install the rpm package, just grab them from the rpm in the repository. No specific location is required for this scripts, you may install them anywhere.

Generic configuration

Configuring the information provider consist in making configuration file(s) for service provider and wrapper scripts in /opt/glite/etc/gip/provider for both service and se providers.

The wrapper script for se provider should contain one call to glite-info-provider-SE_xrootd with appropriate options for each SE you wish to report. A typical content would be:

#> cat se-xrootd 
#!/bin/sh
/opt/glite/libexec/glite-info-se-xrootd --site "mysite" --vo "myvo" --proto "2.9.6" --sec "tkauthz" --host "myredirector.mydomain.org"
#>

The wrapper script for service provider should contain one call to glite-info-service indicating a config file for each SE you wish to report. A typical content would be:

#> cat service-xrootd 
#!/bin/sh
/opt/glite/libexec/glite-info-service "/opt/glite/etc/gip/glite-info-service-xrootd-A.conf" "mysite"
#>

The config file for the service provider should be produced from the template file /opt/glite/etc/glite-info-service-xrootd.conf.template present in rpm package, following the instructions in the file. A typical content would be:

#> cat glite-info-service-xrootd-A.conf
init = /opt/glite/libexec/glite-info-service-xrootd --host "myredirector.mydomain.org"
service_type = xroot
get_version = echo "2.9.6"
get_endpoint = echo $GLITE_INFO_SERVICE_ENDPOINT
get_status = echo "$GLITE_INFO_SERVICE_xrootd_message"; exit $GLITE_INFO_SERVICE_xrootd_state
WSDL_URL = none
semantics_URL = http://xrootd.org/
get_starttime = echo "$GLITE_INFO_SERVICE_xrootd_starttime"
get_data = echo
get_services = echo
get_owner = echo "myvo";
get_acbr = echo "VO:myvo";
#>

You may test your configuration by running the warpper scripts. It is a good ideea to produce the wrapper scripts first outside of /opt/glite/etc/gip/provider and move them there after you tested them.

After few minutes, you should see the storage reported in bdii. After at most 1h, you should see it in GSTAT.

Installation using NIHAM-xrootd repository

NIHAM-xrootd yum repository provides info provider and additional packages for SL5.5, x86_64. The packages are GPG signed. In order to have the repository and GPG checking properly working, the following steps must be performed:

  1. Install NIHAM-xrootd repository info:
    wget http://niham.nipne.ro/NIHAM-repo/sl/NIHAM-repo-xrootd-1-1.noarch.rpm
    
    yum localinstall NIHAM-repo-xrootd-1-1.noarch.rpm
  2. Import NIHAM-xrootd repository key:
    rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-NIHAM-repo-xrootd

    Alternatively, you may disable GPG check in /etc/yum.repos.d/NIHAM-repo-xrootd.repo and /etc/yum.conf.

Alternatively for using NIHAM-xrootd repository, you may download the corresponding packages from http://niham.nipne.ro/NIHAM-repo/sl/5.5/x86_64/ and 'yum localinstall' them.

Using NIHAM-xrootd repository, installing a working xrd command consists in:

yum install xrootd-clients

This will also trigger the installation of xrootd package.

The provider may be installed with:

yum install glite-info-provider-SE_xrootd

The yaim module may be installed with:

yum install glite-yaim-SE_xrootd_info

Note that, in order for the yaim module installation to succeed, you must have glite-yaim-core in one of the configured repositories.

Configuring xrootd info provider using yaim

Using yaim, the information provider may be configured performing the following steps:

  1. Copy /opt/glite/yaim/examples/siteinfo/services/glite-se_xrootd_info to your config tree and adapt it according to the instructions in the file.

    For the simplest case, when you have 1 SE for 1 vo the essential content of the file is something like:

    XROOTD_SES="A"
    XROOTD_HOST_A="myredirector.mydomain.org"
    XROOTD_VOS_A="myvo"
    XROOTD_PROTO_A="2.9.6"
    XROOTD_SEC_A="tkauthz"

    Verify that your configuration is valid:

    /opt/glite/yaim/bin/yaim -s your-site-info.def -n SE_xrootd_info -v
  2. Configure the SE_xrootd_info node type:
    /opt/glite/yaim/bin/yaim -s your-site-info.def -n SE_xrootd_info -c

You may check that 2 wrapper scripts, se-xrootd and service-xrootd were generated in /opt/glite/etc/gip/provider. Also, one or more configuration files for the service info provider must have been generated in /opt/glite/etc/gip called glite-info-service-xrootd-*.conf.

Troubleshooting

The information provider caches the output from various calls to xrd command in /tmp/glite-info-service-xrootd.* and /tmp/glite-info-se-xrootd.* files. This allows it to respond properly when xrootd server is not responding. You may safely delete this files, they will be regenerated first time when xrootd server is responding.

Claudiu Schiaua