Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Konténeralapú felhőplatformok

    A tantárgy angol neve: Container Based Cloud Platform

    Adatlap utolsó módosítása: 2023. április 18.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar
    BSc, Mérnökinformatikus szak, Specializáció kötelezően választható tárgy
    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VITMAC14 5 2/2/0/v 5  
    3. A tantárgyfelelős személy és tanszék Dr. Simon Csaba,
    4. A tantárgy előadója Dr. Simon Csaba, egyetemi docens, TMIT
    Dr. Maliosz Markosz, egyetemi docens, TMIT
    5. A tantárgy az alábbi témakörök ismeretére épít Programozás, Kommunikációs hálózatok
    6. Előtanulmányi rend
    Ajánlott:
    Kötelező: A programozás alapjai 1-3, Kommunikációs hálózatok
    Ajánlott: Szoftvertechnikák
    7. A tantárgy célkitűzése A tárgy célja a modern, konténer alapú felhő rendszerek felépítésének bemutatása. A hallgató képes lesz áttekinteni egy felhő rendszer struktúráját, megérti a hálózati és virtualizációs megoldásait, a segítségével a fizikai eszközöket (hardverelemeket) egy, felhasználói igényeket rugalmasan támogató infrastruktúrát képes konfigurálni.
    A tárgy első részében a felhők megvalósításának építőelemeit, a Linux alapú platformokat, különösen azok hálózati részleteit tekintjük át. Bemutatjuk a virtualizációs megoldásokat, valamint a konténereket orkesztráló Kubernetes rendszert. Végül gyakorlati példák segítségével ismertetjük, hogy milyen módon képes a rendszer az erőforrásokat a változó igények szolgálatába állítani.

    A tantárgyat sikeresen teljesítő hallgató:
    • (K2) megérti és átlátja különböző méretű és típusú IT hálózatok és a hozzájuk közvetlenül kapcsolódó szolgáltatások működését és az egyes komponensek szerepét.
    • (K2) megismeri és megérti a különböző hálózati eszközök belső felépítését, működését és az ebből adódó lehetőségeket és kényszereket.
    • (K3) képes önállóan megtervezni és kialakítani kis- és közepes méretű IT hálózatokat, képes beüzemelni az összes alapvető hálózati szolgáltatást.
    • (K3) megismeri és használni tudja azokat a „szoftver szerszámokat", melyek segítségével lokalizálhatók az IT hálózatokban fellépő hibák, képes gyorsan elhárítani a hibás konfigurációkból adódó problémákat.
    • (K2) megismeri és megérti az olyan új hálózati technológiákat, mint az SDN és NFV.
    • (K1) ismertetni a virtualizációs technikákat, a hálózati virtualizációs megoldásokat, jellemző alkalmazási területeket és a különböző szolgáltatási modelleket
    • (K2) elmagyarázni a hálózati funkció virtualizálás (NFV) koncepciót, motivációit és annak előnyeit, hátrányait
    • (K3) tipikus (számítási, tárolási és analitikai) alkalmazások virtualizációja után az alkalmazás futtatásához szükséges virtualizációs környezet rendszerelemeinek meghatározására, a környezet konfigurálására

     

    8. A tantárgy részletes tematikája Az előadások részletes tematikája:

    1. Linux alapú platformok. Hálózatkezelés, egy csomag útja a rendszerben.
    2. Hálózati eszközök belső felépítése, működése, operációs rendszere (pl. OpenWRT)
    3. Alapvető segédeszközök, „szoftver szerszámok" (tcpdump, wireshark, iproute2, ifconfig, route, iptables, ...). Python script nyelv és gyakorlati alkalmazása.
    4. Hálózati funkciók a gyakorlatban: lokális hálózatok manuális konfigurálása; NAT működése és konfigurálása (iptables); firewall működése és konfigurálása (iptables); DHCP (isc-dhcp-server); DNS (bind9); (zero-konfiguráció és protokolljai).
    5. Erőforrás-virtualizáció alapjainak bemutatása, az erőforrás virtualizáció szintjei, alapvető koncepciók. Virtuális gépek és konténerek. KVM, QEMU, Docker
    6. Hálózati eszközökben elérhető hardver és szoftver erőforrások virtualizációja és felhasználása.
    7. Adatközpontokban elérhető erőforrások virtualizációja és megosztása, processzor virtualizáció, háttértár és memória virtualizáció, virtuális gépek, adatközpontok felépítése és működése, legfontosabb funkciók, API-k.
    8. Konténerek orkesztrációja, OpenStack és Kubernetes.
    9. Hálózatkezelés Dockerben, Kubernetesben, CNI.
    10. Komplex szolgáltatás kezelés Kubernetesben: Service Mesh (istio, envoy).
    11. Alkalmazások rugalmas erőforrásigényének kiszolgálása virtualizációs környezetben, skálázódás.
    12. Mesterséges intelligencia (MI) szerepe a rendszer működésében. Skálázási döntések, erőforrás felhasználás előrejelzése. MI alapú vezérlés, optimalizálás. Intelligens felhők.
    13. Felhő alapú szolgáltatások és analitika szolgáltatás minőségének (QoS) monitorozása és skálázódási kérdései (load balancing, high availability).
    14. Virtualizáció szerepe a modern (5. és 6. generációs) mobil hálózati architektúrákban, hálózati funkciók virtualizálása (Network Funcion Virtualization - NFV).

    A gyakorlatok/laborok részletes tematikája:


    1. Hálózatok kialakítása, eszközök összekapcsolása (NAT, tűzfal, DHCP, DNS).
    2. Hálózati topológia elemzése a „szoftver szerszámok"-kal (tcpdump, wireshark, iproute2, ifconfig, route, iptables, ...).
    3. A Python script nyelv gyakorlati alkalmazása hálózati környezet kialakítása és üzemeltetése során
    4. Software-Defined Networking (SDN) kontroller beállítása, Mininet emulációs környezetben.
    5. Virtualizációs technológiák: virtuális gépek kezelése OpenStack rendszerben (flavor, instance, networks), OpenStack fő komponensek
    6. Virtualizációs technológiák: konténerek kezelése Dockerben (kötetek, hálózatok kezelése)
    7. Virtualizációs technológiák: konténerek kezelése Kubernetes klaszterben (pod, deployment, service)
    8. Virtualizált elemek orkesztrációja: Heat orkesztráció OpenStack-ben
    9. Virtualizált elemek orkesztrációja: podok skálázása Kubernetesben
    10. Virtualizált elemek orkesztrációja: horizontális és vertikális skálázás Kubernetesben (HPA, VPA)
    11. Konténerek kezelése publikus felhő rendszerekben. Például erőforrás foglalás, konténerek kezelése Amazon Web Services-ben
    12. Szolgáltatások biztosítása Kubernetes rendszerben (pédlául istio).
    13. Felhő rendszerek adaptációja a dinamikus hálózati és forgalmi viszonyokra, terheléselosztás (load balancing).
    14. Szolgáltatások biztosítása 5G hálózatból - konténerek és VNF-ek (virtualized network function).

     

    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) A tárgy anyaga előadásokon és gyakorlatokon kerül ismertetésre heti 2 óra előadás és 2 óra gyakorlat ütemezésével.

    Az előadások során az elméleti részek bemutatása és a gyakorlatokhoz szükséges anyagok magas szintű áttekintése történik.

    A gyakorlatokon gyakorlatvezető segítségével történik vezetett feladatmegoldás, a tudás önálló elmélyítéséhez gyakorló feladatok kerülnek kiadásra, melyek a biztosított munkakörnyezetekben megoldhatók. A gyakorlatokon kiadott opcionális házi feladatokra a vizsgába beszámítandó bónusz pontok kaphatók maximum a vizsga pontszám 10 százalékáig.

    A gyakorlatok másik része nyílt forráskódú platformokon (pl. Kubernetes) történik saját virtuális munkakörnyezetben.
    Bizonyos gyakorlatok jelenléti, mások online formában kerülnek megtartásra.

    10. Követelmények Szorgalmi időszakban: A szorgalmi időszakban az aláírás megszerzésének és a vizsgára bocsátásnak a feltétele a zárthelyi legalább elégségesre történő megírása. A ZH online platformon (pl. Google Quiz) de fizikai jelenlét mellett történik.
    Vizsgaidőszakban: A vizsgaidőszakban az írásbeli vizsga online platformon (pl. Google Quiz) de fizikai jelenlét mellett történik. Elméleti tesztkérdések és mindenkinek testreszabott gyakorlati feladatok kerülnek kiadásra, melyek a biztosított munkakörnyezetekben oldhatók meg.
    11. Pótlási lehetőségek Egy sikertelen zárthelyi a szorgalmi időszakban a pótzárthelyin pótolható. A sikertelen (pót) zárthelyi a pótlási héten különeljárási díj ellenében egy további alkalommal pótolható.
    12. Konzultációs lehetőségek Az oktatóval történő egyéni egyeztetés alapján.
    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra56
    Félévközi készülés órákra24
    Felkészülés zárthelyire16
    Házi feladat elkészítése 
    Kijelölt írásos tananyag elsajátítása 
    Vizsgafelkészülés54
    Összesen150
    15. A tantárgy tematikáját kidolgozta Dr. Simon Csaba, egyetemi docens, TMIT
    IMSc tematika és módszer • IMSc hallgatóknak külön gyakorlati kurzust biztosítunk, ezek során emelt szintű feladatokat és problémákat tekintünk át. Külön házi feladatok is kiadásra kerülnek, melyek sikeres teljesítése esetén IMSc pontok kaphatóak.
    • A zárthelyin, azok pótlásain és a vizsgákon emelt szintű többletfeladatok teljesíthetőek IMSc pontokért.
    • Egyeztetett időpontban egy további, önkéntesen választható, emelt szintű foglalkozást biztosítunk, ahol a tárgy tematikájához szorosan kötődő, időszerű kutatási és fejlesztési problémákat és azok megoldásait ismertetjük. A cél az érdeklődő (elsősorban, de nem kizárólag IMSc-s) hallgatók motivációja a képzésük folytatására az MSc-n túl a PhD képzés keretei között.
    IMSc pontozás Legfeljebb 25 IMSc pont szerezhető hallgatónkként az alábbiak szerint:

    • Sikeresen megoldott opcionális házi feladatok: max. 15 IMSc pont.
    • Sikeresen megoldott többletfeladat ZH-n (vagy a pótlásán): max. 5 IMSc pont. A többletfeladatokat csak akkor értékeljük, ha az összes többi feladat alapján jelest szerzett a hallgató az adott számonkérésen.
    • Sikeresen megoldott többletfeladat vizsgán: max. 5 IMSc pont. A többletfeladatokat csak akkor értékeljük, ha az összes többi feladat alapján jelest szerzett a hallgató az adott számonkérésen.

    Az IMSc pontokat az IMSc programban részt nem vevő hallgatók is elnyerhetik a fentiek szerint.