Virtlab:Vývojáři
Z VirtlabWiki
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
- Věci k zacházení s (touto) Wiki
- další užitečné informace jsou na stránce Nápověda a HOW-TOs
- Podrobné kontakty na člený SRPV s "rozpisem" činností
- Webové rozhraní pro přístup k SVN (nutná autentizace univerzálním heslem)
- Linuxové okénko nejen pro ne/ználky ;)
- Validace XML ve Virtlabu
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.