ENGLISH / MAGYAR
Kövess
minket

Modell alapú kódgenerálás virtuális infrastruktúra automatizált létrehozásához

2018-2019/I.
Dr. Buttyán Levente

Több alkalmazásban is felmerül nagy méretű virtuális infrastruktúrák létrehozásának igénye. Ilyen alkalmazás például egy csapdarendszer (honey system), egy kiberbiztonsági gyakorlat, egy céges irodai környezet felhő alapú megvalósítása, vagy nagy adatközpontok létrehozása. Ezekben az esetekben a virtuális infrastruktúra különböző operációs rendszereket és alkalmazásokat futtató virtuális hosztokból, szerverekből, és ezeket összekapcsoló különböző virtualizált hálózati eszközökből áll. Egy ilyen infrastruktúra manuális úton történő felállítása általában időigényes feladat, amely rengeteg beállítással, finomhangolással, és hibajavítással jár. Léteznek azonban olyan keretrendszerek, mint pl. az Ansible, melyek segítségével a kívánt architektúra és szoftverkörnyezet formálisan specifikálható, és a virtuális hosztok, szerverek,  és hálózati berendezések ebből a specifikációból automatikusan legenerálhatók és konfigurálhatók. Ez lehetővé teszi nagy méretű virtuális infrastruktúrák egyszerű létrehozását és kezelését Infrastructure-as-Code (IaC) alapon. 

A hallgató feladata a fenti koncepció támogatását célzó keretrendszer kifejlesztése, mely lehetővé teszi a virtuális infrastruktúra automatizált generálásához szükséges formális specifikációk modell alapú automatizált legenerálását. A cél tehát az, hogy egy absztrakt módon leírt infrastruktúra tervből automatizáltan előálljanak azok a formális leírások, melyek inputként szolgálnak az IaC keretrendszer számára. A feladat részeként a hallgatónak javasolnia kell egy modellt, mely alkalmas számítógépes infrastruktúrák absztrakt definiálására, és automatizált kódgenerálási módszereket használva meg kell valósítania az absztrakt modell „fordítását” az IaC keretrendszer inputját alkotó specifikációkra. A megoldásnak támogatnia kell az Ansible IaC keretrendszert, azaz a kódgenerátornak Ansible szkripteket kell előállítania az absztrakt modellből. További cél az Ansible szkriptek futásának eredményét tesztelő szkriptek automatizált generálása, azaz a megoldásnak támogatnia kell a teszt szkriptek absztrakt modellből történő automatizált generálását is. 


1
1