Virtlab:Vývojáři

Z VirtlabWiki

(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
Verze z 19:55, 8. 10. 2007
Vav166 (Diskuse | příspěvky)
(Obecné informace)
← Předchozí porovnání
Verze z 09:37, 16. 10. 2007
Vav166 (Diskuse | příspěvky)

Následující porovnání →
Řádka 1: Řádka 1:
-Zde jsou informace pro SRPV (nepřihlášený uživatel se zde nedostane a přihlásit se mohou jen uživatelé, které vytvoří správce [[Uživatel:Vav166|Vav166]])+Zde jsou informace primárně pro [[Virtlab:SRPV | SRPV ]]
== Filosofie vývoje == == Filosofie vývoje ==
-* důraz na spolehlivou základní funkčnost+* důraz na '''spolehlivou základní funkčnost'''
-** co nejméně zbytečných omezení pro uživatele a vychytávek speciálních případů (na které stejně v praxi téměř nedojde a jen znepřehledňují kód)+** co '''nejméně zbytečných omezení''' pro uživatele a vychytávek speciálních případů (na které stejně v praxi téměř nedojde a jen znepřehledňují kód)
-* důsledné ošetření chybových stavů, zotavení z chyb+* důsledné '''ošetření chybových stavů''', zotavení z chyb
-** počítat s výpadkem komunikace mezi distribuovanými komponentami ve kterémkoli okamžiku a zotavit se z něj+** '''počítat s výpadkem komunikace''' mezi distribuovanými komponentami ve kterémkoli okamžiku a zotavit se z něj
-* co největší modularita+* co '''největší modularita'''
** na úrovni spustitelných programů i zdrojových kódů ** na úrovni spustitelných programů i zdrojových kódů
-** důležité pro neustále se rozrůstající projekt i vývojový tým+** důležité pro '''neustále se rozrůstající''' projekt i vývojový tým
* kvalitní a jednotný logging debug informací a informací o běhu * kvalitní a jednotný logging debug informací a informací o běhu
** mezi servery předávat volitelný parametr hlavičky TransactionID - vymýšlí klient (povětšinou řídící server (PHP), případně aktivátor konfigurací) - server nemění, zopakuje v odpovědi, pokud dotaz rozesílá dále, zopakuje. Loguje se pro snadné sledování akcí vyvolaných konkrétním požadavkem. ** mezi servery předávat volitelný parametr hlavičky TransactionID - vymýšlí klient (povětšinou řídící server (PHP), případně aktivátor konfigurací) - server nemění, zopakuje v odpovědi, pokud dotaz rozesílá dále, zopakuje. Loguje se pro snadné sledování akcí vyvolaných konkrétním požadavkem.
-** debug a log hlášení v angličtině (předpoklad brzkého exportu řešení mimo ČR)+** debug a log '''hlášení v angličtině''' (předpoklad brzkého exportu řešení mimo ČR)

Verze z 09:37, 16. 10. 2007

Zde jsou informace primárně pro SRPV

Obsah

Filosofie vývoje

  • důraz na spolehlivou základní funkčnost
    • co nejméně zbytečných omezení pro uživatele a vychytávek speciálních případů (na které stejně v praxi téměř nedojde a jen znepřehledňují kód)
  • důsledné ošetření chybových stavů, zotavení z chyb
    • počítat s výpadkem komunikace mezi distribuovanými komponentami ve kterémkoli okamžiku a zotavit se z něj
  • co největší modularita
    • na úrovni spustitelných programů i zdrojových kódů
    • důležité pro neustále se rozrůstající projekt i vývojový tým
  • kvalitní a jednotný logging debug informací a informací o běhu
    • mezi servery předávat volitelný parametr hlavičky TransactionID - vymýšlí klient (povětšinou řídící server (PHP), případně aktivátor konfigurací) - server nemění, zopakuje v odpovědi, pokud dotaz rozesílá dále, zopakuje. Loguje se pro snadné sledování akcí vyvolaných konkrétním požadavkem.
    • debug a log hlášení v angličtině (předpoklad brzkého exportu řešení mimo ČR)


Distribuovaný Virtlab

Testovací prostředí distribuovaného Virtlabu je budováno s podporou grantu-projektu Fondu rozvoje Cesnet č. 213/2006 a za spoluúčasti LCNA při obchodně-podnikatelské fakulty Slezské univerzity v Karviné.

Seznam prací a harmonogram pro zprovoznění pilotní konfigurace: http://virtis.viakis.net nebo https://virtis.viakis.net

V repository větev DISTR

  • Komunikace mezi lokalitami
    • Propojovací tunely - datové toky (enkapsulované rámce) mezi rozhraními laboratorních prvků. Propojovací tunely jsou ukončeny na tunelovacích serverech jednotlivých lokalit.
    • Komunikace mezi rezervačními servery
    • Komunikace mezi konfiguračními servery (?)


Nejbližší nutné kroky (OLD)

Oddělení logické topologie od fyzické - Honza Vavříček

  • část GUI pro práci se zařízeními buďto zatím odstranit nebo zobecnit, aby uměl generovat konfigurační soubory pro ConServer (mapování globálního jména prvku na znakové zařízení nebo IP adr./port) a rezervační server (parametry prvků k dispozici + časy kdy a komu). Pokud by bylo odstraněno, musel by správce konfigurační soubory psát ručně
  • nástěnka v současném pojetí s timesloty zmizí
  • rezervace - předělat, možnost rezervace bez ohledu na timesloty, paralelní a překrývající se rezervace
  • do úlohy přidat XML s popisem logické topologie
  • spuštění úlohy - úprava parametrů předávaných appletu (který je předává dále konzolovému serveru) - s ohledem na nový protokol applet-conserver, zaslání globální identifikace cílového laboratorního prvku a reservationID, který snad může nějak posloužit pro autentizaci.

Předání IP adresy správného konzolového serveru (proxying přes server lokality).

Konzolový server - Tomáš Hrabálek

  • Definice portů MOXA (/dev/ttyMx], na kterých jsou připojeny jednotlivé prvky, nezveřejňovat mimo konfigurační soubory Conserveru dané lokality. Navenek v protokolu Applet-Conserver pracovat s globálními jmény prvků. V konfiguračním souboru Conserveru dát možnost definovaat buďto číslo portu na MOXA (jméno souboru znakového zařízení) nebo IP adresu a portu serveru, kam navázat TCP spojení (instance UML a Dynamips)
  • Conserver musí mít v konfiguraci tabulku adres Conserverů ostatních lokalit, aby z globálního jména prvku, na který se chce uživatel připojit, ze jména lokality poznat, kam protáhnout TCP spojení.

Zápisy ze schůzek

  • Zápisy z porad - provozní záležitosti (produkční i testovací Virtlab), testing


Obecné informace

Testovací Virtlab může být kdykoli upgradován z SVN. Do SVN proto dávejte prosím jen konzistentní a rozumně funkční verze, žádné mezistavy. Pokud tedy na testovacím Virtlabu něco zkoušíte, udělejte si kopii webové struktury u sebe v adresáři, protože "oficiální" struktura webu může být kdykoli prepsána upgradem z repository.

Nabídka prací

Seznam prací, které potřebujeme provést pro zprovoznění pilotní instalace distribuovaného Virtlabu mezi lokalitami Ostrava a Karviná je v evidenčním systému jménem VirtIS, který běží na adrese: http://virtis.viakis.net nebo https://virtis.viakis.net, kde je možno zaznamenat zájem o jednotlivé úkoly.

Osobní nástroje