Page tree
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