Skip to end of metadata
Go to start of metadata

Użytkownik, który chce zlecać obliczenia za pośrednictwem gLite, powinien aktywować usługę Globalny dostęp gLite.

Ogólne kroki aktywacji usług opisane są w osobnym rozdziale.

Maszyny dostępowe

Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'ARCHPLG:Dostęp do UI (User Interface)'.

Posiadając aktywny dostęp do usługi gLite w wybranym ośrodku (Dostęp do UI) użytkownik możne logować się na jej komputer dostępowy. Logowanie dokładnie opisano w osobnym rozdziale. W skrócie, na komputerze z systemem operacyjnym typu Unix należy wykonać polecenie (pamiętając o podmianie plgkowalski na nazwę swojego konta, a ui.plgrid.icm.edu.pl na nazwę jednej z maszyn wymienionych powyżej):

ssh plgkowalski@ui.plgrid.icm.edu.pl

Po zalogowaniu użytkownik ma możliwość korzystania z poleceń linii komend pozwalających na m.in. zarządzanie zadaniami i danymi w gridzie.

JDL (Job Description Language)

JDL - język, który służy do opisu zadania obliczeniowego. Pliki JDL zawierają informacje potrzebne dla Resource Brokera:

  • Typ zadania (szeregowe/równoległe),
  • Jakie zasoby są potrzebne do wykonania zadania (ile procesorów potrzebuje zadanie, jakie są pliki wejściowe, wyjściowe),
  • Gdzie można znaleźć plik wykonywalny,
  • Każda linia musi być zakończona znakiem ";", po którym nie może już nic występować.

Prosty plik job.jdl,

$ cat job.jdl
Executable = "/bin/hostname";
Arguments = "-f";
StdOutput = "job.out";
StdError = "job.err";
OutputSandbox = {"job.out", "job.err"};

gdzie:

Executable #plik wykonywalny
Arguments #argumenty dla pliku wykonywalnego
StdOutput #plik, w którym znajdzie się strumień STDOUT
StdError #plik, w którym znajdzie się strumień STDERR
OutputSandbox #zawartość OutputSandbox - lista plików wyjścia zadania

Dodatkowo w pliku jdl możemy zdefiniować

  • wymuszenie liczenia zadania na konkretnym CEId
Requirements = other.GlueCEUniqueID == "CEId";
  • rodzaj zadania Normal lub MPICH
JobType = "Normal";
JobType = "MPICH";
NodeNumber = 4;
  • wysyłane pliki na klaster; pliki w "" oddzielone ’,’
InputSandbox = {"test.sh", "fileA", "fileB", ...};

Zlecenie zadania gridowego

Po zarejestrowaniu się w vo.plgrid.pl użytkownik może wysłać zadanie testowe.
W wybranym edytorze przygotuj plik job.jdl, który można umieścić/skopiować na maszynie dostępowej gLite (np. ui.cyf-kr.edu.pl)

Prosty plik job.jdl

$ cat job.jdl
Executable = "/bin/hostname";
Arguments = "-f";
StdOutput = "job.out";
StdError = "job.err";
OutputSandbox = {"job.out", "job.err"};

gdzie:

Executable #plik wykonywalny
Arguments #argumenty dla pliku wykonywalnego
StdOutput #plik, w którym znajdzie się strumień STDOUT
StdError #plik, w którym znajdzie się strumień STDERR
OutputSandbox #zawartość OutputSandbox - lista plików wyjścia zadania

Tworzenie proxy

Aby możliwe było utworzenie certyfikatu proxy, konieczne jest posiadanie certyfikatu osobistego (wraz z kluczem prywatnym). Jeżeli został on wygenerowany w portalu, lub też uzyskany inną drogą ale umieszczony w portalu, to powinien być dostępny w wirtualnym systemie plików keyFS. W przeciwnym wypadku należy umieścić w katalogu domowym, podkatalogu .globus poświadczenia w następującej formie:

  • certyfikat w formacie PEM w pliku usercert.pem oraz klucz w formacie RSA w pliku userkey.pem (opis uzyskania plików znajduje się w sekcji PKCS12 -> PEM artykułu o certyfikatach) lub
  • kontener PKCS12 z certyfikatem użytkownika oraz jego kluczem prywatnym w pliku o nazwie usercred.p12 Uwaga! Plik .p12 pobrany z portalu PLGrid zawiera dodatkowo certyfikat CA. Dlatego konieczne jest wykonanie dla niego kroków opisanych w sekcji PKCS12 -> PEM oraz PEM -> PKCS12 w artykułu o certyfikatach, aby uzyskać plik usercred.p12 użyteczny w katalogu .globus.

W przypadku posiadania poświadczeń zarówno w LDAP-ie (dostępnych przez keyFS) jak i lokalnie, wyboru między nimi można dokonać poleceniami

creds local

dla plików z katalogu .globus oraz

creds keyfs

dla plików z keyFS (ta opcja jest domyślna).

 

Podstawowym poleceniem do generowania certyfikatu proxy dla użytkowników PLGrid jest:

$ voms-proxy-init --voms vo.plgrid.pl

 

Wysłanie zadania

$ glite-wms-job-submit -a job.jdl

Connecting to the service https://rb1.cyf-kr.edu.pl:7443/glite_wms_wmproxy_server


====================== glite-wms-job-submit Success ======================

The job has been successfully submitted to the WMProxy
Your job identifier is:

https://lb.grid.cyf-kr.edu.pl:9000/AgP9eWoJf0l4YMiESWrRow

==========================================================================

Sprawdzenie statusu wysłanego zadania, wykorzystując przydzielony identyfikator

$ glite-wms-job-status https://lb.grid.cyf-kr.edu.pl:9000/qn69-B5xUIl40yY5oP9f9Q


*************************************************************
BOOKKEEPING INFORMATION:

Status info for the Job : https://lb.grid.cyf-kr.edu.pl:9000/qn69-B5xUIl40yY5oP9f9Q
Current Status:     Waiting
Submitted:          Thu Jul 23 10:32:46 2009 CEST
*************************************************************

Powtarzanie powyższej komendy pozwala zaobserwować zmieniający się status zadania

Current Status:     Ready
Current Status:     Scheduled
Current Status:     Running

Ostatecznie powinniśmy otrzymać informację o prawidłowym zakończeniu obliczeń

$ glite-wms-job-status https://lb.grid.cyf-kr.edu.pl:9000/qn69-B5xUIl40yY5oP9f9Q


*************************************************************
BOOKKEEPING INFORMATION:

Status info for the Job : https://lb.grid.cyf-kr.edu.pl:9000/qn69-B5xUIl40yY5oP9f9Q
Current Status:     Done (Success)
Exit code:          0
Status Reason:      Job terminated successfully
Destination:        ce.cyf-kr.edu.pl:2119/jobmanager-pbs-gaussian
Submitted:          Thu Jul 23 10:32:46 2009 CEST
*************************************************************

Zebranie wyników zadania

Otrzymane pliki można np. ściągnąć na maszynę dostępową do katalogu output *

$ glite-wms-job-output --dir output https://lb.grid.cyf-kr.edu.pl:9000/qn69-B5xUIl40yY5oP9f9Q

Connecting to the service https://149.156.9.29:7443/glite_wms_wmproxy_server


================================================================================

                        JOB GET OUTPUT OUTCOME

Output sandbox files for the job:
https://lb.grid.cyf-kr.edu.pl:9000/qn69-B5xUIl40yY5oP9f9Q
have been successfully retrieved and stored in the directory:
/home/people/.../.../job1/output

================================================================================

$ cd output/
$ ls
job.err  job.out

Dalsze informacje

Po dalsze informacje na temat korzystania z gLite zapraszamy do następnego rozdziału.

  • No labels