Versions Compared

Key

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

...

Klient URC pobrany może zostać ze strony projektu http://www.unicore.eu/download/unicore6/. Użytkownik powinien rozpakować ściągniętą paczkę z oprogramowaniem, a następnie skonfigurować dostęp. Poniższa procedura opisuje sposób utworzenia keystore'a, dodania do niego zaufanych certyfikatów oraz utworzenia wpisu Rejestru w graficznym kliencie systemu UNICORE.

W sytuacji, gdy użytkownik posiada certyfikat i klucz prywatny w postaci paczki PKCS12 (plik z rozszerzeniem .p12), należy:

  • Otworzyć plik URC/UNICORE_Rich_Client.exe, gdzie URC jest ścieżką dostępu do rozpakowanego katalogu graficznego klienta systemu UNICORE;
  • Podczas pierwszego uruchomienia klienta URC utworzyć plik keystore wraz z hasłem; W tym celu w polu tekstowym Keystore File należy podać lokalizację i nazwę pliku keystore, który ma zostać utworzony. W kolejno pojawiających się oknach konieczne jest natomiast wpisanie hasła, które zostanie powiązane z plikiem keystore'a;
  • Jeśli URC uruchamiany jest pierwszy raz, z menu, które się wyświeli wybrać opcję Workbench;
  • W zakładce Keystore, klikając ikonkę plusa, wskazać swój plik z certyfikatem (plik z rozszerzeniem .p12);
  • Wybrać Menu Window, a w nim Download client configuration;
  • W nowo otwartym oknie wpisać: 

W polu Enter address of client configuration profile jeden z dwóch adresów:

Code Block
https://unicore.grid.icm.edu.pl:8443/ccm/plgrid-profile-icm.xml
https://unicore.grid.icm.edu.pl:8443/ccm/plgrid-profile-wcss.xml
W polu Enter fingerprint:

 

Code Block
20:3E:60:DE:4A:FF:6D:47:91:BB:87:E7:D3:DD:33:FA:6B:49:DD:C9

Jeżeli użytkownik posiada już gotowy pęk kluczy (keystore) z zaimportowanym certyfikatem osobistym, zaufanymi certyfikatami oraz wpisanym rejestrem, może go użyć do połączenia się z Gridem. Raz utworzony keystore może być przenoszony np. na pendrivie i wykorzystywany w różnych instancjach klienta URC.

Prezentacje pokazujące szczegóły konfiguracji klienta URC oraz uruchomienie za jego pomocą zadań dostępne są w szkoleniu zdalnym UNICORE, na które zapisać można się za pośrednictwem Portalu.

Elementy klienta URC

Szczegóły

Klient graficzny pozwala na otworzenie zakładki Details. Należy w tym celu, w menu głównym, wybrać kolejno: Window → Show View → Details.

W zakładce tej, po zaznaczeniu np. jakiegoś systemu docelowego, pojawią się informacje na jego temat

Tworzenie zadania

Aby utworzyć zadanie wystarczy kliknąć prawym przyciskiem myszki bądź na wybranym systemie docelowym, bądź na rejestrze (wówczas aplikacja sama zadecyduje, na którym systemie zadanie zostanie wykonane) i wybrać: create job.

Zadanie

W zależności od wybranej aplikacji, po wybraniu create job, otwarte zostanie okno zadania. Za jego pomocą przygotować można zadanie. Klikając na ikonkę submitu, wysłać można zadanie do wykonania na Gridzie.

Jeżeli interfejs graficzny zadania nie ma przycisków do uplodu plików import/export plików może być dokonany w zakładce: Files.

Pliki

Po wykonaniu zadania, wyniki można pobrać korzystając z odpowiedniego przycisku. Zostaną one wyświetlone z zakładce Output for job.

Pliki związane z zadaniem (zarówno pliki wynikowe jak i pliki przesłane z zadaniem) zobaczyć można w oknie Grid Browser. Pliki można otworzyć, usunąć, pobrać na lokalny komputer itp.

Storage

Przy wielokrotnym wykorzystywaniu dużego pliku w zadaniach warto jest umieścić go w Storage'u i z tej lokalizacji wykorzystywać w zadaniach. Pliki z lokalnego komputera do Storage'u przenieść można metodą „przeciągnij i upuść”.

Zasoby

Podczas przygotowywania zadania określić można również zasoby z którymi będzie ono wykonane. W zakładce Resources przygotowywanego zadania zobaczyć można ich domyślne wartości oraz dokonać ewentualnej zmiany.

Kaskada zadań

Kaskada zadań umożliwia zadań w pewnej kolejności tak, aby dane wyjściowe jednego programu mogły stanowić dane wejściowe dla innej aplikacji. Graficzny klient systemu UNICORE umożliwia łatwe projektowanie takich kaskad metodą „przeciągnij i upuść”. Poszczególne elementy kaskady przygotowywane są analogicznie do zwykłych zadań.

Szczegóły dotyczące uruchamiania zadań za pośrednictwem klientów systemu UNICORE dostępne są w szkoleniu on-line, na które zapisać się można poprzez Portal PL-Gridu.

UNICORE Commandline Client

UNICORE Commandline Client jest tekstowym klientem systemu UNICORE.

Instalacja i konfiguracja

Klient UCC pobrany może zostać ze strony projektu http://www.unicore.eu/download/unicore6/. Ściągnięta paczka może zostać rozpakowana w dowolnej lokalizacji.

Jeżeli użytkownik posiada przygotowany wcześniej pęk kluczy (keystore) z zaimportowanymi certyfikatami i kluczem prywatnym, konfiguracja dostępu do Gridu wymaga:

  • utworzenia katalogu $HOME/.ucc/ ($HOME oznacza katalog domowy użytkownika, np. poleceniem: mkdir $HOME/.ucc/);
  • pobrania i rozpakowania w powyższym katalogu pliku ucc_pliki.zip
  • dokonania następujących zmian w pliku preferences:
    • modyfikacja ścieżki ../certs/user-keystore.jks na ścieżkę dostępu do keystore'a;
    • usunięcie hasła, czyli skasowanie albo zakomentowanie wiersza: password=the!user;

W przeciwnym przypadku, najlepiej jest skorzystać z profilu konfiguracji klienta, który m.in. doinstaluje certyfikaty zaufanych CA oraz rejestry. W tym celu należy:

  • utworzyć katalog $HOME/.ucc/ ($HOME oznacza katalog domowy użytkownika);
  • pobrać i rozpakować w powyższym katalogu plik ucc_pliki.zip
  • w pliku preferences:
    • zmienić ścieżkę ../certs/user-keystore.jks na ścieżkę dostępu do paczki PKCS12;
    • usunąć hasło, czyli skasować albo zakomentować wiersz: password=the!user;
    • odkomentować (usunąć znak #) wiersz: storetype=pkcs12;

Sposób uruchomienia programu oraz jego przykładowe użycie pokazane są w szkoleniach zdalnych UNICORE, na które zapisać się można za pośrednictwem Portalu.

Polecenia UNICORE Commandline Client

Połączenie z Gridem

Aby połączyć się z Gridem, należy wykonać polecenie ucc connect. Pomoc można uzyskać za pomocą polecenia ucc z opcją -h:

$ ucc connect
$ ucc -h

Jeżeli hasło użytkownika nie jest zapisane w pliku preferences, wówczas będzie on pytany o nie przy każdym wywołaniu UCC. Aby tego uniknąć wykorzystać można tryb interaktywny wpisując: ucc shell. Tryb ten nie wymaga pisania ucc przed poleceniami. Oferuje ponadto rozwijanie poleceń.

Zasoby

Aby sprawdzić listę dostępnych systemów docelowych, magazynów (stoarge) bądź aplikacji, użytkownik wykonać powinien następujące polecenia:

$ ucc list-sites
$ ucc list-storages
$ ucc list-applications

Opis zadania

UNICORE Commandline Client wykorzystuje opis zadań w formacie JSON pozwalając na wskazanie uruchamianego programu, argumentów, ustawień środowiska oraz przesyłanych plików. Przykład opisu zadania przedstawiony został poniżej. Może on zostać skopiowany do pliku date.u.

Code Block
# simple job: run Date
{
   ApplicationName: Date,
   ApplicationVersion: 1.0,
}

Uruchamianie zadania

Aby uruchomić zadanie, użytkownik powinien wpisać polecenie:

$ ucc run date.u -v

Standardowym wyjściem może być np. plik 1bc1bb08-7737-4fb1-854e-5d89ba18d7f0.stdout. Opcja -v pozwala wyświetlić szczegółowe wyniki. Użytkownik może również użyć opcji -b, która zwraca skrócone nazwy plików (bez hasha).

Opcja -a pozwala na uruchomienie zadania w sposób asynchroniczny: pliki wejściowe są wysyłane na zdalny system, gdzie zadanie jest zatwierdzane do uruchomienia, jednak wyniki mogą zostać pobrane w późniejszym terminie za pomocą polecenia get-output. Aby uzyskać status zadania, użyć należy komendy get-status. Jako argument podać można plik zadania uzyskany w wyniku polecenia run -a bądź też End Point Reference (EPR) otrzymany z listy zadań (list-jobs):

$ ucc run -a date.u -v -b
$ ucc list-jobs
$ ucc get-status job
$ ucc get-output jo

Import/Export plików

Aby importować pliki z lokalnego komputera do katalogu zadania (lub eksportować z katalogu zadania do lokalnego komputera), użytkownik powinien wskazać w skrypcie pliki źródłowe i docelowe:
Code Block
{
    Imports: [
       { From: "u6://StorageName/fileName", To: "remoteFileName" },
    ]
   Exports: [
        { From: "remoteFileName", To:"u6://StorageName/fileName" },  
    ]
}

Plik może również zostać wysłany na Stoarge i pobrany z niego za pomocą poleceń ucc put-file oraz ucc get-file. Komenda ls pozwala na wypisanie wszystkich plików z katalogu:

$ ucc put-file -s fileName -t u6://StorageName/fileName
$ ucc get-file -s u6://StorageName/fileName -t newFileName
$ ucc ls u6://StorageName/fileName

Zasoby

W części Resourcesskryptu opisującego zadanie użytkownik może określić zasoby, z którymi zadanie zostanie uruchomione na zdalnym systemie. Sekcja ta może wyglądać następująco:
Code Block
Resources: {
    Memory: 128000000,
    Nodes: 1,
    CPUs: 8 ,
}

Przykład

W poniższym przykładzie plik localScript.sh jest skryptem wypisującym do pliku o nazwie newFile słowo Hello:

 

Code Block
echo "Hello" >> newFile

Użytkownik może utworzyć plik localScript.sh na lokalnym komputerze. Aby wysłać go na Storage powinien najpierw sprawdzić nazwę dostępnych Storage'y (tutaj: SHARE-ACK). Po przesłaniu pliku można wyświetlić znajdujące się w nim pliki:

$ ucc list-storages
$ ucc put-file -s localScript.sh -t u6://SHARE-ACK/storageScript.sh
$ ucc ls u6://SHARE-ACK/Home

Plik bash.u jest skryptem importującym storageScript.sh z Home Stoarge do katalogu zadania i zmieniającym jego nazwę na remoteScript.sh. Skrypt tworzy plik newFile, który następnie jest pobierany na komputer użytkownika jako localNewFile. Plik ten jest również eksportowany do Home Storage systemu UNICORE.

 

Code Block
{
 ApplicationName: "Bash shell",
 Environment: [
                "SOURCE=remoteScript.sh",
        ],
         Imports: [
                { From: "u6://SHARE-ACK/storageScript.sh", To: "remoteScript.sh"}
        ],
        Exports: [
                { From: "newFile", To: "localNewFile"},
                { From:"newFile", To: "u6://SHARE-ACK/storageNewFile"}
        ],
 Resources: {
        CPUs: 1 ,
 }
}

Zadanie bash.u może zostać uruchomione poleceniem ucc run. Na komputerze użytkownika powinien zostać utworzony plik localNewFile.

$ ucc run bash.u -v
$ ucc ls u6://SHARE-ACK

UNICORE Commandlie Client na serwerach dostępowych

Użytkownik może wykorzystać gotową instalację tekstowego klienta systemu UNICORE (UCC) dostępnego UI: ICM, WCSS, Cyfronet, PCSS, TASK. W tym celu należy jednak, oprócz aplikacji o globalny dostęp do systemu UNICORE, wystąpić o dostęp do wybranych UI.

Instalacja i konfiguracja

Aby móc korzystać z zainstalowanego klienta UCC użytkownik powinien:

  • aplikować o dostęp i zalogować się do UI wybranego ośrodka (klient UCC zainstalowany jest we wszystkich ośrodkach: ICM, WCSS, Cyfronet, PCSS, TASK) zgodnie z opisem dostępnym w rozdziale dostep lokalny;
  • wpisać polecenie ucc, które spowoduje przygotowanie plików konfiguracyjnych użytkownika;
  • wgrać na konto swój certyfikat i klucz prywatny (metody przegrywania plików pomiędzy maszynami opisane są w rozdziale dostep lokalny); w przypadku posiadania certyfikatu podpisanego przez Simple CA, czyli gotowej paczki w formacie PKCS12, należy przegrać na konto jedynie plik z rozszerzeniem .p12;
  • jeżeli użytkownik nie dysponuje paczką kluczy w formacie PKCS12 należy, zgodnie z opisem umieszczonym w rozdziale Konwersja certyfikatu, dokonać konwersji posiadanych certyfikatów na ten format;
  • w pliku ~/.ucc/preferences:
    • zmienić ścieżkę ../certs/user-keystore.jks na ścieżkę do certyfikatu;
    • usunąć hasło, czyli skasować albo zakomentować wiersz: password=the!user;
    • odkomentować (usunąć znak #) wiersz: storetype=pkcs12;

Przykładowe użycie programu pokazane jest w szkoleniach zdalnych UNICORE, na które zapisać się można za pośrednictwem Portalu.

Użycie grantów PL-Grid w infrastrukturze UNICORE

Przypisanie zadań obliczeniowych zgłaszanych przez narzędzia klienckie UNICORE wymaga podania identyfikatora grantu. Poniżej przedstawione są instrukcje dla dostępnych programów klienckich UNICORE.

UCC

W specyfikacji zadania należy określić projekt zadania, za pomocą słowa kluczowego Project. Nazwa projektu zostanie użyta przez system jako nazwa grantu PL-Grid. Przykład dla zadania uruchomiającego aplikację Date:

Code Block
{
 ApplicationName: Date, 
 ApplicationVersion: 1.0,
 Project: "IdentyfikatorGrantu",
}

URC

Wybór grantu należy podać w zakładce Resources panelu zadania. Po wyświetleniu zawartości zakładki, należy w tabeli zlokalizować wiersz Projecti jako wartość podać identyfikator grantu.

Uwaga: jeśli wybrany system docelowy nie wspiera jeszcze grantów PL-Grid, opcja ta nie będzie dostępna.