XSEDE GridFTP Service Availability Publishing ============================================= XSEDE service providers (SPs) must publish information about GridFTP services they want XSEDE users to be able to discover and use. All the information that SPs publish about services, including GridFTP services, is entered by SPs into text files on their resources. Information in these files is in a standard format defined by the IPF package used to publish software and service information into XSEDE central information services. Steps for creating and updating a GridFTP service published information file. 1. Create a file for each unique GridFTP endpoint with the contents of the example below, by copying a previous similar file, or by copying a TeraGrid kit GridFTP service publishing file (see “NOTE about TeraGrid compatibility” below). Each unique hostname plus port is a unique GridFTP endpoint. All XSEDE service publishing files live in a single directory. We recommend /etc/ipf/services/ (or $IPF/etc/services if your IPF was a non-RPM install), though you could place them anywhere. This directory must match the SERVICEPATH configured during the IPF installation. The file can have any unique name, though we recommend this name format: “org.globus.gridftp-[-].conf Each non-comment line should have the format “keyword = value”, where value is double quoted if it contains special characters. Example of a GridFTP published information file: ______________________________________________________________________________ #%Service1.0################################################################### ## ## $SERVICEPATH/org.globus.gridftp-6.0.1.conf ## Name = org.globus.gridftp Version = 6.0.1 Endpoint = gsiftp://your_hostname.site.xsede.org:2811/ Capability = data.transfer.striped Capability = data.transfer.nonstriped SupportStatus = testing Extensions.go_transfer_xsede_endpoint_name = "default" Extensions.go_transfer_xsede_endpoint_displayname = "XSEDE TestEndpoint" Extensions.go_transfer_xsede_endpoint_description = "XSEDE TestEndpoint is a fictitious XSEDE GridFTP/Globus Transfer endpoint." Extensions.go_transfer_xsede_share_enabled_directories = “/oasis/scratch-comet/$USER/temp_project/shared/:/oasis/scratch/comet/$USER/temp_project/shared/" ______________________________________________________________________________ 2. Update the file with the following base fields: Name must be “org.globus.gridftp” which is the GLUE2 Primary protocol name. Version should be your GridFTP server version. Endpoint must include the public hostname and port in the example format. You must deploy a server running on the default port 2811. Alternate or testing servers may run on alternate ports. One or more Capability lines containing one of the values in this table: Table of Valid Name, Version, and Capability values for GridFTP services: Name Version Capability org.globus.gridftp {5,6}.y.z data.transfer.striped data.transfer.nonstriped A SupportStatus of development, testing, or production. If SupportStatus is not supplied your service status in the your resource’s RDR status. 3. Update the file with the following Globus Transfer extensions fields Extensions.go_transfer_xsede_endpoint_name = (xsede#) Globus transfer "xsede#" endpoints are created automatically for registered GridFTP servers based on the resource name. To set an alternate name set Extensions.go_transfer_xsede_endpoint_name. Extensions.go_transfer_xsede_endpoint_displayname = (Full text descriptive name) Extensions.go_transfer_xsede_endpoint_description = (Full text description) If you do not define these two extension fields the publishing scripts will try to fill these values in with default values from RDR and elsewhere. Extensions.go_transfer_xsede_share_enabled_directories = The Sharing Enabled Directories extension is to be used to publish which mounted directories are configured within GridFTP to be able to be shared through Globus Transfer. Its value should be a colon delimited list of all paths that are configured to be shared. Note: If a directory is mounted at a different mount point on the data node (where the GridFTP server is installed) than on the login and/or compute nodes, all mountpoints should be listed. (For example, on Comet, the path /oasis/scratch/comet/$USER/temp_project/shared/ on the login nodes is sharing enabled, but on the data mover nodes it is mounted as /oasis/scratch-comet/$USER/temp_project/shared/. In this instance, both paths should be listed) 4. Once your IPF software provider has run confirm that your GridFTP service is listed at: https://info1.dyn.xsede.org:443/wh1/glue2-views-api/v1/services/InterfaceName/org.globus.gridftp/ NOTE about TeraGrid compatibility: the standard format defined by the IPF package is (mostly) content and format compatible with the old TeraGrid kit service registration format. SPs with old TeraGrid kit GridFTP service registration files can migrate them to IPF using these instructions: http://software.xsede.org/development/ipf/ipf-xsede/latest/INSTALL