GridFTP

Izvor: CRO NGI

Skoči na: orijentacija, traži

Sadržaj

GridFTP

GridFTP je protokol za prijenos podataka u grid okolini zasnovan na protokolu FTP (engl. File Transfer Protocol). Prednosti GridFTP-a su sljedeće:

  • mogućnost podešavanja parametara relevantnih za učinkovitost prijenosa podataka
  • integracija s Grid Security Infrastructure što omogućava autnetikaciju korištenjem zastupničkih certifikata
  • korištenje više paralelnih TCP kanala za prijenos podataka
  • mogućnost parcijalnog prijenosa podataka
  • upravljanje prijenosom između dva udaljena poslužitelja (Third party transfer).

Alat globus-url-copy

Standardna Globus distribucija sadrži naredbu za prijenos datoteka pomoću GridFTP protokola: globus-url-copy. Naredba je nepraktična za korištenje jer je potrebno navoditi puni put do datoteka. Prednost naredbe u odnosu na UberFTP je što omogućava prijenos datoteka između dvaju udaljenih poslužitelja. Još jedna prednost ove naredbe je što omogućava korištenje sljedećih protokola: http, https i ftp.

Obzirom da globus-url-copy omogućava isključivo prijenos datoteka s njim nije moguće ostvariti ostale standardne operacije (npr. prikaz datoteka u direktoriju, premještanje datoteka, brisanje datoteka). Za ostale operacije potrebno je koristiti alat UberFTP.

Sintaksa naredbe je sljedeća:

globus-url-copy [options] <source> <destination>

Adrese polazišta i odredišta su u sljedećem formatu:

gsiftp://<hostname>[:port]/<path>
file:[//]/<path>
http://<address>/<path>
https://<address>/<path>
ftp://<address>/<path>

Najbitnije opcije navedene su u tablici.

Opcije Opis
-a ASCII format
-b binary format (default)
-f <file> datoteka sa listom prijenosa koji se trebaju ostvariti <source> <destination>
-r rekurzivno presnimavanje datoteka
-rst naredba će pokušati ponoviti prijenos u slučaju greške
-rst-retries <num> broj ponovnih pokušaja u slučaju greške (default:5)
-tcp-bs <size> veličina TCP buffera (u byteovima)
-p <channels> broj paralelnih kanala
-bs <size> veličina bloka u bufferu (u byteovima)

Izračun opcije tcp-bs:

bandwidth * RTT * 1000 / 8 

Pri tome se bandwidth izražava u Mb/s, a RTT u ms.

Preporučeni broj paralelnih kanala je 4-8.

Detaljnije upute o korištenju UberFTP-a možete pronaći na sljedećoj adresi: [1].

Primjeri korištenja

1. Prijenos datoteke s lokalnog na udaljeni stoj:

globus-url-copy file:///home/eimamagi/maui.cfg gsiftp://storage.irb.hr/home/eimamagi/

2. Prijenos datoteke s udaljenog na udaljeni stroj (third party transfer):

globus-url-copy gsiftp://storage.irb.hr/etc/hosts gsiftp://cs4.cro-ngi.hr/home/eimamagi/

3. Prijenos svih datoteka iz direktorija:

globus-url-copy gsiftp://cs4.cro-ngi.hr/etc/* gsiftp://ce.irb.cro-ngi.hr/home/eimamagi/

UberFTP

UberFTP je interaktivni GridFTP klijent. Osnovna naredba je:

uberftp [opcije] <adresa_ftp posluzitelja>

Naredbe za rad s datotekama su jednake onima kod standardnog FTP klijenta. Neki od primjera su navedeni u tablici dolje.

Naredba Opis
get, mget prijenos jedne ili više datoteka s udaljenog na lokalno računalo
put, mput prijenos jedne ili više datoteka s lokalnog na udaljeno računalo
ls prikaz svih datoteka u trenutnom direktoriju
rm [-r] <ime> brisanje datoteka u trenutnom direktoriju

Naredbe specifične za protokol GridFTP su navedene u sljedećoj tablici.

Naredba Opis
tcpbuf <size> veličina TCP buffera (u byteovima)
parallel <channels> broj paralelnih kanala
blksize <size> veličina bloka u bufferu (u byteovima)
pput <offset> <size> <file> parcijalni prijenos datoteka

UberFTP omogućava izvođenje samo jedne naredbe na sljedeći način:

uberftp gridftp.server "<naredba>"

Detaljnije upute o korištenju UberFTP-a možete pronaći na sljedećoj adresi: [2].

Globus GridFTP GUI

Globus je ravio grafički alat za pristup podacima putem GridFTP-a koji je moguće koristiti s osobnih računala. Alat GridFTP GUI je ostvaren u programskom jeziku Java i podržava sljedeće platforme:

  • Linux
  • MS Windows
  • MAC.

Osnovni preduvjet za korištenje GridFTP GUI je instalirana Java (dovoljan je JRE paket).

Korisnički certifikat u PEM formatu je potrebno instalirati na standradna mjesta. Na platformi Linux upute za postavljanje se nalaze [[Globus_GSI#Instalacija_certifikata][ovdje]]. Na platformi MS Windows datoteke se spremaju na sljedeća mjesta:

  • C:\Documents and Settings\username\.globus\usercert.pem - korisnički certifikat
  • C:\Documents and Settings\username\.globus\userkey.pem - privatni ključ korisničkog certifikata.

Napomena: Windows Explorer ne omogućava stvaranje direktorija s imenom ".globus" pa je stvaranje potrebno izvesti iz komandne linije (cmd).

Također, potrebno je ručno instalirati CA certifikat i signing policy. Na platformi MS Windows datoteke se spremaju u direktorij:

 C:\Documents and Settings\username\.globus\certificates\ff94d436.0 - CA certifikat
 C:\Documents and Settings\username\.globus\certificates\ff94d436.signing_policy - CA signing policy

Datoteke se mogu pronaći na sljedećim adresama:

 http://ra.srce.hr/globus/ff94d436.0
 http://ra.srce.hr/globus/ff94d436.signing_policy

Napomena: Na platformi Linux je najjednostavnije instalirati paket ca_SRCE iz lcg-CA repoa (aktualna verzija: http://linuxsoft.cern.ch/LCG-CAs/RPMS.production/ca_SRCE-1.27-1.noarch.rpm).

Alat GridFTP GUI pokrenuti s adrese:

http://www-unix.globus.org/cog/demo/ogce/ftp.jnlp

Datoteku ftp.jnlp je moguće spremiti na lokalni disk i koristiti za pokretanje alata.

Prije spajanja na servis GridFTP stvoriti zastupnički certifikat s Security->Create Grid Proxy. Unijeti lozinku koja se koristi pri pozivu grid-proxy-init ili myproxy-manage-create. Po završetku rada preporuča se napraviti Security->Destroy Grid Proxy. S Security->Grid Proxy Info moguće je dobiti informaciju o trajanju zastupničkog certifikata. Ukoliko je zastupnički certifikat istekao ili ne postoji potrebno je ponoviti postupak stvaranja.

Spajanje na udaljeni SE čvor se ostvaruje s tipkom GridFTP. Moguće je otvoriti više konekcija prema više SE čvorova. Za prijenos podataka se koristi pristup Drag-and-Drop.

Više informacija o Globus GridFTP GUI možete pronaći na sljedećoj adresi: [3].

Osobni alati