GridFTP: Lotman Quickstart

This information is provided as a preview only and will be moved to development documentation for the next dev release (4.1.3).

This is a quickstart guide to using Lotman, a program for managing storage in GridFTP. For more information, click here.

Create a lot

A lot is an allotment of physical disk space to be managed by Lotman. All files under a given directory will be managed according to the parameters with which the lot was created. The program lotman_init is used to create lots:

lotman_init <root> <size> <pending default> <pending max> 
            <lot default> <lot max> <default quota>
            [--auto <auto user quota>]
            [--glob <user id> <user identity> <user quota>]
            [--thresh <global[%]> <user quota[%]> <lot[%]>]

root
The directory under which all files are managed.
size
The overall size of the lot.
pending default
The default amount of time for data to be 'outstanding' (30 is a good default choice). Under applications like GridFTP, data is committed to the disk in chunks. Disk space acquisition is a two phase process. The application 'requests' an amount of space from the lot. Once the application actually writes data to the disk it 'commits' this data to the lot. The pending time is the amount of time between the request and the commit.
pending max
The maximum amount of time for data to be 'outstanding' (60 is a good default).
lot default
The default life span of a user-created lot.
lot max
The maximum lifespan of a user-created lot.
default quota
The default size of the disk space allocated to a user.

Note: Before lotman_init can be run, the environment variable LOTMAN_META must be set.

To create a 10MB lot under the directory /home/globus/LOT with a 30 second pending default, a 60 second max pending, 1day lot default, and a 10 day max, with a default quota of 5MB, run the following:

% export LOTMAN_META=/home/globus/LOTMETA
% lotman_init /home/globus/LOT 10M 30 60 1d 10d 5M        

Create users

In order to make use of a lot, you must create user accounts with the tool lotman_user.

lotman_user <uid> <identity> [<quota>]

uid
A given UNIX user's uid.
identity
Given user's UNIX username.
quota
This parameter gives an opportunity to override the default quota that was used in lotman_init.

Run with a GridFTP server

To use Lotman with a GridFTP server, the following environment variables must be set:

LOTMAN_GFSACL_META_DIR=<path to lot meta data>
LOTMAN_GFSACL_LOT_DURATION=<lot duration, 30 days is good>
LOTMAN_GFSACL_LOG_FLAGS=all,details
LOTMAN_GFSACL_LOG_FILE=<log filei path>
LOTMAN_GFSACL_PENDING_DURATION=<pending time, 30 is good>

Once set, the GridFTP server is run with an additional argument:

globus-gridftp-server -acl lotman

At this point, all data sent to the GridFTP server and written to the Lotman root directory will be managed by Lotman.

Comments

It would be good if the Lotman ACL could use the same environmental variables as lotman_init and, further, if it could pick up defaults from the Lotman metadata directory instead of forcing the sysadmin to set them.