instalare si administrare site grid
DESCRIPTION
Prezentare instalare si adminstrare site gridTRANSCRIPT
Instalare si administrare site grid
The National Training Event for Grid Administrators
12 martie 2010
UPB
Alexandru Stanciu
ICI Bucuresti
Pregatire instalare site
Despre ce este vorba? Ce este un site?
Ce anume se instaleaza? Unde se instaleaza ? Cum se instaleaza? In cat timp se intaleaza un site?
De ce am nevoie ca sa instalez un site? Ce trebuie sa stiu ca sa instalez un site?
Exista o documentatie pentru instalare site? Daca apar probleme?
Care sunt cele mai frecvente probleme?
Ok, am instalt un site. Mai departe?... Pot sa il las asa cum l-am instalat? Oare merge?
Cum testez instalarea unui site?
Pregatire instalare site
Ce inseamna “Cannot read JobWrapper output, both from Condor and from Maradona” ? Ce legatura are Maradona cu un site grid? Ce alte probleme mai pot apare? Cum se rezolva?
Ce este YAIM? Ce face YAIM? site-info.def ?
Gata. Am terminat de instalat site-ul. A fost o experienta ... (YMMV). A durat cam … ore/zile/saptamani/ani (YMMV). Acum cred ca pot sa stau linistit, site-ul merge singur, nimic nu se mai poate intampla. Eu doar il mai “administrez” din cand in cand. Corect?
Administrare site
Post install blues? Depinde cat de mare este un site. 10 masini? 50? 100, peste 1000? Depinde de cati utilizatori sunt si ce activitati au. Ce cerinte speciale pot avea acestia?
Cerinte specifice pentru fiecare VO.Monitorizare si raportare lunara a functionarii site-ului. EGEE League Table.
– https://twiki.cern.ch/twiki/bin/view/EGEE/MonthlyAvailability
Exista un Service Level Agreement (SLA)
Update-uri frecvente ale middleware-ului. Necesita reconfigurarea serviciilor.
Schimbari in cadrul componentelor middleware-ului. Ex: trecere classic-SE-> DPM. lcg-CE->CreamCE.
Noi functii realizate de YAIM. Noi variabile. Noi erori.
In afara programelor de testare si monitorizare cine mai urmareste cum functioneaza site-ul? Cum trebuie sa interactionez cu aceste persoane?
Despre ce este vorba? Ce este un site?
Site grid: masini (fizice sau virtuale) + middleware grid + aplicatii + utilizatori
Cluster Beowulf
Rack-uri de 42'', containere cu rack-uri
desktop-uri asezate pe rafturi
Cluster HPC vs. cluster HTC
Diferite cerinte ale aplicatiilor: CPU, memorie, I/O
Interconectare noduri de calcul
HPC: Infiniband, Myrinet. Latenta f. redusa. Aplicatii MPI.
HTC: High Throughput Computing. Gigabit Ethernet. Ce conteaza este executia cu succes a cat mai multor aplicatii intr-o perioada de timp. Maximizarea utilizarii resurselor.
Despre ce este vorba? Ce este un site? Despre Middleware
Middleware grid generic
Software aflat pe un nivel intermediar intre OS si aplicatii
Asigura accesul transparent la resursele de calcul: computing, storage
Asigura functia de autentificare, autorizare si accounting
Gestioneaza replicarea datelor
Asigura un nivel de protejare al informatiilor confidentiale
Middleware-ul gLite
Ofera functionalitatile de mai sus sub forma unor servicii grid. Ex. lcg-CE, DPM, VOMS, LFC, MyProxy, WMS/LB etc.
Nu sunt servicii web SOAP. Desi unele servicii grid au interfata SOAP: CreamCE
Middleware-ul grid gLite
Este dezvoltat in cadrul proiectului EGEE
Utilizeaza componente externe, dezvoltate de catre alte proiecte: Globus, Condor, MyProxy etc.
Foloseste distributia Virtual Data Toolkit (VDT), la care contribuie cu componente proprii: VOMS, BDII etc.
A fost utilizat si de alte proiecte cum ar fi SEE-GRID-SCI
Ideea este a realiza eInfrastructure pentru eScience.
In principal este util aplicatiilor din VO-urile LHC, ce sunt legate de CERN
Interfata cu utilizatorul: CLI, API (java)
Alte interfete cum ar fi portal, sunt proiecte externe
Despre aplicatii
Aplicatiile care se executa pe site pot fi extrem de diverse
job-uri seriale simple, job-uri seriale cu parametri care se executa in paralel, job-uri mpi,
Job-uri pilot: sunt in asteptare si pornesc apoi alte joburi
Workflow-uri
Aplicatiile se executa in cadrul clusterului. Pe fiecare nod din cluster se instaleaza o componenta a middleware-ului glite (glite-WN).
Sistemul care executa aplicatiile: Torque/Maui, Condor, SGE, LSF
Exemple:
https://grid.ct.infn.it/twiki/bin/view/GILDA/WmProxyUse
http://public.eu-egee.org/applications/index.html
Ce anume se instaleaza?
OS: Scientific Linux (SL), CentOS, distributii compatibile RHEL. Versiunile 4 si 5 pentru i386 si x86_64
Este recomandata utilizarea unui sistem de instalare automata a OS pe toate masinile simultan. Ex. PXE+kickstart.
Varianta recomandata: Cobbler
Alte solutii: OSCAR, xCAT, ROCKS etc.
Middleware-ul gLite are 2 versiuni diferite pentru SL4 i386 si SL5 x86_64. In functie de hardware-ul existent se alege o varianta. Indicat este sa se utilizeze SL5 x86_64 cu gLite 3.2
Pentru aplicatii sunt necesare biblioteci compat SL4
De ce am nevoie? Ce trebuie sa stiu?
Mult curaj, entuziasm si... cam atat.
Varianta B: plecand de la instalarea fizica a masinilor este nevoie:
un (sub)domeniu cu adresare inversa configurata corect
serviciile grid au nevoie de o adresa ip publica: CE, SE, MON, UI
e indicat ca nodurile din cluster(WN-urile) sa aiba adresa privata. Utilizare NAT si subdomeniul privat adaugat in DNS.
Certificate digitale pentru administrator si pentru serviciile grid CE, SE, MON
Configurare SSH password-less authentication intre WN-uri si CE si intre WN-uri pentru MPI.
Sincronizarea ceasului pe fiecare masina folosind NTP
Exportarea unui director /opt/exp_soft de pe SE pe toate WN-urile, ca locatie comuna a aplicatiilor
De ce am nevoie? Ce trebuie sa stiu?
Nu este nevoie ca administratorul de site sa aiba o certificare de la RedHat, dar trebuie sa fie confortabil cu realizarea activitatilor anterioare. Planul B: Google.
Procesul de instalare al middleware-ului are 2 mari etape:
instalarea middleware-ului: folosind YUM.
configurarea lui: folosind YAIM
In functie de politica si interesele site-ului pot fi suportate anumite VO-uri.
Pentru fiecare VO trebuie actualizata configurarea site-ului si apoi trebuie sa fie testat special pentru acel VO. Ex: un site poate sa fie configurat corect pentru ops (testele de monitorizare), dar sa nu fie configurat bine pentru biomed (testele de monitorizare acopera doar ops)!
Experienta cu Torque/Maui(sau alt LRMS suportat de gLite) pentru executia job-urilor
Documentatie pentru instalare site
Documentatia oficiala YAIM: https://twiki.cern.ch/twiki/bin/view/LCG/YaimGuide400
Contine referinte despre probleme cunoscute ale YAIM (solutii)
Documentatie gLite 3.1:
http://glite.web.cern.ch/glite/packages/R3.1/
Supported Platforms: Scientific Linux 4 (SL4) i386, x86_64
Documentatie pentru instalare site
Documentatie gLite 3.2:
http://glite.web.cern.ch/glite/packages/R3.2/
Supported Platforms: Scientific Linux 5 (SL5) x86_64
Servicii grid disponibile: glite-UI (User Interface), glite-CREAM (Computing Element), glite-SE_dpm_mysql (Storage Element), glite-TORQUE_client, glite-TORQUE_server, glite-TORQUE_utils, glite-WN, glite-MPI_utils (Worker Node).
glite-MON este disponibil doar in glite 3.1 dar este inca necesar pentru accouting (APEL)
Serviciile sunt introduse progresiv, daca nu sunt disponibile trebuie folosite cele din gLite 3.1
Pentru CreamCE: http://grid.pd.infn.it/cream/field.php?n=Main.KnownIssues
Documentatie pentru instalare site
User Guide gLite: https://edms.cern.ch/file/722398/1.3/gLite-3-UserGuide.html
Referece card pentru fiecare serviciu:
https://twiki.cern.ch/twiki/bin/view/EGEE/ServiceReferenceCards
glite-WN: https://twiki.cern.ch/twiki/bin/view/EGEE/GliteWN
glite-CreamCE: https://twiki.cern.ch/twiki/bin/view/EGEE/GLiteCREAMCE
glite-DPM: https://twiki.cern.ch/twiki/bin/view/EGEE/GliteDPM
glite-BDII: https://twiki.cern.ch/twiki/bin/view/EGEE/Glite-BDII
glite-WMS: https://twiki.cern.ch/twiki/bin/view/EGEE/GliteWMS
lcg-CE: https://twiki.cern.ch/twiki/bin/view/EGEE/LcgCE
glite-UI: https://twiki.cern.ch/twiki/bin/view/EGEE/GliteUI
glite-VOMS: https://twiki.cern.ch/twiki/bin/view/EGEE/GLiteVOMS
glite-PX: https://twiki.cern.ch/twiki/bin/view/EGEE/GlitePX
glite-LFC: https://twiki.cern.ch/twiki/bin/view/EGEE/GliteLFC
Cele mai frecvente probleme
2 categorii de probleme: cele datorate bug-urilor gLite si YAIM si cele datorate nerespectarii documentatiei de instalare, a informatiilor despre problemele cunoscute (sarirea unor pasi, erori de configurare etc.)
Este necesara consultarea descrierii fiecarui nou update sau release gLite
Cea mai des intalnita problema este legata de configurarea clusterului si executia joburilor + interactiunea cu middleware-ul gLite
Probleme de autentificare datorita modificarii configuratiei unui VO (ex. un VO are 2 servere VOMS si ambele trebuie sa fie suportate)
Probleme datorate unor cauze externe site-ului: un serviciu exern, dar de care depinde un serviciu local nu functioneaza corect (ex. un SE central, serviciul WMS, BDII, APEL)
Noi componente care nu sunt suficient de mature si de testate pun probleme celor care le instaleaza printre primii
... ... ...
Cum testez instalarea unui site
Executia unui job de test
[testbed002] /home/alexs > voms-proxy-init -voms gridmosi.ici.ro
[testbed002] /home/alexs > glite-wms-job-submit -a -r testbed001.grid.ici.ro:2110/jobmanager-pbs-gridmosi test.jdl
glite-wms-job-logging-info -v 2 https://testbed007.grid.ici.ro:9000/cnUEhDvRdrTuKPeMcSqVxQ
glite-wms-job-status https://testbed007.grid.ici.ro:9000/cnUEhDvRdrTuKPeMcSqVxQ
glite-wms-job-output https://testbed007.grid.ici.ro:9000/cnUEhDvRdrTuKPeMcSqVxQ
[testbed002] /home/alexs > cat test.sh #!/bin/shecho "#####################################"echo "se executa pe masina: `/bin/hostname`"echo "contul local este: `/usr/bin/id`"echo "#####################################"sleep 180
[testbed002] /home/alexs > cat test.jdl [Executable = "test.sh"; StdOutput = "test.out"; StdError = "test.err"; InputSandbox = {"./test.sh"};OutputSandbox = {"test.out","test.err"};]
Cum testez instalarea unui site
Testare DPM
http://www.gridpp.ac.uk/wiki/DPM_Testing
[testbed002] /home/alexs > export export DPNS_HOST=testbed002.grid.ici.ro[testbed002] /home/alexs > dpns-ls -l /dpm/grid.ici.ro/homedrwxrwxr-x 1 root 103 0 Jul 29 2008 dteamdrwxrwxr-x 1 root 121 0 Sep 01 2008 env.see-grid-sci.eudrwxrwxr-x 1 root 104 0 Jul 27 2008 gridmosi.ici.rodrwxrwxr-x 204 root 106 0 Mar 11 12:27 opsdrwxrwxr-x 317 root 120 0 Mar 11 12:11 ops.vo.egee-see.orgdrwxrwxr-x 1 root 105 0 Aug 01 2008 seedrwxrwxr-x 3 root 102 0 Jul 28 2008 seegrid
Erori. Cum se rezolva?
Cauta eroarea in wiki: http://goc.grid.sinica.edu.tw/gocwiki/SiteProblemsFollowUpFaq
Cautare in arhiva lcg-rollout:https://www.jiscmail.ac.uk/cgi-bin/webadmin?A0=LCG-ROLLOUT
Cannot read JobWrapper output...http://goc.grid.sinica.edu.tw/gocwiki/Cannot_read_JobWrapper_output...
Rezultatul job-ului nu a mai ajuns la WMS. Job-ul nu a fost executat pana la capat
Fie a fost pus in executie de catre LRMS(torque):
Torque nu executa job-uri
Directorul /home fie nu este +w, fie nu este shared intre CE si WN-uri pentru pbs jobmanager
Ceasul nu este sincronizat (erori de autentificare. Un proxy generat cu data in viitor nu este valid)
Reverse DNS pentru CE nu merge. Erori de autentificare la validarea numelui hostului.
Erori. Cum se rezolva?
Continuare Cannot read JobWrapper output...
O alta cauza: job-ul a fost terminat prematur
a depasit limita alocata pentru wall-clock time, CPU-time
o problema pe WN care a necesitat terminarea job-ului
Fie intradevar job-ul a fost executat de LRMS dar rezultatul nu a mai ajuns inapoi la WMS
WN-ul nu a putut sa copieze rezultatele catre WMS cu globus-url-copy
CE-ul nu a primit rezultatele de la WN, sau nu a putut sa le trasmita mai departe catre WMS, folosind globus-url-copy
Posibile cauze:
Conexiunile externe catre porturile 20000-25000 sunt blocate
CRL-uri ne-update pe CE sau WN-uri
Ceasul nesincronizat
YAIM
YAIM Ain't an Installation Manager
Initial instalarea si configurare middleware-ului se facea initial cu un instrument numit LCFG, apoi LCFGng...
Problema este ca middleware-ul gLite este o suma de produse software dezvoltate fie in diverse proiecte externe, fie de catre EGEE, pentru a satisface anumite cerinte. Este extrem de eterogen si de complex.
Singura alternativa la LCFGng era Quattor (acum LCFGng nu mai este folosit). Configurarea manuala a fiecarui serviciu ar fi o solutie daca:
Nu ar fi atat de multe aplicatii de configurat. Si daca nu ar fi atat de usor de gresit ceva in configurare. O eroare care nu este raportata decat in cadrul interactiunii mai multor componente, ce face extrem de dificil de depistat.
Nu ar fi atat de multe update-uri ale middleware-ului ce necesita o noua reconfigurare
YAIM
Solutia: un script bash care executa configurea tuturor componentelor ce alcatuiesc un serviciu grid.
Un script care executata la randul lui diverse functii care configureaza anumite parti. Ex. O functie pentru configurarea variabilelor de mediu: config_add_glite_env, o functie pentru config certificatelor de host: config_host_certs, etc. etc.
vezi: /opt/glite/yaim/functions/
Fiecare serviciu grid este configurat cu ajutorul mai multor functii
Exemplu: BDII_site: config_edgusers, config_bdii_only, config_gip_only, config_gip_site, config_gip_bdii_site, config_info_service_bdii_site
Vezi: /opt/glite/yaim/node-info.d/
Mai multe informatii:
http://www.yaim.info/
YAIM
YAIM are nevoie de 4 fisiere de configurare: site-info.def, users.conf, groups.conf si wn-list.conf
Pentru fiecare VO suportat de site este necesar un fisier in subdirectorul vo.d/
Exemplu:
Alternativ, aceste variabile se pot defini in site.info.def, dar atentie pentru VO-urile ce au nume similar FQDN (ex. gridmosi.ici.ro)
[root@testbed002 vo.d]# cat gridmosi.ici.ro SW_DIR=$VO_SW_DIR/gridmosiDEFAULT_SE=$DPM_HOSTVOMS_SERVERS="vomss://voms.grid.ici.ro:8443/voms/gridmosi.ici.ro"VOMSES="'gridmosi.ici.ro voms.grid.ici.ro 15002/DC=RO/DC=RomanianGRID/O=ICI/CN=voms.grid.ici.ro gridmosi.ici.ro' 'gridmosi.ici.rovoms.grid.info.uvt.ro 15002 /DC=RO/DC=RomanianGRID/O=UVT/CN=voms.grid.info.uvt.rogridmosi.ici.ro'"VOMS_CA_DN="'/DC=RO/DC=RomanianGRID/O=ROSA/OU=CertificationAuthority/CN=RomanianGRID CA' '/DC=RO/DC=RomanianGRID/O=ROSA/OU=CertificationAuthority/CN=RomanianGRID CA'"
YAIM
In fisierul site-info.def sunt definite toate variabilele necesare pentru configurarea serviciilor grid
Atentie: YAIM este intr-o continua dezvoltare si cu introducerea a noi functionalitati apar noi variabile care trebuie sa fie definite.
Toate varibilele sunt explicate aici: https://twiki.cern.ch/twiki/bin/view/LCG/Site-info_configuration_variables
YAIM fiind un script bash si fisierele de configurare trebuie sa respecte sintaxa bash (ex. La definirea variabilelor spatiul dupa, inainte de '=' nu este permis)
Pentru a valida continutul site-info.def: `source ./site-info.def`
Un exemplu de site-info.def: /opt/glite/yaim/examples/siteinfo/site-info.def
YAIM
Optional site-info.def poate fi “spart” in mai multe fisiere de configurare ce sunt distribuite intr-o structura modulara de directoare:
“services”: contine cate un fisier pentru fiecare serviciu grid gazduit de catre host. Numele acestuia trebuie sa fie de forma “glite-node-type”. Ex /opt/glite/yaim/examples/siteinfo/services/
“vo.d”: contine cate un fisierpentru fiecare VO suportat de catre site. Numele acestuia este identic cu numele VO-ului. Ex. seegrid, gridmosi.ici.ro
“nodes”: contine un fisier cu variabile specifice nodului respectiv. Numele acestuia trebuie sa fie de forma `hostname -f` (fqdn)
“group.d”: contine cate un fisier pentru fiecare VO suportat de site, si contine toate informatiile despre grupurile de utilizatori specifice VO-ului respectiv, inlocuind fisierul “groups.conf” in care erau definite toate grupurile pentru toate VO-urile. Numele fisierelor este de forma groups-<VOname>.conf
Ordinea de citire a fisierelor de configurare este (si de precedenta a definirii variabilelor): site-info.def, services/*, nodes/*, vo.d/*
YAIM
YAIM creaza si configureaza un numar de conturi utilizator local (“pool accounts”), care vor executa in cadrul site-ului job-urile trimise de membrii unui VO.
Middleware-ul grid face maparea unui membru inregistrat intr-un VO, si care este identificat prin DN-ul certificatului sau, de ex. “/DC=RO/DC=RomanianGRID/O=ICI/CN=Alexandru Stanciu/” intr-un cont local ales aleator dintr-un “pool accounts”, in functie de drepturile acelui membru in cadrul VO-ului, sau de alte preferinte.
Pentru aceasta se folosesc fisierele users.conf si groups.conf
Format users.conf UID:LOGIN:GID1[,GID2,...]:GROUP1[,GROUP2,...]:VO:FLAG:
Exemplu users.conf:27197:envir197:2700:envir:env.see-grid-sci.eu::27198:envir198:2700:envir:env.see-grid-sci.eu::27199:envir199:2700:envir:env.see-grid-sci.eu::27200:envir200:2700:envir:env.see-grid-sci.eu::27801:prdenvir001:2780,2700:prdenvir,envir:env.see-grid-sci.eu:prd:27802:prdenvir002:2780,2700:prdenvir,envir:env.see-grid-sci.eu:prd:27803:prdenvir003:2780,2700:prdenvir,envir:env.see-grid-sci.eu:prd:27804:prdenvir004:2780,2700:prdenvir,envir:env.see-grid-sci.eu:prd:27805:prdenvir005:2780,2700:prdenvir,envir:env.see-grid-sci.eu:prd:
YAIM
Membrii unui VO pot fi grupati in functie de anumite atribute, si ca atare pot avea drepturi diferite. Maparea grupurilor definite in cadrul unui VO in grupuri locale, pentru care se aloca diferite permisiuni locale (politica site-ului. ex. prioritate in executie, rezervare de resurse), se face cu ajutorul fisierului “groups.conf”
Acesta are formatul: “VOMS_FQAN":GROUP:GID:FLAG:[VO]
Exemplu groups.conf:
Fisierul wn-list.conf contine o lista cu numele WN-urilor care fac parte din cluster
"/VO=seegrid/GROUP=/seegrid/ROLE=sgmadmin":::sgm:"/VO=seegrid/GROUP=/seegrid/ROLE=ops":::prd:"/VO=seegrid/GROUP=/seegrid/RO/App/DIOGENES":::app:"/VO=seegrid/GROUP=/seegrid/RO/App/DRMR":::app:"/VO=seegrid/GROUP=/seegrid/RO/App/EQUSIM":::app:
YAIM
Exemple de utilizare YAIM:
Configurare serviciu DPM: /opt/glite/yaim/bin/yaim -c -s /etc/yaim/site-info.def -n SE_dpm_mysql
Executia doar a unui functii din cele care sunt necesare conf. unui serviciu: /opt/glite/yaim/bin/yaim -r -s /etc/yaim/site-info.def -n SE_dpm_mysql -f config_mkgridmap
Verificarea site-info.def: /opt/glite/yaim/bin/yaim -v -s /etc/yaim/site-info.def -n SE_dpm_mysql
Colocarea mai multor servicii pe un host: /opt/glite/yaim/bin/yaim -c -s /etc/yaim/site-info.def -n SE_dpm_mysql -n glite-BDII
Checklist instalare UI
Instalare si configurare OS (SL5, x86_64)
Sincronizare ceas cu NTP
Configurare repository-uri
glite-UI.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-UI.repo
CA.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/lcg-CA.repo
DAG:http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/dag.repo
Dezactivare EPEL (conflicte de pachete)
Instalare middleware: yum update && yum groupinstall glite-UI && yum install lcg-CA
Configurare YAIM: yaim -c -s site-info.def -n glite-UI
Checklist instalare CreamCE (nou)
Instalare si configurare OS (SL5, x86_64)
Sincronizare ceas cu NTP
Configurare repository-uri (inclusiv Torque)
glite-CREAM.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-CREAM.repo
glite-Torque_server.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-TORQUE_server.repo
glite-Torque_utils.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-TORQUE_utils.repo
CA.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/lcg-CA.repo
DAG:http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/dag.repo
Instalare middleware: yum update && yum install xml-commons-apis glite-CREAM glite-TORQUE_server glite-TORQUE_utils lcg-CA
Instalare certificat si cheie privata host in /etc/grid-security
Checklist instalare CreamCE (nou)
Configurare YAIM
– CreamCE: yaim -c -s site-info.def -n creamCE -n TORQUE_server -n TORQUE_utils
– BLparser: yaim -r -s site-info.def -n creamCE -n TORQUE_utils -f config_cream_blparser
Restart tomcat
Referinte CreamCE:
http://igrelease.forge.cnaf.infn.it/doku.php?id=doc:guides:devel:install-cream32
https://twiki.cern.ch/twiki/bin/view/LCG/YaimGuide400#Notes_on_configuring_CREAM
http://grid.pd.infn.it/cream/field.php?n=Main.CREAMAndBlparserConfiguration
http://grid.pd.infn.it/cream/field.php?n=Main.HowToCheckAndTestYourCREAMCE
http://grid.pd.infn.it/cream/field.php?n=Main.KnownIssues
http://grid.pd.infn.it/cream/field.php?n=Main.CREAMTroubleshooting
Checklist instalare WN
Instalare si configurare OS (SL5, x86_64)
Sincronizare ceas cu NTP
Configurare repository-uri
glite-WN.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-WN.repo
glite-Torque_client: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-TORQUE_client.repo
CA.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/lcg-CA.repo
DAG:http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/dag.repo
Instalare middleware: yum update && yum groupinstall glite-WN && yum install glite-TORQUE_client lcg-CA
Configurare YAIM: yaim -c -s site-info.def -n glite-WN -n TORQUE_client
Checklist instalare DPM
Instalare si configurare OS (SL5, x86_64)
Sincronizare ceas cu NTP
Configurare repository-uri
glite-SE_dpm_mysql.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-SE_dpm_mysql.repo
CA.repo: http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/lcg-CA.repo
DAG:http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/dag.repo
Dezactivare EPEL (conflicte de pachete)
Instalare middleware: yum update && yum install glite-SE_dpm_mysql lcg-CA
Instalare certificat si cheie privata host in /etc/grid-security
Configurare YAIM: yaim -c -s site-info.def -n SE_dpm_mysql
Post install blues
Am terminat de instalat site-ul... dar
Utilizatorii au cerinte suplimentare (ex. MPI): http://www.grid.ie/mpi/wiki/YaimConfig
Site-ul trebuie sa functioneze 24/7, si sa respecte SLA, timp in care trebuie facute update-uri, upgrade-uri, reconfigurari
Update-urile automate ale yum nu sunt recomandate
Cum pot sa mentin consistenta configuratia site-ului in timp?
Daca cineva intreaba ce se intampla pe site, ce pot sa raspund?
De unde stiu daca ceva nu merge? Trebuie sa astept o reclamatie?
Daca totusi s-a stricat un HDD/placa de baza/server pe care era instalat CE, ce pot sa fac pana cand acesta este reparat? Instalez un alt sistem? Dar nu mai sunt masini disponibile. Masinile par a nu fi utilizate foarte eficient.
Post install blues
Ar fi nevoie de un sistem de alertare atunci cand aplicatiile de monitorizare detecteaza o eroare, inainte sa primesc o reclamatie.
Exemplu: Nagios
http://ops.grid.ici.ro/bin/view/EGEE3/AlerteNagios
Firefox plugin: https://addons.mozilla.org/en-US/firefox/addon/3607
Ar fi nevoie de informatii privind utilizarea resurselor: memorie, CPU, disk, network
Exemplu: Ganglia, Munin, Cacti
Ar fi nevoie de un sistem (centralizat) de management al log-urilor
Exemplu: Syslog-ng, Logwatch, Logwatch-g
Ar fi nevoie de IDS
Snort, OSSEC
Ar fi nevoie sa pot sa execut acceasi comanda simultan pe toate nodurile
Exemplu: Pdsh
Post install blues
Ar fi bine ca masinile sa fie niste “containere” in care sa instalez ce aplicatii si servicii grid am nevoie. Si apoi sa pot sa instalez mai multe astfel de containere pe un server fizic, iar daca acesta are probleme, sa pot sa le mut pe un alt server si totul sa functioneza ca si cand nimic nu s-ar fi intamplat.
Exemplu: Virtualizare. KVM, XEN, libvirt, OpenNebula
Ar fi nevoie de un sistem care sa adminstreze centralizat toata configuratia site-ului, si sa automatizeze toate modificarile necesare pentru aceasta.
Exemplu: Puppet, Cfengine
Ar fi nevoie sa se repare automat unele probleme simple
Exemplu: Monit
Ar fi bine sa am un sistem automat de backup
Exemplu: Rsync, Rsyncbackup, Bacula
Acum cred ca pot sa stau linistit, site-ul merge singur, nimic nu se mai poate intampla. Eu doar il mai “administrez” din cand in cand...
Suport operare infrastructura grid
Instrumente suport operare infrastructura grid EGEE
Operations Portal: https://operations-portal.in2p3.fr/nagios/
Generator rapoarte lunare privind performata site-ului: http://gvdev.cern.ch/GVPC/Excel/
Rapoarte detaliate privind functionarea site-ului: http://gridview.cern.ch/GRIDVIEW/dt_index.php
Executie teste de monitorizare la cerere: https://cic.gridops.org/samadmin/index.php
Rezultate teste monitorizare EGEE: https://lcg-sam.cern.ch:8443/sam/sam.py
Monitorizare GSTAT: http://goc.grid.sinica.edu.tw/gstat//SouthEasternEurope.html
GridMap: http://gridmap.cern.ch/gm/
GSTAT2.0: http://gstat-prod.cern.ch/gstat/geo/openlayers
GOCDB: https://goc.gridops.org/
GGUS: https://gus.fzk.de/pages/home.php
EGEE-SEE helpdesk: https://helpdesk.egee-see.org/
Suport operare infrastructura grid
Instrumente suport operare infrastructura grid SEE-GRID-SCI
BBmSAM: https://c01.grid.etfbl.net/bbmsam/
HGSM: https://hgsm.grid.org.tr/
Helpdesk: https://helpdesk.see-grid.eu/
Accounting Portal: http://gserv4.ipp.acad.bg:8080/AccountingPortal
HGSM/GOCDB
Baza de date cu informatii referitoare la site-uri (administratori, servicii, etc.)
Trebuie sa fie updatate de administratorul de site in functie de situatia reala
In cazul incare site-ul are o problema aici trebuie declarat downtime
Este interconectata cu instrumentele de monitorizare
Helpdesk/GGUS
Sistem suport bazat pe tickete (issue tracking)
Erorile detectate de instrumentele de monitorizare sunt transformate in tickete si asignate persoanei/site-ului corespunzator
Ticketele trebuie rezolvate cat mai repede, altfel sunt escaladate
Utilizatorii (administratorii de site) pot crea tickete la randul lor pentru problemele pe care le au
Helpdesk-ul EGEE-SEE este interconectat cu GGUS, astfel ca ticketele locale pot fi escaladate catre GGUS. Similar tickete create in GGUS pot fi redirectionate catre helpdesk-ul EGEE-SEE daca cauza este un site din ROC-ul SEE, sau persoana raspectiva este din ROC-ul SEE
Proceduri operationale si SLA
Proceduri operationale pentru site-uri: https://twiki.cern.ch/twiki/bin/view/EGEE/OperationalProceduresforROCsAndSites
Service Level Agreement SEE-GRID http://wiki.egee-see.org/index.php/SG_SLA
Service Level Agreement EGEE: https://edms.cern.ch/document/860386/