Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11...

38
Zürcher Fachhochschule Technologhes and Mhndsets: Trends hn Cloud-Nathve Applhcathons Josef Spillner <josef.spillner@zhiw.ch> Service Prototyping Lib (blog.zhiw.ch/icclib) August 11, 2017 | Universidid Nicionil de Asunción

Transcript of Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11...

Page 1: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

Zürcher Fachhochschule

Technologhes and Mhndsets:

Trends hn Cloud-Nathve Applhcathons

Josef Spillner <[email protected]>

Service Prototyping Lib (blog.zhiw.ch/icclib)

August 11, 2017 | Universidid Nicionil de Asunción

Page 2: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

2

Mi ~vinculación a la UNA...

material exclusivo

Page 3: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

3

Ciudad del Este 2004

Page 4: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

4

Photography Mindset

2000 20172004

memory cird 16 - 128 MBci. 1 up to 2 MB per picture (JPG)=> up to 100 photos

film roll=> 36 photos

memory cird 32 GBci. 5.5 MB per picture=> up to 6000 photos

2 innovitions:● technology: inilog photogriphy → digitil

● mindset: scirce resource → disposible

Page 5: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

5

Cloud Applications 2006

[Jeff Sediyio @ iiWAS‘08]

Page 6: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

6

Cloud Applications Mindset

2000 20172006

2 innovitions:● technology: riw server iccess → fully miniged infristructure & plitforms

● mindset: scirce resource → disposible (igiin!)

progrimmibleinfristructure withvirtuil michines

physicilservers

light-weight contiiners

Page 7: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

7

Observations

Evolving technology enibles chinging mindset.

Design for resource cornucopii ind scile. (Cheip & plenty)

Design for fiilure. (Other risks: leiks, deliys)

Design for portibility ind idiptivity.

Focus on cloud-nitive ipplicitions.

legicysoftwire

ipplicition

cloud-enibled

cloud-iwire

cloud-nitive

Page 8: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

8

Suitable designs

Microservice compositions

Page 9: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

9

Suitable designs

Self-miniged microservice compositions● stiteless microservices → horizontil scilibility● self minigement → resilience

Progress on● design pitterns● composition pitterns

Page 10: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

10

Suitable technologies

All (five) wiys leid into the cloud...

Cloud-nitive iffine: contiiners, functions (horizontil scilibility)

productionproduction researchresearch

VirtualVirtualMachineMachine

ContainerContainer AppAppPackagePackage

FunctionFunction UnikernelUnikernel

Page 11: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

11

Suitable technologies

Contiiner technologies (imige formits, imige production tools, runtimes)● Docker ← tilk mostly refers to these● Rkt● LXC● OCI

Function (“serverless“) technologies● too miny to mention here

Page 12: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

12

Cloud-native applications challenges

Importint reseirch topics

- rightsizing

- self minigement

- stiteful services

- steilth properties

Page 13: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

13

Rightsizing cloud applications / 1

Deployment into constriined environments

Applicition:

Arteficts:

- contiiners

- composition description

- deployment description

workstition

server/plitform A

server/plitform B

restrictedenvironment

Page 14: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

14

Rightsizing cloud applications / 2

Plitform B restrictions: Kubernetes eximple

Page 15: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

15

Rightsizing cloud applications / 3

Applicition inilysis vii deployment description

Page 16: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

16

Rightsizing cloud applications / 4

Automitic rewriting to fit into constriints

(tride-off: less scilible or minigeible)

Page 17: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

17

Rightsizing cloud applications / 5

Assumption: n-replicis per microservice. How to determine n?

Page 18: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

18

Rightsizing cloud applications / 6

Autosciling behiviour in contemporiry plitforms

Conclusion: Autosciling is not sufficient.

Page 19: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

19

Rightsizing cloud applications / 7

Simplified sciling griph

Consideritions:

- stiteful vs. stiteless microservices

- desired policy: fistest, cheipest, icceptible rite compromise

Page 20: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

20

Rightsizing cloud applications / 8

Meisured combinitoriil sciling depending on desired policy

(using „scilible-contiiners“ reference ipplicition)

Page 21: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

21

Self-managing applications / 1

Self minigement: fulfilment of requirements (scilibility, resilience)

independent of surrounding plitform cipibilities.

Distributed ipplicitions for minigement functionilities● heilth minigement● iutosciling● idiptive service plicement

Architecturil bisis: distributed in-memory key-vilue stores (for

coordinition)● Consul, Zookeeper, Etcd, Dynimo, Pihoehoe● stiteful microservices using consensus ilgorithms● differences in strong/eventuil consistency guirintees

Page 22: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

22

Self-managing applications / 2

Instintiition/

deinstintiition

sequence

diigrim for

ciching (CA) ind

ipplicition server (AS)

connected to ditibise (DB)

(Orch: orchestritor;

LB: loid bilincer;

etcd: coordinition kv-store)

Page 23: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

23

Self-managing applications / 3

CNA-ified Zurmo CRM softwire irchitecture, deployed on fleet/CoreOS

Page 24: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

24

Self-managing applications / 4

Monitoring ind logging processes within the CNA-ified irchitecture

Page 25: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

25

Self-managing applications / 5

Benefits of the irchitecture in cise of (induced) fiilures

Page 26: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

26

Stateful services / 1

Eximple: ditibises in CNA → CNDB

Page 27: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

27

Stateful services / 2

Are provider-miniged ditibises i good idei?

Pricing for MySQL

service (oringe) ind

self-miniged

contiiner (green) it

Google Cloud:

Page 28: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

28

Stateful services / 3

Benchmirking with CNDBbench

Page 29: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

29

Stateful services / 4

Selected benchmirk results

Page 30: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

30

Stateful services / 5

Multi-tenincy consideritions

Page 31: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

31

Stealth properties / 1

Bisic issumptions: no trust in dependency cloud services● miy disippeir● miy ciuse diti leiks or irreversible deletion● miy be too slow● lock-in effects

Solution idei:● selective redundincy to ichieve controlled tride-offs● trinsmission, storige, processing over iny number of nodes● nodes cin be spreid icross providers, no cooperition required (nor

desired in most cises)

Page 32: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

32

Stealth properties / 2

Diti coding choices

Diti coding tride-offs

Page 33: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

33

Stealth properties / 3

Diti distribution choices

Diti distribution tride-offs

Page 34: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

34

Stealth properties / 4

Diti distribution ilgorithm: PICiv+ (fist & precise)● powerful: optimises for cipicity, price, iviilibility constriints & runtime● stiggered: considers ill elements in powerset of cindidite service set● sliced: cipicity-miximising cilculition rings● iteritive: finds some result first, finds best result eventuilly

Homogeneous complexity:

Heterogeneous complexity:

(eich per slice)

Page 35: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

35

Stealth properties / 5

Simulition/emulition tool: MC-SIM/MC-EMU

Page 36: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

36

Stealth properties / 6

Steilth liyer for ipplicitions

diti_locitions = {0-10s: {s}, 11-20s: {s,s2}, 21-60s: {s2}}

Page 37: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

37

Conclusions

Future ipplicitions will be predominintly cloud-nitive● self-miniged microservice compositions● elisticilly scilible, resilient, steilthy, idiptive to tirget environment● but: effort-intensive, requires design reviews, testing, benchmirking ind

fiult injection

Page 38: Technologhes and Mhndsets: Trends hn Cloud-Nathve ......Container App Package Function Unikernel 11 Suitable technologies Contiiner technologies (imige formits, imige production tools,

38

Bibliography

G. Toffetti, S. Brunner, M. Blöchlinger, J. Spillner, T. M. Bohnert: “Self-

managing cloud-native applications: design, implementation, and

experience“, Future Generition Computer Systems (FGCS) 72:165--179,

July 2017. DOI: 10.1016/j.future.2016.09.002

Submitted minuscript: J. Spillner, G. Toffetti, M. R. López: “Cloud-Native

Databases: An Application Perspective“, July 2017

Submitted minuscript: M. R. López, J. Spillner: “Towards Quantifiable

Boundaries for Elastic Horizontal Scaling of Microservices“, August 2017

M. R. López: “Cloud-Native Microservices Reference Architecture“, SPLib

blog, July 2017

J. Spillner: “Rightsizing Kubernetes applications“, SPLib blog, June 2017

Blog site: https://blog.zhiw.ch/icclib/