Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| software:globus:caviness [2024-04-08 12:03] – [Where is my Globus home?] anita | software:globus:caviness [2024-04-08 14:49] (current) – [Request a Globus home staging point] anita | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Using Globus on Caviness ====== | ||
| + | ===== Overview ===== | ||
| + | Moving personal data onto and off of the Caviness cluster using the Globus file transfer service uses a staging area on the ''/ | ||
| + | |||
| + | - When you authenticate to activate your Caviness collection, Globus generates a certificate that identifies that activation. | ||
| + | - All navigation and file transfer requests against your Caviness collection are authenticated by that certificate. | ||
| + | - When you share that collection, you are essentially giving your certificate to other Globus users so that they access your Caviness collection as you. | ||
| + | - Thus, //any content to which you have access on your Caviness collection is also visible to the Globus users with whom you've shared access//. | ||
| + | |||
| + | If we were to simply expose the entirety of ''/ | ||
| + | |||
| + | A user requesting Globus-accessible storage is provided a directory (named with the uid number, e.g. 1001) which is his/her staging point: | ||
| + | |||
| + | === Getting files off Caviness === | ||
| + | * Make files already on ''/ | ||
| + | * Copy files from home or workgroup storage to ''/ | ||
| + | * **Please note:** do not create symbolic links in ''/ | ||
| + | |||
| + | === Moving data to Caviness === | ||
| + | * The ''/ | ||
| + | * Files copied to ''/ | ||
| + | |||
| + | <WRAP center round important 60%> | ||
| + | **PLEASE BE AWARE** that all data moved to Caviness will be consuming storage space on the shared scratch filesystem, ''/ | ||
| + | |||
| + | Should capacity be neared, IT may request that you remove data on ''/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | <WRAP center round alert 60%> | ||
| + | **PLEASE REFRAIN** from modifying the group ownership and permissions on ''/ | ||
| + | </ | ||
| + | |||
| + | ===== Request a Globus home staging point ==== | ||
| + | <WRAP center round alert 60%> | ||
| + | Only available to UD accounts (UDelNet ID) **not** Guest accounts (// | ||
| + | </ | ||
| + | |||
| + | Please submit a [[https:// | ||
| + | |||
| + | ===== Where is my Globus home? ===== | ||
| + | You can find your uid number using the '' | ||
| + | |||
| + | <code bash> | ||
| + | $ id -u | ||
| + | 1001 | ||
| + | </ | ||
| + | |||
| + | This user's Globus home directory would be ''/ | ||
| + | |||
| + | <code bash> | ||
| + | export GLOBUS_HOME="/ | ||
| + | </ | ||
| + | |||
| + | On login, the GLOBUS_HOME environment variable will point to your Globus home directory: | ||
| + | |||
| + | <code bash> | ||
| + | $ echo $GLOBUS_HOME | ||
| + | / | ||
| + | |||
| + | $ ls -l $GLOBUS_HOME | ||
| + | total 100715 | ||
| + | -rw-r--r-- 1 frey everyone 104857600 Jul 30 15:27 borkbork | ||
| + | drwxr-xr-x 2 frey everyone | ||
| + | -rw-r--r-- 1 frey everyone 104857600 Jul 30 15:27 zeroes | ||
| + | </ | ||
| + | |||
| + | ===== Activating your collection ===== | ||
| + | Start by navigating to the [[http:// | ||
| + | |||
| + | * Choose the **University of Delaware** as your organization and click the **Continue** button; on the next page enter your UDelNet Id and Password and continue on to the dashboard. | ||
| + | |||
| + | Click the “File Manager” button {{: | ||
| + | | ||
| + | {{: | ||
| + | |||
| + | The "**UD CAVINESS Cluster - Staging Directory**" | ||
| + | |||
| + | If successful (and you have a Globus home directory) the list of files in ''/ | ||
| + | | ||
| + | {{: | ||
| + | |||
| + | ===== Guest collections ===== | ||
| + | To share your files with others via Globus, a user can create a Guest Collection, which enables sharing a directory in a user’s Globus Home directory. | ||
| + | To create a Guest Collection, you need to first go to the collection details. You can either click the three dots next to the collection: | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Or right click on the directory you would like to share and select “Share” | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Click “Add Guest Collection” in the “Collections” tab | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Make sure you at least set the “Directory” and “Display Name” properly. It’s a good idea to fill in the other fields as well: | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Once the guest collection is created, you may want to set the permissions of this guest collection, e.g. sharing with specific individuals, | ||
| + | |||
| + | Click the " | ||
| + | |||
| + | <WRAP center round important 60%> | ||
| + | **PLEASE NOTE: | ||
| + | </ | ||
| + | |||
| + | ===== Examples ===== | ||
| + | |||
| + | ==== Data Upload Repository ==== | ||
| + | In this example, a directory is created under the '' | ||
| + | |||
| + | <code bash> | ||
| + | $ mkdir -p $GLOBUS_HOME/ | ||
| + | </ | ||
| + | |||
| + | A series of transfers are scheduled in the Globus web interface, placing the files in this directory. | ||
| + | |||
| + | After the files have been uploaded, the user moves them from this staging directory to a shared location his workgroup will be able to access: | ||
| + | <code bash> | ||
| + | $ mkdir -p / | ||
| + | $ mv $GLOBUS_HOME/ | ||
| + | </ | ||
| + | |||
| + | Since the source and destination paths are both on the / | ||
| + | |||
| + | ==== Moving to Workgroup Storage ==== | ||
| + | If the final destination of the incoming dataset is the workgroup storage (e.g. a path under '' | ||
| + | <code bash> | ||
| + | $ rsync -ar $GLOBUS_HOME/ | ||
| + | </ | ||
| + | |||
| + | The trailing slashes ("''/''" | ||
| + | |||
| + | See the man page for '' | ||
| + | |||
| + | ==== Data Upload Repository (Large Files) ==== | ||
| + | |||
| + | In the previous example the dataset consisted of many small (4 GB or less) files. | ||
| + | |||
| + | The default striping on ''/ | ||
| + | |||
| + | <code bash> | ||
| + | $ cd $GLOBUS_HOME/ | ||
| + | $ mkdir 20200103T1552-2x1G | ||
| + | $ lfs setstripe --stripe-count 2 --stripe-size 1G 20200103T1552-2x1G | ||
| + | $ ls -ld 20200103T1552-2x1G | ||
| + | drwxr-xr-x 2 frey everyone 95744 Jan 3 15:55 20200103T1552-2x1G | ||
| + | $ lfs getstripe 20200103T1552-2x1G | ||
| + | 20200103T1552-2x1G | ||
| + | stripe_count: | ||
| + | </ | ||
| + | |||
| + | The choice of 1 GB was somewhat arbitrary; in reality, the stripe size is often chosen to reflect an inherent record size associated with the file format. | ||
| + | |||
| + | Globus is used to transfer a data file to this directory. | ||
| + | |||
| + | <code bash> | ||
| + | $ cd $GLOBUS_HOME/ | ||
| + | $ ls -l | ||
| + | total 38 | ||
| + | -rw-r--r-- 1 frey everyone 10485760000 Jan 3 15:57 db-20191231.sqlite3db | ||
| + | $ lfs getstripe db-20191231.sqlite3db | ||
| + | db-20191231.sqlite3db | ||
| + | lmm_stripe_count: | ||
| + | lmm_stripe_size: | ||
| + | lmm_pattern: | ||
| + | lmm_layout_gen: | ||
| + | lmm_stripe_offset: | ||
| + | obdidx objid objid group | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | When this file (or directory) is moved to another directory on ''/ | ||
| + | |||
| + | <code bash> | ||
| + | $ mv $GLOBUS_HOME/ | ||
| + | > / | ||
| + | $ lfs getstripe / | ||
| + | / | ||
| + | lmm_stripe_count: | ||
| + | lmm_stripe_size: | ||
| + | lmm_pattern: | ||
| + | lmm_layout_gen: | ||
| + | lmm_stripe_offset: | ||
| + | obdidx objid objid group | ||
| + | | ||
| + | | ||
| + | </ | ||