Difference between revisions of "Transfer Data"

From UFRC
Jump to navigation Jump to search
 
(52 intermediate revisions by 8 users not shown)
Line 1: Line 1:
[[Category:How-To]]
+
[[Category:Essentials]][[Category:Transfer Data]][[Category:Data]]
 
==Overview==
 
==Overview==
This document describes transferring data between a local computer (client) and the HiPerGator (HPG). For the duration of the HiPerGator1 to HiPerGator2 (HPG1->HPG2) transition both HPG1 and HPG2 information will be presented.
+
This document describes transferring data between a local computer (client) and HiPerGator (HPG). For file sharing on the cluster see [https://help.rc.ufl.edu/doc/Sharing_Files Sharing Files]
  
 
=Tools=
 
=Tools=
There is a variety of command-line, Gui, and even web-based tools available for transferring data to or from HiPerGator and between HPG1 and HPG2. Some examples include 'cp, mv, scp, [[Rsync|rsync]], or sftp' on the command-line, FileZilla, Cyberduck, WinSCP, or MobaXTerm Gui sotware, or [[Globus|Globus data transfer tool]] available via a web interface in addition to command-line and Gui versions. The instructions below can be applied to virtuall all of the tools mentioned above.
+
There are a variety of command-line, GUI, and even web-based tools available for transferring data to or from HiPerGator. Command-line tools include, for example, 'cp, mv, scp, [[Rsync|rsync]], sftp, wget, curl, or ncftp (from the ncftp environment module]'. GUI tools like Cyberduck, WinSCP, BitVise SFTP and similar tools can be used on your local computer. [[Globus|Globus data transfer tool]] is available via a web interface in addition to command-line and GUI versions that can be run on your local computer. [https://help.rc.ufl.edu/doc/How_To_Videos#data%20transfer Please visit the HPG how-to video series on Data Transfer for more details.]
  
=Servers=
+
=Transfers within HiPerGator=
;Note: using login (gator) nodes via gator.rc.ufl.edu or hpg2.rc.ufl.edu for sftp transfers is no longer allowed as the connections overwhelm the load-balancing solution that makes the login servers highly-available. Use the dedicated transfer servers for the task.
+
Login servers on HiPergator (hpg.rc.ufl.edu) can be used for [[Rsync|rsync]], copying files with cp or mv depending on the permissions or filesystem ACLs (extended permissions).
  
==HiPerGator1==
+
==Transfers between a local computer and HiPerGator==
To transfer data to or from HiPerGator1 with its main high-performance filesystem available at /scratch/lfs connect to the '<code>rsync.rc.ufl.edu</code>' data transfer server. The name of this server will be changed to point to HiPerGator2 after the HPG1->HPG2 transition is complete.
+
===Globus===
 +
If your data files are large (hundreds of megabytes or gigabytes) then try [[Globus]] first.
  
==HiPerGator2==
+
===SFTP/Rsync===
To transfer data to or from HiPerGator1 with its main high-performance filesystem available at /ufrc connect to the '<code>sftp.rc.ufl.edu</code>' data transfer server.
+
For smaller file sizes, or if Globus is not an option, use SFTP/[[Rsync|rsync]]/scp by connecting to the '<code>hpg.rc.ufl.edu</code>' or '<code>sftp.rc.ufl.edu</code>'. Set port to 22 if you have to specify it. Use your gatorlink credentials to connect. Make sure [[Authentication_With_MFA#Using_MFA_with_GUI_SFTP_Programs|MFA (multi-factor authentication)]] is taken into account to avoid having to go through MFA for every file transferred. You can also use terminal interfaces like [https://tabby.sh/ Tabby] and [https://mobaxterm.mobatek.net/ MobaXterm], which include an GUI SFTP function embedded.
  
==HPG1->HPG2==
+
;Note: If you are using [https://cyberduck.io/ Cyberduck] on a MacOS computer and notice that it is using the old password resulting in a security lockout uncheck 'Use Keychain' in 'Preferences > General'.
To transfer data between /scratch/lfs and /ufrc log into '<code>dtn1.ufhpc</code>' from within HiPerGator. This server has a read-only connection to /scratch/lfs, so the data must flow from /scratch/lfs to /ufrc, but since both filesystems are available at the same time both the linux copy command '<code>cp</code>' and '<code>rsync</code>' will work.
+
 
 +
===JupyterHub===
 +
The easiest way to upload data using JypyterHub is by using the Upload Files button included in the File Browser (Ctrl+Shift+F) menu.
 +
[[File:Jupyterhub upload.png|thumb|left]]
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
==Transferring data from HiPerGator to a remote system/site==
 +
If you are logged into HiPerGator and need to transfer data to or from a remote system or a site use the login nodes. Transfers can also be made from within [[Development_and_Testing|developmental sessions]]. You can use ftp (lftp command), sftp, scp, rsync, or Globus to transfer data out.
 +
 
 +
==Providing access to your data==
 +
===Within HiPerGator===
 +
If you need to share data with another RC user there are two common options to select from.
 +
* First, a [[Globus|Globus Shared Collection]] can be created on any directory you own. Either read, write, or read/write access can be granted to any Globus user and revoked at any time.
 +
* Second, you can submit a [https://support.rc.ufl.edu support request] to have the receiving user added to your group. You may also have to change permissions on the respective directory tree to make the source directory and the files within readable by the receiving user by running 'chmod g+rx <directory>' command on the minimal set of directories that will allow access to the group starting from the source directory and 'chmod g+r *' inside the source directory to make the files readable by the group.
 +
* In some cases it is possible to set up a filesystem [https://help.rc.ufl.edu/doc/ACLs ACL] (access control list) to provide more complicated permission structure for a directory tree or file(s) without changing file ownership or linux permissions. We'd be happy to review your request to see whether setting an ACL may help in a particular case.
 +
 
 +
===Outside of HiPerGator===
 +
If you need to serve data to the outside either publicly or with password protection for collaborations you can:
 +
* Set up a shared end-point in [[Globus]] as shown above. Either read, write, or read/write access to the SEP can be granted to any Globus user and revoked at will by you. Note that the data does not necessarily have to be in /blue. Log into [http://globus.org Globus]; go to the 'Groups' menu and select 'Search For Groups'. Search for 'University of Florida Research Computing' and request to be added to the group. Once added, you will be able to install [https://www.globus.org/globus-connect-personal Globus Connect Personal] and create a Personal Shared End-Point (PSEP) on your local computer, which will work the same way a SEP works on HiPerGator giving you the flexibility to transfer data either way with any other Globus user.
 +
* Submit a [https://support.rc.ufl.edu support request] and we'll help you get set up with serving static data from [https://data.rc.ufl.edu https://data.rc.ufl.edu]
 +
* If you want to create your own application for data sharing you can purchase a unit service for our PubApps web application infrastructure.

Latest revision as of 21:21, 27 June 2022

Overview

This document describes transferring data between a local computer (client) and HiPerGator (HPG). For file sharing on the cluster see Sharing Files

Tools

There are a variety of command-line, GUI, and even web-based tools available for transferring data to or from HiPerGator. Command-line tools include, for example, 'cp, mv, scp, rsync, sftp, wget, curl, or ncftp (from the ncftp environment module]'. GUI tools like Cyberduck, WinSCP, BitVise SFTP and similar tools can be used on your local computer. Globus data transfer tool is available via a web interface in addition to command-line and GUI versions that can be run on your local computer. Please visit the HPG how-to video series on Data Transfer for more details.

Transfers within HiPerGator

Login servers on HiPergator (hpg.rc.ufl.edu) can be used for rsync, copying files with cp or mv depending on the permissions or filesystem ACLs (extended permissions).

Transfers between a local computer and HiPerGator

Globus

If your data files are large (hundreds of megabytes or gigabytes) then try Globus first.

SFTP/Rsync

For smaller file sizes, or if Globus is not an option, use SFTP/rsync/scp by connecting to the 'hpg.rc.ufl.edu' or 'sftp.rc.ufl.edu'. Set port to 22 if you have to specify it. Use your gatorlink credentials to connect. Make sure MFA (multi-factor authentication) is taken into account to avoid having to go through MFA for every file transferred. You can also use terminal interfaces like Tabby and MobaXterm, which include an GUI SFTP function embedded.

Note
If you are using Cyberduck on a MacOS computer and notice that it is using the old password resulting in a security lockout uncheck 'Use Keychain' in 'Preferences > General'.

JupyterHub

The easiest way to upload data using JypyterHub is by using the Upload Files button included in the File Browser (Ctrl+Shift+F) menu.

Jupyterhub upload.png









Transferring data from HiPerGator to a remote system/site

If you are logged into HiPerGator and need to transfer data to or from a remote system or a site use the login nodes. Transfers can also be made from within developmental sessions. You can use ftp (lftp command), sftp, scp, rsync, or Globus to transfer data out.

Providing access to your data

Within HiPerGator

If you need to share data with another RC user there are two common options to select from.

  • First, a Globus Shared Collection can be created on any directory you own. Either read, write, or read/write access can be granted to any Globus user and revoked at any time.
  • Second, you can submit a support request to have the receiving user added to your group. You may also have to change permissions on the respective directory tree to make the source directory and the files within readable by the receiving user by running 'chmod g+rx <directory>' command on the minimal set of directories that will allow access to the group starting from the source directory and 'chmod g+r *' inside the source directory to make the files readable by the group.
  • In some cases it is possible to set up a filesystem ACL (access control list) to provide more complicated permission structure for a directory tree or file(s) without changing file ownership or linux permissions. We'd be happy to review your request to see whether setting an ACL may help in a particular case.

Outside of HiPerGator

If you need to serve data to the outside either publicly or with password protection for collaborations you can:

  • Set up a shared end-point in Globus as shown above. Either read, write, or read/write access to the SEP can be granted to any Globus user and revoked at will by you. Note that the data does not necessarily have to be in /blue. Log into Globus; go to the 'Groups' menu and select 'Search For Groups'. Search for 'University of Florida Research Computing' and request to be added to the group. Once added, you will be able to install Globus Connect Personal and create a Personal Shared End-Point (PSEP) on your local computer, which will work the same way a SEP works on HiPerGator giving you the flexibility to transfer data either way with any other Globus user.
  • Submit a support request and we'll help you get set up with serving static data from https://data.rc.ufl.edu
  • If you want to create your own application for data sharing you can purchase a unit service for our PubApps web application infrastructure.