Računalniške storitve v oblaku

Opis predmeta

Razvoj aplikacij, ki se izvajajo na strežnikih

Definicija računalništva v oblaku: kaj je računalništvo v oblaku, namen, vloga in pomen, cilji

Izzivi: upravljanje infrastrukture, arhitektura aplikacij za oblak, shranjevanje podatkov, varnost, ostali vidiki

Lastnosti: samo oskrba na zahtevo, elastičnost in skalabilnost, dostop v obliki storitev, nadzor storitev, souporaba virov (pooling), itd.

Storitveni modeli: IaaS (Infrastruktura kor storitev), PaaS (Platforma kot storitev), SaaS (Aplikacije kot storitve), XaaS

Podrobni pregled IaaS (Infrastruktura kor storitev)

  • Pregled konceptov, arhitekturni vidik
  • Privatni oblak, javni oblak, hibridni oblak, virtualni oblak
  • Spoznavanje in primerjava najpomembnejših IaaS tehnologij

Podrobni pregled PaaS (Platforma kot storitev)

  • Pregled konceptov, arhitekturni vidik
  • Spremembe v razvojnih modelih: Trajno stanje: distribuirani datotečni sistemi, nestrukturirane shrambe, NoSQL baze, SQL baze v oblaku; Poslovna logika: spletne storitve, REST storitve, ostale tehnologije; Izvajalno okolje
  • Spoznavanje in primerjava najpomembnejših PaaS tehnologij: Java EE, Azure, Google App Engine, itd.

Podrobni pregled SaaS (Aplikacije kot storitve)

  • Pregled konceptov, arhitekturni vidik
  • Model dostopa, koncept razvoja
  • Poslovni model, storitve v oblaku (lokacijske, dostava podatkov, bogatenje podatkov, integracijske storitve, poslovna inteligenca, itd.)

Namestitveni modeli

  • Zasebni, javni, hibridni, skupni oblak
  • Na lokaciji, pri ponudniku, hibridni model, pregled ponudnikov

Migracija v oblak

Nadzor, upravljanje, SLA in QoS

 

Praktični del:

  • Vzpostavitev lastnega računalniškega oblaka
  • Razvoj aplikacij za oblak

o Tehnološki vidiki

o Vsebinsko-poslovni vidiki

  • Razvoj inovativnih aplikacij, ki delujejo v oblaku
  • Konfiguriranje hibridnega računalniškega oblaka
  • Spoznavanje najpomembnejših javnih oblakov: Amazon, Google App Engine, Azure, OpenStack, itd.
  • Študija prenosljivost oblačnih rešitev med ponudniki
  • Razvoj specifičnih razširitev za oblak

Predmet učimo na programih

Cilji in kompetence

Cilj predmeta je osvojiti poglobljene znanje in poznavanje področja računalništva v oblaku in vseh nivojev storitvene usmerjenosti (XaaS), osvojiti znanje s področja infrastrukture, platforme in aplikacij v obliki storitev, spoznati načrtovalske vzorce, arhitekturne modele in dobre prakse ter razumeti pomen inovativnih aplikacij v oblaku.

Kompetence:

Študentje bodo sposobni vzpostaviti infrastrukturo za delovanje privatnih, hibridnih in zasebnih oblakov, načrtovati in implementirati arhitekturo platforme PaaS, načrtovati in implementirati aplikacije, ki se izvajajo na PaaS, razumeti specifike oblačnih arhitektur in infrastruktur. Usposobljeni bodo za razvoj SaaS aplikacij na najpomembnejših PaaS/IaaS. Razumeli bodo pomen inovacij v oblaku.

Metode poučevanja in učenja

Predavanja, računalniške vaje, projektni način dela pri seminarjih.

Predvideni študijski rezultati

Po uspešnem zaključku predmeta bo študent:

– razvijal programske rešitve za delovanje v oblaku

– poznal lastnostni javnih in zasebnih oblakov

– razumel infrastrukture in arhitekture računalniških oblakov

– razumel cloud-native arhitekturo in jo uporabil pri razvoju

– obvladal razvoj mikrostoritev

– razumel in uporabljal vzorce za razvoj mikrostoritev

– uporabil vsebnike in orkestracijo vsebnikov

– sposoben razvoja SaaS aplikacij

Temeljni viri in literatura

1.      Barrie Sosinsky, Cloud Computing Bible, Wiley; 2011.

2.      George Reese, Cloud Application Architectures: Building Applications and Infrastructure in the Cloud, O'Reilly Media; 2009.

3.      David S. Linthicum, Cloud Computing and SOA Convergence in Your Enterprise, Addison-Wesley Professional, 2009.

4.      John Rhoton, Risto Haukioja, Cloud Computing Architected: Solution Design Handbook, Recursive Press, 2011.

5.    Matjaz B. Juric et al., Do more with SOA Integration, Packt Publishing, 2011.

Bodi na tekočem

Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana

E:  dekanat@fe.uni-lj.si T:  01 4768 411