release notes | Book: 1.9.5, 1.9.12 (opt, FHS), 2.11 (FHS), 2.12 (FHS), 2.13 (FHS), 2.14 (FHS), | Wiki | Q&A black_bg
Web: Multi-page, Single page | PDF: A4-size, Letter-size | eBook: epub black_bg

Defining the HSM interface.

Each individual pool, which is expected to exchange data with an HSM, has to define a dCache external method to flush/fetch datasets into/from one or more connected HSM’s. The command decribed below has either to be given in the command line interface of the corresponding pool while the pool is active (don’t forget so save) or may be added to the pool setup file commands prior to starting the pool.

     Syntax : hsm set <hsmName> -command=<fullPathToExternalCommand>
     
     Example :
         
	     hsm set osm -command=/usr/d-cache/jobs/osm-hsmcp.sh
	 or
	     hsm set enstore -command=/usr/d-cache-deployment/jobs/real-enstore.sh

The external method, which might be a shell script or a binary, is called by the dCache with a set of positional arguments (see below). In addition, options may be specified which are appended to the regular argument list on calling the external method.

     Syntax : hsm set <hsmName> -<key>=<value>
     
     Example :
         
	     hsm set osm -command=/usr/d-cache/jobs/osm-hsmcp.sh
	     hsm set osm -pnfs=/pnfs/desy.de -somethingElse=true

This will result in excuting the following command line whenever a file has to be exchanged with an HSM.

/usr/d-cache/jobs/osm-hsmcp.sh put|get <pnfsId> <LocalFilename> \
        -si=<See Below> \
        -pnfs=/pnfs/desy.de   \
        -somethingElse=true