23
15. COMING konferencija 4.10.2018. Razvoj aplikacija u Cloudu Nevena Krunić

Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

15. COMING konferencija4.10.2018.

Razvoj aplikacija u Cloudu

Nevena Krunić

Page 2: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

• Kontejneri

• Docker

• Mikroservisi

• Kubernetes

• Cloud Based Applications• Machine learning

• Big Data

• Blockchain

• …

Aktuelne teme u svetu razvoja aplikacija

“Buzzwords”

Page 3: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Šta donosi prelazak u Cloud?

• Šta donosi sa sobom?

– Fleksibilnost

– Skalabilnost

– Inovativnost

• Aplikacije “rođene u oblaku”

– donose sa sobom i specifične zahteve na polju njihovog razvoja

Page 4: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Nove paradigme arhitekture aplikacija

Mikroservisna vs monolitna arhitektura aplikacija

- Mikroservisi

Page 5: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kontejneri

?

Page 6: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kontejneri - šta su zapravo

• Virtuelizovana sredina na nivou operativnog sistema

• Koriste zajednički kernel operativnog sistema

• Omogućavaju izvršavanje procesa sa zasebnim mrežnim i memorijskim resursima

Page 7: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Gde su kontejneri u pogledu razvoja aplikacija?• Omogućuju nam da “upakujemo” mikroservise sa

potrebnom konfiguracijom i izvršnim okruženjem

• Na taj način zapakovane celine „selimo“ kroz različita okruženja, bezuticaja na njeno ispravno funkcionisanje

Page 8: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Virtuelne mašine i kontejneri

Page 9: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Virtuelne mašine i kontejneri

• Prednost>– deljenje operativnog sistema- resursi su mnogo efikasnije

iskorišćeni u poređenju sa tradicionalnom virtuelizacijom,moguće je izostaviti suvišne komponente koje virtuelne mašine nose sa sobom

• Mana>– Izolacija

– Primena u razvoju “stateful” aplikacija

Page 10: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kontejneri - alati

Kako developeri rade sa kontejnerima?

• Docker - najšire zastupljen alat

Docker na klijentskim mašinama1. Docker za Linux

2. Docker za Windows

Windows 10 sa oktobarskim update-om (“Fall Creators Update”) omogućava i rad sa Linux kontejnerima- posredstvom Linux toolkita

3. Docker za MacOS

Page 11: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kontejneri - alati

A šta dalje?

• Docker host na serveru

1. On-prem server

2. Cloud server

VMware rešenje:

3. vSphere Integrated Containers

Page 12: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

vSphere Integrated Containers

• Razvoj i rad sa kontejner tehnologijama unutar postojećeg vSphere okruženja

• Centralizovano upravljanje – vSphere Client

• Istovremeno omogućavaju funkcionisanje postojećih servisa

• Kontejneri kao virtuelne mašine

Page 13: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

vSphere Integrated Containers

• Photon OS

• Istant Clone tehnologija

Page 14: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kontejneri - alati

Kako organizovati aplikacije upakovane u kontejnere?

Orkestracija kontejnera !

Page 15: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Orkestracija kontejnera

• Tehnologija “Sledeće generacije”

• Omogućava organizaciju, uvezivanje i olakšano skaliranjeservisa zapakovanih u kontejnere

Page 16: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kubernetes

• Najpopularnije rešenje za orkestraciju kontejnera

• Razvijen od strane kompanije Google

Page 17: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kubernetes - Arhitektura

• Osnovne komponente

Pod

Node

Klaster

Page 18: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kubernetes - Arhitektura

Page 19: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kubernetes

• On prem

• Cloud bazirano rešenje

Page 20: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Kubernetes i VMware

• On prem

• Cloud bazirano rešenje

Pivotal Containers Service

Container Service Extension za vCloud Director

Page 21: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Pivotal Containers Service

Page 22: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Container Service Extension za vCloud Director

Page 23: Razvoj aplikacija u Cloudu · –deljenje operativnog sistema- resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, moguće je izostaviti suvišne

Hvala na pažnji!