Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Krótki opis usługi

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.

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).

Aktywowanie usługi

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.

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: Certyfikaty).

Gdy usługa zostanie aktywowana, to dostęp do niej będzie możliwy z poziomu węzłów dostępowych PLGrid wymienionych poniżej w sekcji "Punkty dostępowe PLATON".

Ograniczenia w korzystaniu

Każdy użytkownik może przechowywać w usłudze PLATON do 100GB danych.

Z usługi PLATON korzysta się za pośrednictwem typowych programów klienckich obsługujących protokół sftp lub GridFTP. Ponieważ do uwierzytelniania usługa używa certyfikatów (w przypadku protokołu GridFTP) i kluczy (w przypadku protokołu sftp), to przed aktywowaniem usługi, najpierw z poziomu portalu PL-Grid, należy wygenerować a następnie zarejestrować w portalu certyfikat SimpleCA. Możliwe jest też zarejestrowanie certyfikatu Polish Grid CA (jeśli akurat ktoś taki posiada). Jest to istotne, ponieważ dopiero po rejestracji certyfikat i powiązane z nim klucze automatycznie będą widoczne na węzłach dostępowych PL-Grid.

Dostęp do usługi (czyli do punktów dostępowych PLATON) możliwy jest tylko z poziomu serwerów dostępowych PL-Grid. Zakres wykorzystania usługi ograniczony jest do składowania kopii zapasowych i archiwów. Mimo, że dzięki programowi sshfs, przestrzeń dostępną w ramach usługi można podmontować w lokalnym katalogu, to nie należy korzystać z dostarczonej w ten sposób przestrzeni jak z typowego dysku sieciowego (nie wgrywamy dużej ilości małych plików, nie edytujemy plików otwartych bezpośrednio z tej przestrzeni, nie pozwalamy aplikacjom obliczeniowym umieszczać bezpośrednio w tej przestrzeni końcowych lub pośrednich plików wynikowych).

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

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.

Pierwsze kroki

Programy klienckie

Dostęp do usługi może się odbywać tylko z poziomu serwerów dostępowych PL-Grid, za pośrednictwem typowych programów klienckich obsługujących protokoły sftp i gridftp (program sftp, sshfs. globus-url-copy, uberftp). Programem klienckim należy się połączyć z jednym z pięciu punktów dostępowych PLATON (lista adresów poniżej). Do uwierzytelniania użytkowników, usługa używa certyfikatów lub kluczy. Dostępność potrzebnych do uwierzytelnienia certyfikatów lub kluczy zapewniana jest przez infrastrukturę PL-Grid (dokładnie przez wirtualny system plików keyfs).

Schemat integracji usługi z PL-Grid

Na wstępie należy zaznaczyć różnice pomiędzy terminami: węzeł dostępowy, punkt dostępowy, punkt składowania danych i lokalizacja.

Przez węzeł dostępowy lub serwer 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.

Punkt składowania danych to wykorzystywany przez usługę PLATON system informatyczny przeznaczony do bezpiecznego, długoterminowego przechowywania dużych wolumenów danych.Precyzyjne określenie położenia i technologii nie jest istotne, bo z założenia jest przezroczyste dla użytkowników końcowych.

Najbardziej ogólnym pojęciem jest lokalizacja, która oznacza jedynie przybliżone geograficzne odniesienie do miejsca w którym znajduje się ośrodek, w którym są umiejscowione serwery węzłów lub punktów dostępowych oraz punkty składowania danych.

Poniższy rysunek przedstawia relację między węzłami dostępowymi, punktami dostępowymi oraz punktami składowania danych.

 

Image Added

 

Na rysunku widać, że zarówno punkty dostępowe PLATON jak i docelowe punkty składowania danych  znajdują się w tych samych ośrodkach (lokalizacjach) co węzły dostępowe PL-Grid. Podczas korzystania z usługi, wybór punktów składowania jest dla użytkownika przezroczysty. Najczęściej, jeśli będzie to możliwe, pliki będą składowane w lokalizacji najbliższej w stosunku do użytego punktu dostępowego PLATON. Druga kopia pliku jest tworzona w lokalizacji wybieranej wg wewnętrznych algorytmów systemu.

Punkty dostępowe PLATON

Z usługi PLATON można korzystać za pośrednictwem dowolnego punktu dostępowego PLATON, jednak dla zwiększenia wydajności systemu, zaleca się by był to punkt dostępowy najbliższy wykorzystywanemu serwerowi dostępowemu PL-Grid. Poniższa tabela przedstawia punkty dostępowe PLATON w zestawieniu z najbliższymi serwerami dostępowymi PL-Grid.

Lokalizacja

Nazwa węzła dostępowego PL-Grid

Nazwa punktu dostępowego PLATON

ACK Cyfronet, Kraków

ui.cyfronet.pl

an6-plg.storage.pionier.net.pl

PCSS, Poznań

ui.reef.man.poznan.pl

an1-plg.storage.pionier.net.pl

CI TASK, Gdańsk

ui.grid.task.gda.pl

an5-plg.storage.pionier.net.pl

ICM UW, Warszawa

ui.plgrid.icm.edu.pl

login.icm.edu.pl

an7-plg.storage.pionier.net.pl

WCSS, Wrocław

ui.plgrid.wcss.wroc.pl

ui.wcss.pl

an4-plg.storage.pionier.net.pl 

Tabela: Zestawienie punktów dostępowych PLATON i węzłów dostępowych PL-Grid dostępnych w poszczególnych lokalizacjach.

Katalog domowy użytkownika

W usłudze PLATON, dostępnej dla użytkowników portalu PL-Grid, każdy użytkownik ma swój katalog domowy. Prawo dostępu do tego katalogu ma tylko jego właściciel (tj. użytkownik dla którego katalog został utworzony).

Katalogi domowe użytkowników w usłudze PLATON znajdują się w katalogu /home/kmd/plgrid-portal/users.

Programy takie jak sfpt czy sshfs, domyślnie realizują dostęp do katalogu domowego, więc w przpypadku tych programów nie ma potrzeby jawnego podawania ścieżki do katalogu domowego.

Korzystając z protokołu GridFTP i programu klienckiego globus-url-copy, wymagane będzie jawne podanie pełnej ścieżki do katalogu domowego (przykład w dalszej części opisu).

Dostęp do usługi przez program sftp

Procedura dostępu do usługi poprzez program sftp:

  1. Logujemy się na jeden z serwerów dostępowych PL-Grid.
     

  2. 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.

  3. 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
    
  4. 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
    
  5. Przykład wyświetlenia listy plików wgranych do usługi:

    Code Block
    sftp> ls
    profile 
  6. 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
  7. Przykład usunięcie pliku profile z usługi:
     

    Code Block
    sftp> rm profile
    Removing /home/kmd/plgrid-portal/users/plggracjan/profile
  8. Zakończenie pracy z sfpt:

    Code Block
    sftp> exit

Dostęp do usługi przez program sshfs

Program sshfs pozwala na montowanie w lokalnym katalogu zasobu dostępnego poprzez protokół sftp. Przykładowa procedura użycia tego programu wygląda następująco:

  1. Logujemy się na jeden z serwerów dostępowych PL-Grid.

  2. W katalogu domowym (na serwerze dostępowym PL-Grid) zakładamy katalog pomocniczy, do którego następnie montujemy przestrzeń udostępnianą przez usługę PLATON.

    Code Block
    mkdir platon-backup
  3. 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.

  4. 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.

  5. Wgrywanie, pobieranie i usuwanie plików z usługi PLATON, sprowadza się do standardowych operacji na systemie plików.

  6. 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

UWAGA: Z uwagi na charakterystykę wirtualnych systemów plików wykorzystywanych do świadczenia usługi PLATON, polecenie df nie będzie pokazywać poprawnego wykorzystania zasobów w punktach podmontowanych z tej usługi.

Dostęp do usługi przez program globus-url-copy

Opis wykorzystania protokołu GridFTP można znaleźć na stronie Transfer danych - GridFTP.

Przykładowy scenariusz użycia, z wykorzystaniem klienta globus-url-copy, może wyglądać tak:

  1. Logujemy się na jeden z serwerów dostępowych PL-Grid.
     

  2. Korzystając z certyfikatu i klucza wystawionego przez keyfs, generujemy tzw. certyfikat proxy, używany przez GridFTP do uwirzytelniania użytkowników:

    Code Block
    grid-proxy-init


    UWAGA: Powyższe polecenie generuje certyfikat proxy bazując na pliku z certyfikatem i kluczem prywatnym użytkownika. Lokalizacja plików z certyfikatem i kluczem, jest ustalana na podstawie wartości zmiennych środowiskowych X509_USER_CERT i X509_USER_KEY, które na węźle dostępowym PL-Grid są automatycznie tak ustawiane żeby wskazywały odpowiednie pliki w wirtualnym systemie plików keyfs.

  3. Domyślnie certyfikat proxy ma ważność 12 godzin. Po wygaśnięciu certyfikatu należy wygenerować nowy. Do sprawdzenia czasu ważności certyfikatu proxy służy polecenie:

    Code Block
    grid-proxy-info
  4. Do kopiowania plików służy komenda globus-url-copy. Przykładowe przekopiowanie pliku z serwera dostępowego PL-Grid do usługi PLATON może wyglądać tak:

    Code Block
    globus-url-copy file:///etc/issue gsiftp://an1-plg.storage.pionier.net.pl/home/kmd/plgrid-portal/users/$(whoami)/test


    gdzie,

    file:///etc/issue to URL do lokalnego pliu /etc/issue,

    an1-plg.storage.pionier.net.pl to adres jednego z punktów dostępowych PLATON,

    $(whoami) to wywołanie polecenia zwracającego nazwę bieżącego użytkownika na UI, pozwala to w uogólniony sposób odwołać się do katalogu domowego utrzymywanego dla danego użytkownika po stronie usługi PLATON.

  5. Analogicznie, przegranie pliku z usługi PLATON na węzeł UI, wygląda tak:

    Code Block
    globus-url-copy gsiftp://an1-plg.storage.pionier.net.pl/home/kmd/plgrid-portal/users/$(whoami)/test file:///tmp/test-kopia


    Jest to skopiowanie pliku test z usługi PLATON do lokalnego katalogu tmp. Nowa kopia pliku ma nazwę "test-kopia".

  6. Przykład wylistowania plików z katalogu domowego w usłudze PLATON:

    Code Block
    globus-url-copy -list gsiftp://an1-plg.storage.pionier.net.pl/home/kmd/plgrid-portal/user/$(whoami)
Info

Poniższy szablon należy odpowiednio uzupełnić.

  • Układ należy zachować (z dopuszczeniem minimalnych modyfikacji).
  • Opis nie powinien przekraczać 10 stron przeciętnego ekranu laptopa.
  • W razie potrzeby należy założyć podstrony (na końcu z rozdziałem "Co dalej?" i odnośnikiem do kolejnego rozdziału dokumentacji).
  • Język opisu - polski. W sytuacji, gdy zasadnicza dokumentacja usługi ma być po angielsku, w tym rozdziale powinny znaleźć się podstawowe informacje pozwalające zorientować się w zaletach usługi i zgrubnie w wymaganych krokach do jej uruchomienia.
  • Uprawnienia do odczytu strony (Tools/Restrictions) mogą byś ustawione na "Confluence-users" w pisania dokumentacji, inaczej będzie widoczna od razu dla osób niezalogowanych.
  • Pytania dotyczące systemu dokumentacji: Hubert Siejkowski,
  • Pytania dotyczące Podręcznika Użytkownika: Unknown User (plgfilocha).

...

Wstawianie odnośników do innych stron podręcznika

Przy wstawianiu linków do stron wewnętrznych Podręcznika użytkownika (np. certyfikat="Aplikowanie, rejestracja i użycie certyfikatu"' założenie konta="Zakładanie konta w portalu"; Pomoc="Gdzie szukać pomocy") należy w trybie edycji strony:

  • wpisać tekst, pod który będzie podpięty link
  • zaznaczyć tekst
  • wstawić link (Ctrl+K lub ikona Link na pasku narzędzi)
  • wybrać opcję Search z lewej strony okna Insert Link
  • w pasku po prawej wpisać tytuł strony (lub zacząć wpisywać tytuł i wybrać właściwą stronę z pojawiających się podpowiedzi)
  • zatwierdzić wybraną stronę opcją Insert w prawym dolnym rogu

Efekt powyższego opisu można zobaczyć klikając lewym klawiszem myszki (w trybie edycji strony) na dowolny link w tym oknie informacji. Pojawi się pole, w którym do wyboru będzie opcja Edit, którą klikamy. Pojawi się okno Edit link, z aktywnym polem Search i nazwą strony wewnętrznej podręcznika.

LINKI ZEWNĘTRZNE

Linki zewnętrzne np. do strony PL-Grid wstawiamy w oknie Insert Link (Ctrl+K) w opcji Web Link.

Info
Pomoc w pisaniu stron w Confluence: https://confluence.atlassian.com/display/DOC/Using+the+Editor

 

Krótki opis usługi

Dla kogo jest przeznaczona, jakie najważniejsze możliwości oferuje?

Aktywowanie usługi

Co należy aktywować, aby móc skorzystać z usługi? (Założenie konta, certyfikat, grant?, aktywacja konkretnych usług w portalu). Należy pamiętać o istnieniu rozdziałów ogólnych podręcznika, do których warto się odwołać.

 

 

Ograniczenia w korzystaniu (podsekcja opcjonalna)

Tutaj wpisujemy specjalne zasady korzystania z usługi jeśli takowe są np. konieczność ustawienia grantu domyślnego, zakaz uruchamiania intensywnych zadań na UI itp. Jeśli takowych nie ma to należy tę podsekcję usunąć.

Pierwsze kroki

Koniecznie z przykładowymi zrzutami ekranu lub fragmentami kodu.

Zaawansowane użycie

Ewentualnie jako osobny podrozdział.

Gdzie szukać dalszych informacji?

Strony zewnętrzne (jeśli są), odnośnik do helpdesku lub strony dokumentacji o pomocy.

Info
Można też dodać sekcję "Co dalej?" ze wskazaniem (odnośnikiem) do dalszej części dokumentacji, o ile jest wymagana.

 

 

...