27
Infrastruktura za moderne aplikacije Dragan Kešelj

Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

Infrastruktura za moderne aplikacijeDragan Kešelj

Page 2: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 2

Pre interneta…

Godine 1895, Nikola Tesla i Džordž Vestinghaus grade prvu hidroelektranu na svetu na Nijagarinim vodopadima baziranu na Teslinom pronalasku generatora i sistema prenosa naizmenične struje

Tomas Edison u to vreme vodeći američki pronalazač i industrijalac pokreće marketinšku kampanju kako bi promovisao jednosmernu struju.

Edison bi organizovao javnu egzekuciju životinja kako bi dočarao opasnosti naizmenične struje. Ova kampanja je kasnije dobila naziv "Rat struja"

Page 3: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 3

Infrastruktura

Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za prenos, niskonaponskog sistema i konačno kućnih priključaka.

Na slici je prikazan model trofazne infrastrukture iz Muzeja Nikole Tesle.

Page 4: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 4

Korisnička strana

• Samo dva elementa, sijalica i prekidač• Sa strane korisnika infrastruktura nije bitna

Page 5: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 5

Arhitektura aplikacije

Zone interesa:• Korisnik

• Aplikacija

• Developer• Aplikacija

• Baza

• Korisnik?• OS

• Serveri

Server

Baza

OS

Aplikacija

Page 6: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 6

Virtualizacija

Zone interesa:• Korisnik

• Aplikacija

• Developer• Aplikacija

• Baza

• Cloud usluga• VM

Baza

VM

Aplikacija

Page 7: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 7

Virtualizacija

Problemi

Rešeni◦ Visoka dostupnost

◦ Izolacija

◦ Briga o infrastrukturi

Preostali◦ Aplikacije su se preselile na Internet

◦ Skalabilnost◦ Više instanci

◦ Geografska

◦ Izmena delova sistema po potrebi

◦ Ažuriranje bez prekida u radu (hotswap)

Page 8: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 8

Struktura sistema

Statistics Module

Management Console

Buyers

Seller

SmartCAL

ERP

Odyssey ConnectERP Services

Odyssey

pri

ces,

ava

ilab

ility

, in

voic

es,

art

icle

s, u

pd

ate

s

orders orders

prices, availability,

invoices

prices, availability,

invoices

Page 9: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 9

Korisnici

Colombia

South Africa

United KingdomSlovakia

Croatia

Bosnia and Herzegovina

Serbia

Greece

Macedonia

MontenegroEl Salvador

Ireland

Page 10: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

· Premium support · Monitoring centre · 24/7 critical support ·

2019 10

Customer care

QUANTUM-AutoMARKET

Page 11: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

Docker

Mikro servisi

2019 QUANTUM - AutoMARKET 11

Moderna infrastruktura

DB servis

Hardverski sloj

App 1

Softver kao servis SaaS

Redis / State Storage

X86Int/AMD

ARM GPU Risc V ASIC FPGA

Virtualizacija

Multicloud

AWS Azure VMWare LocalGoogle COMING

Login

Kubernetes

App 2

Page 12: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 12

Moderna infrastruktura

Page 13: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 13

Mikroservisi

Prednosti MS arhitekture

◦ Mali timovi

◦ Nezavisna od razvojnog jezika

◦ Lokalizacija problema

◦ Skalabilnost sistema

◦ Na nivou mikroservisa

◦ Mikroservisi mogu imati druge mikroservise kao izvor podataka

Page 14: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 14

Netflix mikroservis arhitektura

Page 15: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 15

Kubernetes

Hosting mikroservisa

◦ Najefikasniji hosting mikroservisa je u kontejneru

◦ Za automatizaciju, redudantnost i skalabilnost koristimo Kubernetes

Page 16: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 16

Kubernetes

Šta je Kubernetes – K8s

Kubernetes predstavlja set gradivnih blokova koji zajedno obezbeđuju mehanizme za:

◦ Publikaciju (Depoyment)

◦ Održavanje

◦ Skaliranje aplikacija

Bazirano na potrebama za procesorskim vremenom, memorijom ili korisničkom metrikom

Page 17: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 17

Kubernetes - Rečnik

◦ Pod◦ Pokreće jedan ili više kontejnera

◦ Kontejner sadrži kopiju mikroservisa

◦ Nod - Host◦ Komunicira sa masterom

◦ Pokreće i održava u životu podove

◦ Master◦ Kontroliše klaster i nodove na njemu

◦ Servis◦ Prihvata zahteve

◦ Tipično ima ulogu load balancer-a

◦ Deployment◦ Definiše željeno stanje aplikacije –

Kubernetes radi ostalo

Page 18: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 18

Kubernetes

Hosting mikroservisa – K8s POD

◦ Najmanja jedinica za deployment

◦ Predstavlja grupu usko vezanih kontejnera

◦ Može sadržati jedan ili više kontejnera

◦ Dele mrežni i pristup podacima

◦ Imaju rutabilnu IP adresu

◦ Smrtni su!

Page 19: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 19

Kubernetes

Hosting mikroservisa – Kada se sve spoji:Developer postaje hosting provajder!

Page 20: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 20

Automatizacija

Primer – K8s deployment

Yaml skripta za kreiranje K8s klastera:

◦ Definiše “desired state”

◦ Pristupna adresa/port

◦ Broj instanci

◦ Verzija aplikacije

◦ Verzija okruženja

Page 21: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 21

Automatizacija

Infrastructure as a Code - IaC

◦ Developer opisuje željeno stanjesistema

◦ K8s automatski obezbeđuje:◦ Load balancing

◦ Skalabilnost

◦ Redudantnost

◦ Zaštitu od otkaza

Page 22: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 22

Kubernetes

Page 23: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 23

Moderne baze podataka – DB as a Service

Hyperscale SQL◦

Page 24: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 24

Strategije

◦Strategije za Deployment◦ CI/CD◦ Automatizovana distribucija (deployment)◦ Definisanje hardverskog okruženja kroz skripte

◦Strategije za aplikacije◦ Mikroservisi (nezavisni od OS - .NET Core)◦ Kubernetes (za orkestraciju)

◦Strategije za baze podataka◦ DB as a Service - Hyperscale DB◦ Kubernetes friendly DB – MongoDB, Elastic Search, Cassandra

Page 25: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 25

Pouka

Perspektive se razlikuju!

Page 26: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

2019 QUANTUM - AutoMARKET 26

Pouka

• Softver se više ne dizajnira

prema okruženju, već okruženje

prema potrebama softvera!

• Prvi put u istoriji smo došli do

infrastrukture stvorene baš za

developera - IaC.

• Ovo je početak nove ere u

razvoju softverskih rešenja.

Page 27: Infrastruktura za moderne aplikacije Dragan Kešelj...Infrastruktura je za to vreme bila veoma komplikovana i sastojala se od: generatora, transformatora, visokonaponskog sistema za

Hvala na pažnji!

2019 27

QUANTUM – AutoMARKET d.o.o.Toše Jovanovića 7

11030 Beograd / Belgrade

Srbija / Serbia

Tel: +381 (0)11 2310 145

+381 (0)11 2310 182

Email: [email protected]

[email protected]: www.AutoMARKET.rs