...
Usługa Powszechnej Archiwizacji – PLATON (nazywana dalej w skrócie usługą PLATON lub usługą powszechnej archiwizacji), jest adresowana do polskiego środowiska naukowego i służy do składowania kopi zapasowych i archiwalnych dużych wolumenów danych. W przypadku użytkowników portalu PL-Grid, wgrane dane są utrzymywane w dwóch kopiach, w rozproszonych geograficznie ośrodkach KDM. Użytkownik korzysta z usługi przez protokół sftp lub GridFTP. Dostęp do usługi możliwy jest z poziomu jednego z węzłów dostępowych PL-Grid (tj. z UI). W PLATON-ie serwery pozwalające na dostęp do usługi nazywane są punktami dostępowymi. Punkty dostępowe PLATON są rozmieszczone w tych samych ośrodkach co węzły dostępowe PL-Grid. Każdy punkt dostępowy PLATON eksponuje dokładnie tą samą przestrzeń danych. Pomijając kwestie wydajnościowe, bez znaczenia jest, za pośrednictwem którego z punktów dostępowych PLATON, użytkownik korzysta z usługi. Punkty dostępowe PLATON składują dane użytkowników w punktach składowania. Lokalizacja punktów składowania danych również pokrywa się z lokalizacją węzłów dostępowych PL-Grid. Docelowe punkty składowania danych są wybierane przez inteligentne algorytmy realizowane przez punkty dostępowe PLATON. Przy wyborze punktu składowania danych uwzględnia się takie parametry jak lokalizacja użytego punktu dostępowego PLATON oraz chwilowa dostępność punktów składowania w potencjalnych docelowych lokalizacjach. Dane użytkowników portalu PL-Grid są replikowane w trybie asynchronicznym, tj. gdy użytkownik wgrywa plik, najpierw trafia on do możliwie najbliższego punktu składowania danych, a następnie, gdy wgrywanie się zakończy, to w tzw. tle tworzona jest jego kopia w punkcie składowania położonym w innej lokalizacji. Głównym celem rozproszenia geograficznego danych jest zwiększenie bezpieczeństwa i dostępności danych. Przy świadomym wykorzystaniu tego mechanizmu, może on podnosić również wydajność.
Istotną cechą systemu jest fizyczny sposób składowania danych. Z uwagi na koszt jednostkowy przechowywania dużych wolumenów danych, w tym konkretnym wdrożeniu usługi PLATON, dane użytkowników, ostatecznie trafiają na bibliotekę taśmową. Oznacza to, że późniejsza próba dostępu do danych może się wiązać nawet z kilku minutowym opóźnieniem związanym z pracą tzw. robota ładującego taśmy oraz z oczekiwaniem na dostęp do wolnego (tj. nie zajętego przez inne taśmy) czytnika taśm. Jest to właściwość, która dość jasno determinuje przeznaczenie i scenariusze wykorzystania usługi (tworzenie archiwów i kopii zapasowych, składowanie dużych plików, rzadki odczyt danych).
...
Usługa jest dostępna poza systemem przydziału grantów, dlatego jest dostępna dla każdego użytkownika portalu i nie wymaga specyfikacji w grantach.Z uwagi na uwarunkowania techniczne, aktywowanie usługi jest możliwe dopiero po zarejestrowaniu w portalu PL-Grid certyfikatu SimpleCA lub
...
Aby aktywować usługę, postępuj zgodnie z instrukcjami zawartymi w Katalogu Aplikacji i Usług po uprzednim wyszukaniu usługi. Wygeneruj też certyfikat Simple CA lub zarejestruj certyfikat Polish Grid CA (patrz:
...
Gdy usługa zostanie aktywowana, to dostęp do niej będzie możliwy z poziomu węzłów dostępowych PL-Grid wymienionych PLGrid wymienionych poniżej w sekcji "Punkty dostępowe PLATON".
...
Teoretycznie, protokoły dostępowe sftp i gridftp pozwalają na wykonanie na zdalnych plikach operacji zmiany grupy będącej właścicielem danego pliku (operacja chmod). Standardowo, w systemie Linux, jeśli użytkownik jest właścicielem pliku, to może zmieniać atrybut pliku określający grupę będącą właścicielem danego pliku. Jest to jednak możliwe tylko w zakresie grup do których użytkownik sam należy. Infrastruktura PL-Grid zapewnia, że użytkownicy portalu PL-Grid mają automatycznie zakładane konta na węzłach dostępowych. Na każdy węzeł można się zalogować przy pomocy tej samej nazwy użytkownika i hasła, których używa się w portalu. Trzeba mieć na uwadze, że w środowisku PL-Grid na każdym z węzłów dostępowych UID przydzielony użytkownikowi jest inny, brak jest możliwości wykonania operacji chmod. PL-Grid na każdym z węzłów dostępowych UID przydzielony użytkownikowi jest inny, brak jest możliwości wykonania operacji chmod.
Z punktami dostępowymi usługi PLATON (tzw. AN) zawsze łączymy się z poziomu jednego z węzłów dostępowych PL-Grid (tzw. UI). Jeśli połączenia będą nawiązywane z najbliższym punktem dostępowym, to poprawi to wydajność dostępu do danych. Tabela zestawiająca lokalizacje punktów AN i węzłów UI znajduje się w dalszej części dokumentu.
...
Na wstępie , zaznaczę należy zaznaczyć różnice między pomiędzy terminami: węzeł dostępowy, punkt dostępowy, punkt składowania danych i lokalizacja.
Przez węzeł dostępowy lub serwer dosępowy dostępowy rozumiemy jeden z serwerów infrastruktury PL-Grid, wymieniony w punkcie "Punkty dostępowe PLATON" w tabeli zestawiającej węzły PL-Grid z najbliższym punktami dostępowymi PLATON.
Punkt dostępowy, to z kolei jeden z serwerów infrastruktury Usługi Powszechnej Archiwizacji - PLATON.
...
Logujemy się na jeden z serwerów dostępowych PL-Grid.
Używając jednego z punktów dostępowych PLATON (patrz tabela Punkty dostępowe PLATON) oraz klucza dostarczanego przez keyfs i dostępnego pod ścieżką /mnt/keyfs/users/<username>/.globus/userkey.pem, nawiązujemy połączenie z usługą:
Code Block |
---|
sftp -o IdentityFile=/mnt/keyfs/users/<username>/.globus/userkey.pem <platon_access_node> |
gdzie,
-o IdentityFile to parametr wskazujący klucz prywatny użytkownika,
<username> to nazwa użytkownika PL-Grid,
<platon_access_node> to nazwa punktu dostępowego PLATON, np. an6-plg.storage.pionier.net.pl
UWAGA: Klucz prywatny użytkownika jest chroniony hasłem ustawionym z poziomu portalu PL-Grid. Program sftp, podczas uwierzytelniania w usłudze, poprosi nas o podanie tego hasła.
Po poprawnym uwierzytelnieniu, program sftp dostarcza standardowego interfejsu w postaci tekstowej konsoli sftp. Domyślnie, bezpośrednio po uzyskaniu dostępu, zdalnym katalogiem roboczym jest katalog domowy użytkownika. Do wyświetlenia listy dostępnych komend służy polecenie help.
Code Block |
---|
sftp> help Available commands: bye Quit sftp cd path Change remote directory to 'path' chgrp grp path Change group of file 'path' to 'grp' chmod mode path Change permissions of file 'path' to 'mode' chown own path Change owner of file 'path' to 'own' df [-hi] [path] Display statistics for current directory or filesystem containing 'path' exit Quit sftp get [-P] remote-path [local-path] Download file help Display this help text lcd path Change local directory to 'path' lls [ls-options [path]] Display local directory listing lmkdir path Create local directory ln oldpath newpath Symlink remote file lpwd Print local working directory ls [-1aflnrSt] [path] Display remote directory listing lumask umask Set local umask to 'umask' mkdir path Create remote directory progress Toggle display of progress meter put [-P] local-path [remote-path] Upload file pwd Display remote working directory quit Quit sftp rename oldpath newpath Rename remote file rm path Delete remote file rmdir path Remove remote directory symlink oldpath newpath Symlink remote file version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help |
Przykład wgrania do usługi PLATON pliku /etc/profile:
Code Block |
---|
sftp> put /etc/profile Uploading /etc/profile to /home/kmd/plgrid-portal/users/plggracjan/profile /etc/profile 100% 1796 1.8KB/s 00:00 |
Przykład wyświetlenia listy plików wgranych do usługi:
Code Block |
---|
sftp> ls profile |
Przykład pobrania z usługi pliku profile. Plik zostanie zapisany na UI w bieżącym katalogu roboczym:
Code Block |
---|
sftp> get profile Fetching /home/kmd/plgrid-portal/users/plggracjan/profile to profile /home/kmd/plgrid-portal/users/plggracjan/prof 100% 1796 1.8KB/s 00:00 |
Przykład usunięcie pliku profile z usługi:
Code Block |
---|
sftp> rm profile Removing /home/kmd/plgrid-portal/users/plggracjan/profile |
Zakończenie pracy z sfpt:
Code Block |
---|
sftp> exit |
Program sshfs pozwala na podmontowanie montowanie w lokalnym katalogu zasobu dostępnego poprzez protokół sftp. Przykładowa procedura użycia tego programu wygląda następująco:
Logujemy się na jeden z serwerów dostępowych PL-Grid.
W katalogu domowym (na serwerze dostępowym PL-Grid) zakładamy katalog pomocniczy, do którego następnie podmontujemy montujemy przestrzeń udostępnianą przez usługę PLATON.
Code Block |
---|
mkdir platon-backup |
Używając jednego z punktów dostępowych usługi PLATON (patrz tabela Punkty dostępowe PLATON) oraz klucza dostarczonego przez keyfs i dostępnego pod ścieżką /mnt/keyfs/users/<username>/.globus/userkey.pem, montujemy przestrzeń wystawianą przez usługę w lokalnym katalogu (w tym przypadku w katalogu platon-backup):
Code Block |
---|
sshfs -o idmap=user,gid=$(id -g) -o IdentityFile=/mnt/keyfs/users/<username>/.globus/userkey.pem <platon_access_node>:. platon-backup |
gdzie,
-o idmap=user to parametr włączający mapowanie UID-ów właściciela plików po stronie serwera ssh na UID-y lokalnego użytkownika, jest to parametr pomagający trochę ukryć niedogodności wynikające z faktu że w PL-Grid ten sam użytkownik ma różne UID-y na róźnych węzłach dostępowych
-o IdentityFile to parametr wskazujący ścieżkę do klucza prywatnego użytkownika,
<username> to nazwa użytkownika PL-Grid,
<platon_access_node> to nazwa punktu dostępowego usługi PLATON
UWAGA: Klucz prywatny użytkownika jest chroniony hasłem ustawionym z poziomu portalu PL-Grid. Program sftp, podczas uwierzytelniania w usłudze, poprosi nas o podanie tego hasła.
Po poprawnym zakończeniu powyższego polecenia, przestrzeń udostępniana przez usługę PLATON powinna być dostępna na serwerze dostępowym PL-Grid w katalogu domowym użytkownika w podkatalogu platon-backup.
Wgrywanie, pobieranie i usuwanie plików z usługi PLATON, sprowadza się do standardowych operacji na systemie plików.
Ewentualnego odmontowania przestrzeni dokonujemy poleceniem:
Code Block |
---|
fusermount -u platon-backup |
gdzie,
platon-backup to ścieżka do katalogu w którym podmontowaliśmy wcześniej przestrzeń wystawioną przez usługę PLATON, w tym przypadku jest to ścieżka względna, bezpośrednio wskazująca na katalog w bieżącym katalogu roboczym
...