Moderna Strežniška Infrastruktura / Modern Server Infrastructure

Strežniška infrastruktura je od uveljavitve javnih in zasebnih oblakov doživela nesluten razcvet. Podjetje Amazon je s svojim oddelkom AWS (Amazon Web Services) začelo revolucijo v vsesplošni uporabi najema in programiranja strežniške infrastrukture. Skupaj s tehnologijo virtualizacije in kasneje tudi programskih kontejnerjev* (angl. software containers), ki sta obe znani in uporabljani v svetu Linuxa že dalj časa, je z osredotočanjem na lažjo uporabo kontejnerjev pri razvijalcih pravo revolucijo začelo podjetje Docker. Uporaba kontejnerjev je v svet virtualizacije vnesla novo paradigmo nespremenljive infrastrukture (immutabe infrastructure). Virtualizacija, kontejnerji in njihovo definiranje ter upravljanje je eno od najbolj iskanih znanj v podjetjih, skupaj s področjem t.i. DevOps praks.

Študenti pridobijo pri tem predmetu konkretne izkušnje z virtualizacijo, kontejnerji in njegovimi podpornimi tehnologijami, ter se naučijo, kako zgraditi skalabilno oblačno aplikacijo (cloud native apps) s paradigmo nespremenljive infrastrukture. Pridobijo znanje, ki ga v tujini dobijo tečajniki pri t.i. tehničnih treningih:

  • Tehnični gradniki oblačnih aplikacij aplikacij z uporabo t.i. nespremenljive infrastukture:
    • porazdeljevanje bremen, skalabilnost, visoka razpoložljivost
    • deklarativno nastavljanje infrastructure (Infrastructure as a code)
    • nespremenljiva infrastruktura (immutable infrastructure)
    • CI/CD (Continuous Integration/Continuous Delivery /Deployment)
    • serverless arhitektura in arhitektura mikro storitev (microservices)
    • GitOps
    • CNCF (Cloud Native Computing Foundation) in priporočila
  • Virtualizacija, hipervizorji, kontejnerji, razlike, primeri uporabe
    • Izbor prave tehnologije glede na problem, ki ga rešuješ
  • Praktično delo z virtualnimi strežniki in hipervizorji
  • Praktično delo s kontejnerji (Docker)
  • Kubernetes (Google) - orkestratorji kontejnerjev v produkcijskih okoljih:
    • nadgradnje brez izpada (0-downtime deployment)
  • DevOps prakse in koncepti, njihov pomen in vloga v razvoju

Vsa tematika bo sproti podprta s praktičnimi, “hands-on” vajami.