GridFTP
Izvor: CRO NGI
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].
