Użytkownik, który chce zlecać obliczenia za pośrednictwem gLite, powinien aktywować następujące usługi:
Ogólne kroki aktywacji usług opisane są w osobnym rozdziale.
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 - język, który służy do opisu zadania obliczeniowego. Pliki JDL zawierają informacje potrzebne dla Resource Brokera:
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ć
Requirements = other.GlueCEUniqueID == "CEId";
JobType = "Normal";
JobType = "MPICH"; NodeNumber = 4;
InputSandbox = {"test.sh", "fileA", "fileB", ...};
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)
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
Podstawowym poleceniem do generowania certyfikatu proxy dla użytkowników PLGrid jest:
$ voms-proxy-init --voms vo.plgrid.pl
Certyfikaty proxy na UI z KeyFS (tylko Simple CA, tylko UI WCSS i TASK)
Jeśli użytkownik wyeksportował swój klucz prywatny i certyfikat do bazy LDAP PLGrid, to ma je dostępne na dowolnym UI ze skonfigurowanyn mechanizmem keyFS (w większości ośrodków). Aby wygenerować certyfikat proxy na UI korzystając z keyFS, należy użyć polecenia voms-proxy-init:
voms-proxy-init -voms vo.plgrid.pl
Aby wygenerować certyfikat proxy korzystając z klucza prywatnego i certyfikatu lokalnie (znajdujących się w katalogu $HOME/.globus), bez keyFS, należy wskazać jako źródło klucza prywatnego i certyfikatu local:
creds local
a następnie użyć voms-proxy-init:
voms-proxy-init -voms vo.plgrid.pl
Jako źródło klucza prywatnego i certyfikatu na UI z zainstalowanym keyFS domyślnie ustawiony jest keyFS.
Aby ustawić ponowne keyFS jako źródło klucza prywatnego i certyfikatu, należy wydać polecenie:
creds keyfs
Certyfikat proxy na UI bez keyFS
Aby wygenerować certyfikat proxy na UI bez keyFS, należy upewnić się, że klucz prywatny oraz certyfikat są dostępne w katalogu $HOME/.globus (a jeśli nie, to je tam skopiować) i użyć polecenia voms-proxy-init:
voms-proxy-init -voms vo.plgrid.pl
$ 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 ==========================================================================
$ 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 *************************************************************
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
Po dalsze informacje na temat korzystania z gLite zapraszamy do następnego rozdziału.