Virtlab:Vývojáři
Z VirtlabWiki
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.