Felhő környezetek modellvezérelt konfigurációkezelése

OData támogatás
Konzulens:
Kocsis Imre
Méréstechnika és Információs Rendszerek Tanszék

A több szolgáltatásból álló elosztott rendszerek tervezése és telepítése jelentős kihívások elé állítja a rendszermérnököket. Ez a probléma hangsúlyosan jelentkezik a privát felhők világában, különösen a sokoldalú és népszerű privát felhő keretrendszer, az OpenStack esetében. A nagyszámú szolgáltatás, konfigurációs lehetőség és a változatos terítési elrendezések mellett nehéz megfelelő tervezési döntéseket hozni. A szituációt tovább bonyolítja, hogy a szolgáltatások egymásra épülnek, ezért a beállításaiknak minden esetben konzisztensnek kell lenniük egymással. Ezt a problémát kiküszöböli az OpenStack-et automatikusan telepítő keretrendszerek alkalmazása (pl.: Fuel, TripleO), ezek közül azonban egyik sem támogatja a megvalósítandó konfiguráció modelljének MDD folyamat részeként történő létrehozását, illetve elemzését.

Az ilyen komplex rendszerekben a rendelkezésreállás megvalósítása jelenti az egyik legnagyobb nehézséget. Meg kell határozni a szolgáltatásbiztonság szempontjából releváns részszolgáltatásokat és az azokhoz megfelelő szolgáltatásbiztonsági mechanizmusokat, majd megtalálni a helyes telepítési elrendezést az elvárt felhő teljesítmény és rendelkezésreállás biztosítására. A konfiguráció funkcionális és hibatűrési teszteléséhez el kell végezni a telepítést, ami a jelenlegi technológiákkal időigényes feladat, főleg ha a terveket iteratívan javítani kell.

Munkám során az OpenStack példáján keresztül bemutatom, hogy a modellvezérelt fejlesztés eszközkészletének néhány alapvető technikáját adaptálva miként lehet megoldani ezeket a problémákat. Központi elemként létrehoztam egy úgynevezett konfigurációs tér metamodellt, mellyel leírhatók az OpenStack mint keretrendszer elemei, ezek lehetséges beállításai, valamint a közöttük húzódó kapcsolatok és függőségek.

Kidolgoztam és implementáltam egy transzformációt, mely egy konfigurációs tér modellből (pl. egy konkrét OpenStack verzió) egy olyan metamodellt generál, mely segítségével konkrét OpenStack telepítéseket lehet leírni és validálni. Műszakilag új eredményként a legfontosabb OpenStack részszolgáltatásokra megvalósítottam egy konkrét konfiguráció modelleket Docker konténerekben automatikusan megvalósító mechanizmust.

A konfigurációs modell által meghatározott, teljesítendő szolgáltatásbiztonsági igények (például aktív-aktív replikációk) és egyéb optimalizációs kritériumok (pl. robusztus particionálás, költség) kielégítésének támogatására felállítottam és implementáltam egy lineáris programozási modellt, mely a konfigurációs modellből kiindulva a részszolgáltatás-példányokat futtató gépekhez rendeli.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.