Dostęp do infrastruktury PL-Grid jest zapewniony m.in. poprzez oprogramowanie pośredniczące gLite.
Aby móc skorzystać infrastruktury PL-Gridu należy wygenerować certyfikat, zaimportować go do przeglądarki oraz zapisać się doWirtualnej Organizacji.
W celu otrzymania uprawnień do korzystania z usługi gLite, należy przejść na stronę
Portalu PL-Grid, wybrać zakładkę Moje konto a następnie w sekcji Usługi Dostępowe wybrać żądaną usługę np. Dostęp do UI gLite - Cyfronet, Dostęp do klastra Galera+ i UI gLite - TASK itd. Po akceptacji żądania użytkownik otrzymuje maila z informacją o nadanych mu uprawnieniach, status wybranej usługi zmienia się wówczas na aktywny. Obecnie można korzystać z usługi gLite poprzez komputery - ICM ( Interdyscyplinarne Centrum Modelowania Matematycznego i Komputerowego), Cyfronet (Akademickie Centrum Komputerowe AGH), PCSS (Poznańskie Centrum Superkomputerowo-Sieciowe),TASK (Trójmiejskiej Akademickiej Sieci Komputerowej), WCSS (Wrocławskie Centrum Sieciowo-Superkomputerowe). Użytkownik może wnioskować o dostęp do gLite poprzez komputery jednego lub kilku centrów komputerowych.
Posiadając wymagane uprawnienia użytkownik może logować się do komputerów wybranej przez siebie instytucji i prowadzić obliczenia w ramach przypisanego do niego grantu.
!certyfikat.png|width=600 !
Posiadając aktywny dotęp do usługi gLite w wybranej instytucji użytkownik możne logować się na jej komputery.
Tabela zawiera potrzebne dane do pracy na poszczególnych maszynach.
Po zalogowaniu użytkownik ma możliwość korzystania z poleceń linii komend pozwalających na m.in. zarządzanie zadaniami i danymi w Gridzie typu gLite. Polecenia te opisane są w podręczniku obsługi Gridu gLite.
Nazwa parametru | ICM | TASK | CYFRONET | PCSS | WCSS |
---|---|---|---|---|---|
Nazwa maszyny | ui.plgrid.icm.edu.pl | ui.grid.task.gda.pl | ui.grid.cyfronet.pl | ui.reef.man.poznan.pl | ui.plgrid.wcss.wroc.pl |
Protokół dostępu | ssh | ssh | ssh | ssh | ssh |
Port dostępowy | 22 | 22 | 22 | 22 | 22 |
System operacyjny | Scientific Linux 5.5 | Scientific Linux 5.5 | Scientific Linux 4 | Scientific Linux Cern 5.7 | Scientific Linux Cern 4.8 |
Kontakt | plgrid-admins@icm.edu.pl | lcg-admin@task.gda.pl | cyfronet-lcg2@helpdesk.plgrid.pl | egee@man.poznan.pl | egee-site-manager@kdm.wcss.wroc.pl |
Dostęp do lokalnego systemu kolejkowego | NIE | TAK | TAK | TAK | NIE |
Logowanie dokładnie opisano w artykule Logowanie
Na komputerze z systemem operacyjnym typu Unix należy wykonać polecenie (pamiętając o podmianie plgkowalski na własny identyfikator):
ssh plgkowalski@ui.plgrid.icm.edu.pl
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
,
Code Block |
---|
$ cat job.jdl Executable = "/bin/hostname"; Arguments = "-f"; StdOutput = "job.out"; StdError = "job.err"; OutputSandbox = {"job.out", "job.err"}; |
gdzie:
Code Block |
---|
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
Code Block |
---|
Requirements = other.GlueCEUniqueID == "CEId"; |
rodzaj zadania Normal lub MPICH
Code Block |
---|
JobType = "Normal"; |
Code Block |
---|
JobType = "MPICH"; NodeNumber = 4; |
wysyłane pliki na klaster; pliki w "" oddzielone ’,’
Code Block |
---|
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
Code Block |
---|
$ cat job.jdl Executable = "/bin/hostname"; Arguments = "-f"; StdOutput = "job.out"; StdError = "job.err"; OutputSandbox = {"job.out", "job.err"}; |
gdzie:
Code Block |
---|
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 |
__Więcej informacji o przygotowaniu opisu zadania+
Podstawowym poleceniem do generowania certyfikatu proxy dla użytkowników PL-Grid jest:
Code Block |
---|
$ 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 PL-Grid, to ma je dostępne na dowolnym UI ze skonfigurowanym keyFS. Aby wygenerować certyfikat proxy na UI korzystając z keyFS, należy wskazać keyFS jako źródło klucza prywatnego i certyfikatu:
Code Block |
---|
creds keyfs |
a następnie użyć voms-proxy-init lub grid-proxy-init:
Code Block |
---|
voms-proxy-init -voms vo.plgrid.pl grid-proxy-init |
Aby wygenerować certyfikat proxy korzystając z klucza prywatnego i certyfikatu lokalnie (znajdujących się w katalogu $HOME/.globus), należy wskazać jako źródło klucza prywatnego i certyfikatu local:
Code Block |
---|
creds local |
a następnie użyć voms-proxy-init lub grid-proxy-init:
Code Block |
---|
voms-proxy-init -voms vo.plgrid.pl grid-proxy-init |
Jako źródło klucza prywatnego i certyfikatu na UI z zainstalowanym keyFS domyślnie ustawiony jest 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 lub grid-proxy-init:
Code Block |
---|
voms-proxy-init -voms vo.plgrid.pl grid-proxy-init |
Code Block |
---|
$ 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 ========================================================================== |
Code Block |
---|
$ 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
Code Block |
---|
Current Status: Ready Current Status: Scheduled Current Status: Running |
Ostatecznie powinniśmy otrzymać informację o prawidłowym zakończeniu obliczeń
Code Block |
---|
$ 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 katalogi output *
Code Block |
---|
$ 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 |
<html>
<style type="text/css">
a.naw {
width:100px;
display:inline; /* change to inline for horizontal menu */
margin-left:5px; /*indents left margin; change for horiz. menu */
margin-top:0px; /* change to 1 or 2px for top space between
buttons*/
padding: 2px 5px 2px 5px;
/* padding numbers = top : right : bottom :
left ; */
text-decoration:none;
/font-family:arial;/
font-weight:bold;
text-align:center;
background-color: #F0F0F0;
color: MidnightBlue;
font-size:9pt;
border: 1px MidnightBlue ridge;
}
a.naw:hover {
border: 1px orange ridge;
}
</style>
<a class=naw onClick="javascript:history.back();" target="_self">
Powrót
</a>
<a class=naw href="/doku.php?id=pakiet5:nowy_podrecznik" target="_self">
Spis treści
</a>
<a class=naw href="/doku.php?id=pakiet5:nowy_podrecznik:pomoc" target="_self">
Dalej
</a>
</html>