Recognise SRM

From GridPP Wiki
Jump to: navigation, search

Recognise SRM

How to recognise different SRMs from quite a long way away.

The Problem

You are talking to an SRM, but how do you know whether it is a dCache or a DPM, or something else. After all, the purpose of the Grid is that you shouldn't know (or care).

But if you do want to know, or do care, what do you do.

The recipes here are necessarily heuristic, because different implementations will change as we go along.


1. Query the GIIS/GRIS

Examples below show querying the SE's GRIS. If it is not visible, you can get similar information from the site GIIS.

ldapsearch -x -H ldap:// \
-b mds-vo-name=local,o=grid '(objectClass=GlueSEAccessProtocol)' \

returns entries like:

# gsidcap,, local, grid
dn: GlueSEAccessProtocolLocalID=gsidcap, GlueSEUniqueID=dcache-tape.gridpp.rl.,Mds-Vo-name=local,o=grid
GlueSEAccessProtocolType: gsidcap

so in this case we are talking to dCache. A DPM will return

# rfio,, local, grid
dn: GlueSEAccessProtocolLocalID=rfio,,Mds-Vo-
GlueSEAccessProtocolType: rfio

2. Look at the storage path

Often, sysadmins are fond of (default) storage paths, i.e., the GlueSAPath in the storage schema. For a DPM, the path is likely to contain /dpm/ whereas a dCache is likely to advertise /pnfs/ as a part of its path.

3. Query the web service

In theory, you can get the list of protocols from the SE's getProtocols() interface (assumes we're talking to an SRM version 1 interface). Again, dCache will support DCAP and DPMs will support RFIO. Typically.

This solution is more complicated because you need to talk to the web service, and to do that you must have a certificate (or proxy). However, if you are doing that anyway, then this method may be simpler.

On the other hand, there are no good command line tools for calling getProtocols, and there is no guarantee that the SRM supports it.

Where are the SEs anyway?

If you run a command like this, you should see the SEs registered with LCG:

lcg-infosites --vo dteam se

This is for dteam, of course. Substitute another VO to see SEs available for other VOs. This is lkikely to chnage if support for BDII is removed.