Dokumentace pro uživatele farmy Goliáš
Pro snažší komunikaci s uživateli byl zaveden
RT (Request Tracking) system . Proto veškeré dotazy a problémy spojené s farmou Goliáš zasílejte výhradně na e-mailovou adresu
fzu zavináč rt3.cesnet.cz .
Obsah:
1. Základní informace
1.1 Struktura farmy Goliáš
golias.farm.particle.cz
Na tomto stroji běží server systému
PBSPro, který má na starosti plánování a spouštění úloh na farmě Goliáš.
prak2.farm.particle.cz
prak3.farm.particle.cz
Na tyto dva servery se uživatel přihlašuje. (V současné době si sám zvolí, na který
prak se zaloguje). Na těchto strojích je nainstalován klient systému
PBS. Uživatel může své úlohy spouštět, rušit, přesouvat ve frontách, vyzvedávat výsledky. Zároveň může provádět další interaktivní činosti jako např. testovat nebo kompilovat své programy. Výhledově bude pro interaktivní činnosti vyhrazeno několik výpočetních uzlů
golias.
golias01 - golias162
Toto jsou výpočetní neboli pracovní uzly (tzv.
worker nody). Nepatří mezi ně
golias 10, 15, 25, 31, 32, 33, 59, 97, 98, 100, 137 a
143. (Pro úplnost
golias31 - golias99 jsou aliasy pro
goliasx31 - goliasx99). Na těchto strojích systém
PBS spouští úlohy. Uživatel by se na ně neměl bezdůvodně hlásit.
storage.farm.particle.cz
storage2.farm.particle.cz
storage3.farm.particle.cz
storage4.farm.particle.cz
storage5.farm.particle.cz
Toto jsou
fileservery, na kterých jsou uložena data a domovské adresáře. Pomocí
NFS jsou namountovány na všech serverech
golias a
prak jako adresáře
/raidN, kde
N je číslo v názvu serveru. Pokud je součástí jména adresáře
/raidN i jméno experimentu, znamená to, že tento adresář může být využíván pouze pro daný experiment. Soubory uložené v adresáři
/raidN se nezálohují! Uživatel si musí soubory sám zkopírovat na jiné místo. Zálohují se pouze domovské adresáře.
Podrobnou HW konfiguraci farmy Goliáš naleznete [zde]
Zpět
1.2 Nový uživatel
Každý nový zájemce o používání farmy Goliáš musí vyplnit
Žádost o zřízení účtu. Žádost je nutné v papírové formě zaslat na sekretariát Sekce fyziky elementárních částic FZÚ. Pro urychlení celé procedury je možné žádost poslat faxem (fax: 286 585 443) a originál doručit do čtrnácti dnů.
Jakmile obdržíte e-mailem potvrzení o zřízení účtu, je nutné se přihlásit na
prak2 a na
prak3 a pomocí příkazu
passwd změnit přístupové heslo. Heslo by mělo být silné, tzn. mělo by se skládat alespoň z 8 znaků a obsahovat malá a velká písmena, číslice a nealfanumerické znaky (např. %, &, *, # apod.).
Pozn.: Po instalaci systému
LDAP bude uživatel při prvním přihlášení na kterýkoliv z
praků automaticky vyzván ke změně hesla. Dokud si heslo nezmění, nebude mít možnost dále pracovat.
Zpět
1.3 Adresáře /home a /scratch
Domovský adresář /home
Zálohování
Adresář
/home je vidět ze všech výpočetních uzlů. Zálohuje se systémem
networker. Pokud chce uživatel obnovit ztracený soubor, musí se zalogovat na
prak2 nebo
prak3 a potom se už bez hesla pomocí
ssh přihlásí na
storage5.
ssh storage5
nwrecover&
...
Kvóty
Prostor domovského adresáře je ale omezen kvótou. Rozlišujeme dva stupně:
soft limit a
hard limit. V současné době je soft limit standardně nastaven na hodnotu
2GB, hard limit na hodnotu
2,5GB. Hard limit už překročit nelze.

Při zalogování na
prak2 nebo
prak3 se uživateli automaticky zobrazí velikost obsazeného prostoru a nastavené kvóty. Uživatel je také upozorněn v případě, že překročil soft limit.
Míru zaplnění adresáře
/home a výši limitů lze také zjistit pomocí příkazu
ssh storage5 /usr/sbin/repquota -s /home
|
Block limits |
File limits |
User |
used |
soft |
hard |
grace |
used |
soft |
hard |
grace |
xxx |
n |
1954M |
2442M |
m |
0 |
0 |
n - velikost obsazeného prostoru (v kB)
block limits - limity omezující obsazený prostor (v MB)
file limits - limity omezující počet uložených souborů (tyto limity nejsou nastavené)
grace - doba, po kterou může být překročen soft limit (standardní nastavení je 7 dnů)
Zvýšení kvóty
Pokud uživatel potřebuje v adresáři
/home větší prostor, může požádat o zvýšení kvóty. Svou žádost náležitě odůvodní a pošle prostřednictvím e-mailu Janu Švecovi nebo Tomáši Koubovi.

V adresáři
/home se nachází soubor
.rhosts. Tento soubor je nezbytný pro potřeby administrátorů.
Nesmí být smazán!
Pracovní adresář /scratch
Na každém výpočetním uzlu je lokální pracovní prostor
/scratch. Do tohoto prostoru by se měly ukládat mezivýsledky výpočtů. Při spuštění úlohy se v adresáři
/scratch automaticky vytvoří podadresář
/pbstmp.cislojobu.golias. Současně se vytvoří proměnná
$TMPDIR, která do tohoto adresáře ukazuje. Po skončení úlohy se tento podadresář automaticky smaže. Tímto způsobem se prostor
/scratch průběžně promazává. Proto je třeba ve skriptech, kterými se úlohy zadávají do front, používat pro uložení dočasných dat proměnnou
$TMPDIR.
Zpět
2. Zadávání úloh
2.1 Typy front
Některé fronty jsou vyhrazené pro speciální projekty (experimenty), pro určité skupiny uživatelů nebo pro speciální typ úloh (interaktivní úlohy apod.). Fronty mají při spuštění úloh různou
prioritu. Mohou mít také nastavené různé
limity.
Např.:
- maximální počet úloh, které mohou být z dané fronty spuštěné zároveň
- maximální množství skutečného času, po který může úloha běžet
- maximální počet uzlů, které může úloha nárokovat
- maximální množství paměti, kterou může úloha využít.
Při překročení některého z limitů se úloha nespustí nebo je předčasně ukončena.
Původní rozdělení front na farmě Goliáš je následující:
- fronty experimentů (atlas, d0, alice, star, auger, ... )
- fronty pro uživatele ze Sekce vysokých energií FZÚ nezařazených v jiných projektech (fronty long a short)
- fronty pro uživatele ze Sekce materiálový výzkum, t.j. pro uživatele subclusteru David (fronty solid a tsolid)
- fronty testovací (test, lcgtest ... ).
Fronty experimentů se dále dělí na fronty produkční a fronty neprodukční. Experimenty podporované gridovým projektem mají ještě fronty, jejichž název začíná
lcg. Tyto fronty slouží pouze ke spuštění úloh zadaných přes grid.
Každý experiment tedy má 2 fronty: produkční a neprodukční nebo 4 fronty: 2 fronty negridové a 2 fronty gridové, dále dělené na produkční a neprodukční.
Např. fronty pro experiment
atlas
atlas |
fronta negridová a neprodukční |
atlasprod |
fronta negridová a produkční |
lcgatlas |
fronta gridová a neprodukční |
lcgatlasprod |
fronta gridová a produkční |
Priority: Úlohy zadané do produkční fronty mají vyšší prioritu než úlohy zadané do fronty neprodukční. Stejně tak fronta
short, určená pro kratší úlohy, které nepoběží déle než 4 hodiny, má vyšší prioritu než fronta
long, určená pro úlohy časově náročnější. Tedy v případě, že v obou frontách čekají úlohy, po uvolnění procesoru se nejdříve spustí úloha z fronty s vyšší prioritou. Avšak není to tak jednoduché. Kromě priorit se uplatňují ještě další omezení. Ta by měla zaručit co nejoptimálnější využití farmy. Výjimku tvoří fronty s vyhrazeným počtem procesorů.
Příklad: Fronta
q1 má nejvyšší prioritu, fronty
q2 a
q3 mají vyhrazený počet procesorů a stejnou prioritu. Ve frontě
q1 čeká
n1 úloh, ve frontě
q2 běží
m2 úloh a čeká
n2 úloh a ve frontě
q3 čeká
n3 úloh. V okamžiku, kdy se uvolní jeden procesor, systém
PBS by spustil úlohu z fronty
q1 (nejvyšší priorita), ale vzhledem k tomu, že fronty
q2 a
q3 ještě nenaplnily svůj počet vyhrazených procesorů, spustí se úloha z fronty
q2. Při uvolnění dalšího procesoru se spustí úloha z fronty
q3 (stejná priorita). Tento postup se opakuje až do doby, kdy fronty
q2 a
q3 vyčerpají svůj počet rezervovaných procesorů nebo ve frontách už nečekají další úlohy.
Uživatel zadává svou úlohu do fronty z
praku2 nebo z
praku3 pomocí příkazu
qsub.
Nesmí posílat úlohy do front označených
lcg a také do front testovacích.
Úplný seznam front lze získat po přihlášení na
prak2 nebo
prak3 pomocí příkazu
qstat -q
Pozn.: Po instalaci systému
LDAP proběhne přeregistrování všech uživatelů, vytvoří se nové uživatelské skupiny a v důsledku toho se také změní současná struktura front.
...
Zpět
2.2 Příkaz qsub
Úlohy se zadávají do fronty pomocí příkazu
qsub.
qsub -q <jméno fronty> <seznam parametrů> <váš skript>
Tabulka parametrů příkazu qsub:
Parametr |
Popis |
-q |
jméno fronty |
-I |
interaktivní úloha, podrobnosti zde |
-m |
zaslání e-mailu, není-li specifikováno, žádný e-mail se neposílá |
|
a (abort) – zpráva o přerušení úlohy |
|
b (begin) – zpráva o spuštění úlohy |
|
e (end) – zpráva o ukončení úlohy |
-o |
kam uložit výstupní soubor stdout , není-li specifikováno, stdout se automaticky ukládá do adresáře, ze kterého byl spuštěn příkaz qsub |
-e |
kam uložit chybový soubor stderr , není-li specifikováno, stderr se automaticky ukládá do adresáře, ze kterého byl spuštěn příkaz qsub |
-l |
seznam požadavků na výpočetní zdroje |
Tabulka požadavků úlohy na výpočetní zdroje:
pbs_resources |
Popis |
nodes/select |
počet výpočetních uzlů |
ppn/ncpus |
počet procesorů na jednom uzlu |
mem |
velikost fyzické paměti |
vmem |
velikost virtuální paměti |
walltime |
množství skutečného času |
cput |
množství času CPU |
Příklady:
qsub -q <jméno fronty> -l <seznam požadavků na výpočetní zdroje> <váš skript>
Chceme rezervovat |
Specifikace parametru -l |
1 uzel a 1 procesor |
nodes=1:ppn=1 |
|
select=1:ncpus=1 |
1 uzel a 2 procesory |
nodes=1:ppn=2 |
|
select=1:ncpus=2 |
2 uzly a na každém 1 procesor |
nodes=2:ppn=1 |
|
select=2:ncpus=1 |
1 uzel a 1 procesor na 100 hodin skutečného času a paměť 200MB |
nodes=1:ppn=1,walltime=100:00:00,mem=200mb |
|
select=1:ncpus=1:walltime=100:00:00:mem=200mb |
1 uzel se 2 procesory, na každém procesoru paměť 3GB |
nodes=1:ppn=2,mem=3gb |
|
select=1:ncpus=2:mem=3GB |
2 uzly, na každém 1 procesor s pamětí 500MB |
nodes=2:ppn=1,mem=500mb |
|
select=2:ncpus=1:mem=500mb |
...
Zpět
2.3 Další užitečné příkazy PBS
- qdel - vymaže úlohu z fronty
qdel <číslo úlohy>
- qstat - zobrazí dostupné informace o dané úloze, o dané frontě
qstat -f <číslo úlohy>
qstat -a <jméno fronty>
Zpět
3. Práce s certifikátem
3.1 Získání certifikátu
Certfikát lze získat od certifikační autority CESNETu, o osobní certifikát se žádá
zde.
3.2 Převod do jiných formátů
Certfikát je typicky uložen do internetového prohlížeče. Exportem certifikátu získáme soubor s příponou
p12.
Pro použití v gridovém prostředí je třeba ho převést do formátu
pem příkazy:
openssl pkcs12 -clcerts -nokeys -in usercert.p12 -out usercert.pem
openssl pkcs12 -nocerts -in usercert.p12 -out userkey.pem
Zpět
--
JanaUhlirova - 01 Jul 2008