SlideShare a Scribd company logo
1 of 24
Download to read offline
Towards a Lightweight Multi-Cloud DSL
for Elastic and Transferable Cloud-native
Applications
Peter-Christian Quint, Nane Kratzke (Speaker)
8th International Conference on Cloud Computing and Services Science (CLOSER 2018); Madeira, Funchal, Portugal, 2018
The next 20 minutes are about ...
• Cloud applications and vendor lock-in
• Context of our research
• Different cloud orchestration approaches
• Cloud applications and resulting requirements
for a „Cloud Programming Language“
• Language proposal and evalution
• Conclusion and outlook
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
2
Presentation URL
Paper URL
Did you know … ?
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
3
2 2
2 4 6
7
7
7 7 11 11
1 1
2 4 7
10
14
21 26 42 44
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016
Relation	of	considered	services
considered	by	CIMI,	OCCI,	CDMI,	OVF,	OCI,	TOSCA not	considered	
80% of cloud services are not even
considered by cloud standards?
and it is getting worse
Our research focus …
Prof. Dr. rer. nat. Nane Kratzke
Praktische Informatik und betriebliche Informationssysteme
4
Operate application on current provider.
Scale cluster into prospective provider.
Shutdown nodes on current provider.
Cluster reschedules lost container.
Migration finished.
Quint, P.-C., & Kratzke, N. (2016). Overcome Vendor Lock-In by
Integrating Already Available Container Technologies - Towards
Transferability in Cloud Computing for SMEs. In Proceedings of CLOUD
COMPUTING 2016 (7th. International Conference on Cloud Computing,
GRIDS and Virtualization).
is to avoid vendor lock-in:
• Make use of elastic container
platforms to operate elastic
services being deployable to any
IaaS cloud infrastructure.
• Transfer of these services from one
private or public cloud infrastructure
to another at runtime.
Kratzke, N. (2017). Smuggling Multi-Cloud Support into Cloud-native
Applications using Elastic Container Platforms. In Proceedings of the 7th
Int. Conf. on Cloud Computing and Services Science (CLOSER
2017) (pp. 29–42).
Research Methodology
Cloud TRANSIT
5
[KQ2017a] Kratzke, N., &
Quint, P.-C. (2017).
Understanding Cloud-native
Applications after 10 Years
of Cloud Computing - A
Systematic Mapping
Study. Journal of Systems
and Software, 126 (April).
[KP2016] Kratzke, N., &
Peinl, R. (2016). ClouNS - a
Cloud-Native Application
Reference Model for
Enterprise Architects.
In 2016 IEEE 20th
International Enterprise
Distributed Object
Computing Workshop
(EDOCW) (pp. 1–10).
[Kra2017a] Kratzke, N.
(2017). Smuggling Multi-
Cloud Support into Cloud-
native Applications using
Elastic Container Platforms.
In Proceedings of the 7th
Int. Conf. on Cloud
Computing and Services
Science (CLOSER
2017) (pp. 29–42).
This
presentations
focus
Cloud Application Maturity Level
limits the presented approach
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
6
Can we solve cloud orchestration problems
different?
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
7
TOSCA
[QK2018a] Quint, P.-C., & Kratzke, N. (2018). Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-native
Applications. In Proceedings of the 8th Int. Conf. on Cloud Computing and Services Science (CLOSER 2018, Madeira, Portugal).
UCAML
[Kra2017a] Kratzke, N. (2017). Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms.
In Proceedings of the 7th Int. Conf. on Cloud Computing and Services Science (CLOSER 2017) (pp. 29–42).
PLAIN
Jolie
(1st language
for micro-
services)
Montesi F., Guidi C., Zavattaro G. (2014) Service-Oriented
Programming with Jolie. In: Bouguettaya A., Sheng Q., Daniel
F. (eds) Web Services Foundations. Springer, New York, NY
Independent Systems Architecture (ISA)
That is how practitioners build cloud applications
1. Modules (and Interfaces)
2. Separate Processes (Container)
3. Macro / Micro Architecture
4. Integration (limited and standardized)
5. Communication (limited set of protocols)
6. Independent continuous delivery pipeline (per
module)
7. Standardized operation (across all modules)
8. Standards: enforced via interfaces
9. Resilience (dependent service failures)
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
8
PRINCIPLES
Due to infrastructure-as-code even the Macro
Architecture can be made executable.
Two Architecture Levels
Decisions for all modules
Only very few languages
TOSCA, maybe Jolie
Decisions for one module
Thousands of languages
(each module can use its own)
MACRO Architecture MICRO Architecture
Requirements
for a Cloud Programming Language
R1: Containerized Deployment
The DSL must be designed to describe and label a
containerized deployment of discoverable services.
R2: Application Scaling
The DSL must be designed to describe elastic services.
R3: Compendiously
The DSL must be designed to be lightweight and pragmatic.
R4: Multi-Cloud Support.
The DSL must be designed to support multi-cloud
operations.
R5: Infrastructure agnostic
The DSL must be designed to be independent from a specifc
ECP or cloud infrastructure.
R6: Elastic runtime environment
The DSL must be designed to define applications being able
to be operated on an elastic runtime environment.
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
10
Core Language Model
Requirements R1, R2, R3
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
11
Infrastructure and platform agnostic
Requirements R4, R5, R6
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
12
A model-to-model transformer
transforms a universal CNA
definition (UCAML) into a
specific ECP format (Kubernetes
manifests, Swarm compose
files, etc.).
• The runtime environment is
a user decision (other like
Jolie, platform agnostic).
• But the runtime specifics
must not be modeled on the
application level (other like
TOSCA, infrastructure
agnostic).
Example („Hello World“)
Elastic webservice for checking prime numbers
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
13
Ucaml::application('prime-service-app',
expose: [Ucaml::expose(from: 'prime-service', port: 8888, as: 'public')],
services: [
Ucaml::service('prime-service',
request: Ucaml::request(cpu: 100, memory: 256, ephemeral_storage: 2),
scale: Ucaml::scalingrule(min: 1, max: 10, cpu: 66),
ports: [8888],
container: Ucaml::container('prime-unit', 'transit/primesvc:latest',
cmd: 'ruby hw-service.rb',
ports: [80]
)
)
]
)
Meanwhile we switched from
Java to a more pragmatic
Ruby-based DSL.
R1 : Containerized
deployments
R1 : Discoverable
services
R2 : Scalable
services
R3 : Pragmatic
description
All together …
14
R1 : Containerized deployments
R2: Scalable Applications
R3: Compendiously and pragmatic
R4 : Multi-Cloud Support
R5: Infrastructure agnostic
R6: Elastic runtime environment
UCAML (this paper)
PLAIN
Kratzke, N. (2017). Smuggling Multi-Cloud Support
into Cloud-native Applications using Elastic Container
Platforms. In Proceedings of the 7th Int. Conf. on Cloud
Computing and Services Science (CLOSER 2017)
Evaluation
E1 + E2
(Practicability)
To evaluate the usability [R3]
we described a Sock-Shop needing
[R1, R2]
deployed the Sock-Shop to Kubernetes,
and Docker Swarm [R6] in AWS, Azure,
GCE and OpenStack [R4]
E3
(Transferability)
For demonstrating IaaS
independence [R4]
we transfered the deployment at
runtime between IaaS
infrastructures of
Amazon Web Services, Microsoft
Azure, Google Compute Engine and
a OpenStack installation.
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
15
Evaluation
E1 + E2
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
16
See: https://microservices-demo.github.io/
„Sock Shop simulates an e-
commerce website that sells
socks. It is intended to aid the
demonstration and testing of
microservice and cloud native
technologies.“
Results of E3:
Transfers between AWS, GCE, Azure and OpenStack
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
17
Transfer of a 1+5 cluster (one master, five workers)
Only Kubernetes data presented
(Docker Swarm basically the same)
Conclusion
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
18
• For UCAML we rated DSL pragmatism and practitioner acceptance
higher than richness of DSL expressions.
• The DSL is intentionally designed for container and microservice
architectures but has limitations outside this scope.
• This limits DSL complexity but reduces possible use cases.
• The DSL supports currently the following container platforms:
• Kubernetes
• Docker Swarm
• And has been tested on the following IaaS infrastructes:
• AWS, GCE, Azure
• OpenStack
• Because it is infrastructure and platform agnostic further infrastructures
and platforms can be extended.
Acknowledgement
• Puzzle: Pixabay (CC0 Public Domain, PIRO4D)
• Definition: Pixabay (CC0 Public Domain, PDPics)
• Macro/Micro Architecture: isa-principles.org (CC-SA 3.0, innoQ GmbH)
• Checklist: Pixabay (CC0 Public Domain, Tumiso)
• Road Ahead: Pixabay (CC0 Public Domain, Nel_NZ)
• Air Transport: Pixabay (CC0 Public Domain, WikiImages)
• All cliparts: openclipart.com (CC0 Public Domain)
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
19
Picture Reference
Our research is funded by German Federal Ministry of Education
and Research (13FH021PX4).
Presentation URL
Paper URL
About
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
20
Nane Kratzke
CoSA: http://cosa.fh-luebeck.de/en/contact/people/n-kratzke
Blog: http://www.nkode.io
Twitter: @NaneKratzke
GooglePlus: +NaneKratzke
LinkedIn: https://de.linkedin.com/in/nanekratzke
GitHub: https://github.com/nkratzke
ResearchGate: https://www.researchgate.net/profile/Nane_Kratzke
SlideShare: http://de.slideshare.net/i21aneka
Backup Slides
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
21
So, what would a cloud programming
language be?
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
22
A computer programming language is a notation used to
write computer programs, which involves
a computer performing some kind of
computation or algorithm and possibly control of external
devices such as printers, disk drives, and so on.
Adapted from ACM SIGPLAN/Wikipedia
A cloud programming language is a notation on the macro
architecture level used to define cloud applications to be
provided via cloud infrastructures or platforms performing
processes and possibly composing further internal and
external services such as authentication, scaling, storage,
messaging, logging, and further domain/problem specific
services.
Cloud-native Application Definition
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
23
[KQ2017a] Kratzke, N., & Quint, P.-C. (2017). Understanding Cloud-native Applications after 10 Years of
Cloud Computing - A Systematic Mapping Study. Journal of Systems and Software, 126 (April).
Cloud-native Application
What?
Be IDEAL
• Isolated State
• Distributed
• Elastic
• Automated
management
• Loosely coupled
Why?
There is a need for ..
• Speed (delivery)
• Safety (fault tolerance,
design for failure)
• Scalability
• Client diversity
How?
Integrate ...
• (Micro)service oriented
architectures (M)SOA
• Use API-based
collaboration
• Consider cloud-focused
pattern catalogues
• Use self-service agile
platforms
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
24
C. Fehling, F. Leymann, R. Retter, W.
Schupeck, and P. Arbitter, Cloud
Computing Patterns: Fundamentals
to Design, Build, and Manage Cloud
Applications. Springer, 2014.
M. Stine, Migrating to Cloud-Native
Application Architectures. O’Reilly,
2015
A. Balalaie, A. Heydarnoori, and P.
Jamshidi, “Migrating to Cloud-Native
Architectures Using Microservices”,
CloudWay 2015, Taormina, Italy
S. Newman, Building Microservices.
O’Reilly, 2015.
Often heard by practitioners: „A cloud-native application is an
application intentionally designed for the cloud.“ True, but
helpful?

More Related Content

What's hot

Constantino vazquez open nebula cloud case studies
Constantino vazquez   open nebula cloud case studiesConstantino vazquez   open nebula cloud case studies
Constantino vazquez open nebula cloud case studies
CloudExpoEurope
 
RL-Cache: Learning-Based Cache Admission for Content Delivery
RL-Cache: Learning-Based Cache Admission for Content DeliveryRL-Cache: Learning-Based Cache Admission for Content Delivery
RL-Cache: Learning-Based Cache Admission for Content Delivery
Förderverein Technische Fakultät
 
Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...
Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...
Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...
Frederic Desprez
 
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
1crore projects
 
An asynchronous and task-based implementation of peridynamics utilizing HPX—t...
An asynchronous and task-based implementation of peridynamics utilizing HPX—t...An asynchronous and task-based implementation of peridynamics utilizing HPX—t...
An asynchronous and task-based implementation of peridynamics utilizing HPX—t...
Patrick Diehl
 
Bridging the Pervasive Computing Gap: An Aggregate Perspective
Bridging the Pervasive Computing Gap: An Aggregate PerspectiveBridging the Pervasive Computing Gap: An Aggregate Perspective
Bridging the Pervasive Computing Gap: An Aggregate Perspective
Roberto Casadei
 
About an Immune System Understanding for Cloud-native Applications - Biology ...
About an Immune System Understanding for Cloud-native Applications - Biology ...About an Immune System Understanding for Cloud-native Applications - Biology ...
About an Immune System Understanding for Cloud-native Applications - Biology ...
Nane Kratzke
 
Harvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with OpenstackHarvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with Openstack
Mirko Mariotti
 
User-­friendly Metaworkflows in Quantum Chemistry
User-­friendly Metaworkflows in Quantum ChemistryUser-­friendly Metaworkflows in Quantum Chemistry
User-­friendly Metaworkflows in Quantum Chemistry
Sandra Gesing
 
Introduction to National Supercomputer center in Tianjin TH-1A Supercomputer
Introduction to National Supercomputer center in Tianjin TH-1A SupercomputerIntroduction to National Supercomputer center in Tianjin TH-1A Supercomputer
Introduction to National Supercomputer center in Tianjin TH-1A Supercomputer
Förderverein Technische Fakultät
 
Academic cloud experiences cern v4
Academic cloud experiences cern v4Academic cloud experiences cern v4
Academic cloud experiences cern v4
Tim Bell
 
TeraGrid and Physics Research
TeraGrid and Physics ResearchTeraGrid and Physics Research
TeraGrid and Physics Research
shandra_psc
 

What's hot (20)

Constantino vazquez open nebula cloud case studies
Constantino vazquez   open nebula cloud case studiesConstantino vazquez   open nebula cloud case studies
Constantino vazquez open nebula cloud case studies
 
RL-Cache: Learning-Based Cache Admission for Content Delivery
RL-Cache: Learning-Based Cache Admission for Content DeliveryRL-Cache: Learning-Based Cache Admission for Content Delivery
RL-Cache: Learning-Based Cache Admission for Content Delivery
 
Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...
Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...
Grid'5000: Running a Large Instrument for Parallel and Distributed Computing ...
 
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
 
cloud schedualing
cloud schedualingcloud schedualing
cloud schedualing
 
An asynchronous and task-based implementation of peridynamics utilizing HPX—t...
An asynchronous and task-based implementation of peridynamics utilizing HPX—t...An asynchronous and task-based implementation of peridynamics utilizing HPX—t...
An asynchronous and task-based implementation of peridynamics utilizing HPX—t...
 
Cloud sim report
Cloud sim reportCloud sim report
Cloud sim report
 
Bridging the Pervasive Computing Gap: An Aggregate Perspective
Bridging the Pervasive Computing Gap: An Aggregate PerspectiveBridging the Pervasive Computing Gap: An Aggregate Perspective
Bridging the Pervasive Computing Gap: An Aggregate Perspective
 
About an Immune System Understanding for Cloud-native Applications - Biology ...
About an Immune System Understanding for Cloud-native Applications - Biology ...About an Immune System Understanding for Cloud-native Applications - Biology ...
About an Immune System Understanding for Cloud-native Applications - Biology ...
 
Harvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with OpenstackHarvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with Openstack
 
HSIENA: a hybrid publish/subscribe system
HSIENA: a hybrid publish/subscribe systemHSIENA: a hybrid publish/subscribe system
HSIENA: a hybrid publish/subscribe system
 
Cloud computing and CloudStack
Cloud computing and CloudStackCloud computing and CloudStack
Cloud computing and CloudStack
 
Euclid & Big Data from dark space by Guillermo Buenadicha at Big Data Spain 2015
Euclid & Big Data from dark space by Guillermo Buenadicha at Big Data Spain 2015Euclid & Big Data from dark space by Guillermo Buenadicha at Big Data Spain 2015
Euclid & Big Data from dark space by Guillermo Buenadicha at Big Data Spain 2015
 
User-­friendly Metaworkflows in Quantum Chemistry
User-­friendly Metaworkflows in Quantum ChemistryUser-­friendly Metaworkflows in Quantum Chemistry
User-­friendly Metaworkflows in Quantum Chemistry
 
Panda scalable hpc_bestpractices_tue100418
Panda scalable hpc_bestpractices_tue100418Panda scalable hpc_bestpractices_tue100418
Panda scalable hpc_bestpractices_tue100418
 
Cloudsim & Green Cloud
Cloudsim & Green CloudCloudsim & Green Cloud
Cloudsim & Green Cloud
 
Introduction to National Supercomputer center in Tianjin TH-1A Supercomputer
Introduction to National Supercomputer center in Tianjin TH-1A SupercomputerIntroduction to National Supercomputer center in Tianjin TH-1A Supercomputer
Introduction to National Supercomputer center in Tianjin TH-1A Supercomputer
 
Academic cloud experiences cern v4
Academic cloud experiences cern v4Academic cloud experiences cern v4
Academic cloud experiences cern v4
 
TeraGrid and Physics Research
TeraGrid and Physics ResearchTeraGrid and Physics Research
TeraGrid and Physics Research
 
Parallel Computing For Managed Developers
Parallel Computing For Managed DevelopersParallel Computing For Managed Developers
Parallel Computing For Managed Developers
 

Similar to Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-native Applications

Similar to Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-native Applications (20)

ClouNS - A Cloud-native Application Reference Model for Enterprise Architects
ClouNS - A Cloud-native Application Reference Model for Enterprise ArchitectsClouNS - A Cloud-native Application Reference Model for Enterprise Architects
ClouNS - A Cloud-native Application Reference Model for Enterprise Architects
 
Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Co...
Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Co...Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Co...
Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Co...
 
MPLS/SDN 2013 Intercloud Standardization and Testbeds - Sill
MPLS/SDN 2013 Intercloud Standardization and Testbeds - SillMPLS/SDN 2013 Intercloud Standardization and Testbeds - Sill
MPLS/SDN 2013 Intercloud Standardization and Testbeds - Sill
 
#OSSPARIS17 - Développeurs, urbanisez la consommation de vos Clouds et APIs a...
#OSSPARIS17 - Développeurs, urbanisez la consommation de vos Clouds et APIs a...#OSSPARIS17 - Développeurs, urbanisez la consommation de vos Clouds et APIs a...
#OSSPARIS17 - Développeurs, urbanisez la consommation de vos Clouds et APIs a...
 
Presentation of OCCIware, a standard, extensible Cloud consumer platform at P...
Presentation of OCCIware, a standard, extensible Cloud consumer platform at P...Presentation of OCCIware, a standard, extensible Cloud consumer platform at P...
Presentation of OCCIware, a standard, extensible Cloud consumer platform at P...
 
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
 
Concurrent and Distributed CloudSim Simulations
Concurrent and Distributed CloudSim SimulationsConcurrent and Distributed CloudSim Simulations
Concurrent and Distributed CloudSim Simulations
 
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingDDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
 
Openstack Pakistan Workshop (intro)
Openstack Pakistan Workshop (intro)Openstack Pakistan Workshop (intro)
Openstack Pakistan Workshop (intro)
 
Necos keynote ii_mobislice
Necos keynote ii_mobisliceNecos keynote ii_mobislice
Necos keynote ii_mobislice
 
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
 
Extensible and Standard-based XaaS Platform To Manage Everything in The Cloud...
Extensible and Standard-based XaaS Platform To Manage Everything in The Cloud...Extensible and Standard-based XaaS Platform To Manage Everything in The Cloud...
Extensible and Standard-based XaaS Platform To Manage Everything in The Cloud...
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud Computing
 
Cloud Testbeds for Standards Development and Innovation
Cloud Testbeds for Standards Development and InnovationCloud Testbeds for Standards Development and Innovation
Cloud Testbeds for Standards Development and Innovation
 
Cloud computing-ieee-2014-projects
Cloud computing-ieee-2014-projectsCloud computing-ieee-2014-projects
Cloud computing-ieee-2014-projects
 
Cloud Computing IEEE 2014 Projects
Cloud Computing IEEE 2014 ProjectsCloud Computing IEEE 2014 Projects
Cloud Computing IEEE 2014 Projects
 
Testbed for Heterogeneous Cloud
Testbed for Heterogeneous CloudTestbed for Heterogeneous Cloud
Testbed for Heterogeneous Cloud
 
Defense
DefenseDefense
Defense
 
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, SmileOCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
 
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
 

More from Nane Kratzke

More from Nane Kratzke (18)

Smart like a Fox: How clever students trick dumb programming assignment asses...
Smart like a Fox: How clever students trick dumb programming assignment asses...Smart like a Fox: How clever students trick dumb programming assignment asses...
Smart like a Fox: How clever students trick dumb programming assignment asses...
 
#BTW17 on Twitter (Die Bundestagswahl 2017 auf Twitter - war der Ausgang abzu...
#BTW17 on Twitter (Die Bundestagswahl 2017 auf Twitter - war der Ausgang abzu...#BTW17 on Twitter (Die Bundestagswahl 2017 auf Twitter - war der Ausgang abzu...
#BTW17 on Twitter (Die Bundestagswahl 2017 auf Twitter - war der Ausgang abzu...
 
About being the Tortoise or the Hare? Making Cloud Applications too Fast and ...
About being the Tortoise or the Hare? Making Cloud Applications too Fast and ...About being the Tortoise or the Hare? Making Cloud Applications too Fast and ...
About being the Tortoise or the Hare? Making Cloud Applications too Fast and ...
 
Serverless Architectures - Where have all the servers gone?
Serverless Architectures - Where have all the servers gone?Serverless Architectures - Where have all the servers gone?
Serverless Architectures - Where have all the servers gone?
 
There is no impenetrable system - So, why we are still waiting to get breached?
There is no impenetrable system - So, why we are still waiting to get breached?There is no impenetrable system - So, why we are still waiting to get breached?
There is no impenetrable system - So, why we are still waiting to get breached?
 
Der Bundestagswahlkampf 2017 auf Twitter - War der Ausgang abzusehen?
Der Bundestagswahlkampf 2017 auf Twitter - War der Ausgang abzusehen?Der Bundestagswahlkampf 2017 auf Twitter - War der Ausgang abzusehen?
Der Bundestagswahlkampf 2017 auf Twitter - War der Ausgang abzusehen?
 
Was die Cloud mit einem brennenden Haus zu tun hat
Was die Cloud mit einem brennenden Haus zu tun hatWas die Cloud mit einem brennenden Haus zu tun hat
Was die Cloud mit einem brennenden Haus zu tun hat
 
What the cloud has to do with a burning house?
What the cloud has to do with a burning house?What the cloud has to do with a burning house?
What the cloud has to do with a burning house?
 
RESTful APIs mit Dart
RESTful APIs mit DartRESTful APIs mit Dart
RESTful APIs mit Dart
 
ppbench - A Visualizing Network Benchmark for Microservices
ppbench - A Visualizing Network Benchmark for Microservicesppbench - A Visualizing Network Benchmark for Microservices
ppbench - A Visualizing Network Benchmark for Microservices
 
About Microservices, Containers and their Underestimated Impact on Network Pe...
About Microservices, Containers and their Underestimated Impact on Network Pe...About Microservices, Containers and their Underestimated Impact on Network Pe...
About Microservices, Containers and their Underestimated Impact on Network Pe...
 
Java Streams und Lambdas
Java Streams und LambdasJava Streams und Lambdas
Java Streams und Lambdas
 
Dart (Teil II der Tour de Dart)
Dart (Teil II der Tour de Dart)Dart (Teil II der Tour de Dart)
Dart (Teil II der Tour de Dart)
 
Dart (Teil I der Tour de Dart)
Dart (Teil I der Tour de Dart)Dart (Teil I der Tour de Dart)
Dart (Teil I der Tour de Dart)
 
Cloud Economics in Training and Simulation
Cloud Economics in Training and SimulationCloud Economics in Training and Simulation
Cloud Economics in Training and Simulation
 
Are cloud based virtual labs cost effective? (CSEDU 2012)
Are cloud based virtual labs cost effective? (CSEDU 2012)Are cloud based virtual labs cost effective? (CSEDU 2012)
Are cloud based virtual labs cost effective? (CSEDU 2012)
 
What Cost Us Cloud Computing
What Cost Us Cloud ComputingWhat Cost Us Cloud Computing
What Cost Us Cloud Computing
 
Overcoming Cost Intransparency of Cloud Computing
Overcoming Cost Intransparency of Cloud ComputingOvercoming Cost Intransparency of Cloud Computing
Overcoming Cost Intransparency of Cloud Computing
 

Recently uploaded

Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 

Recently uploaded (20)

Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 

Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-native Applications

  • 1. Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-native Applications Peter-Christian Quint, Nane Kratzke (Speaker) 8th International Conference on Cloud Computing and Services Science (CLOSER 2018); Madeira, Funchal, Portugal, 2018
  • 2. The next 20 minutes are about ... • Cloud applications and vendor lock-in • Context of our research • Different cloud orchestration approaches • Cloud applications and resulting requirements for a „Cloud Programming Language“ • Language proposal and evalution • Conclusion and outlook Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 2 Presentation URL Paper URL
  • 3. Did you know … ? Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 3 2 2 2 4 6 7 7 7 7 11 11 1 1 2 4 7 10 14 21 26 42 44 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 Relation of considered services considered by CIMI, OCCI, CDMI, OVF, OCI, TOSCA not considered 80% of cloud services are not even considered by cloud standards? and it is getting worse
  • 4. Our research focus … Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme 4 Operate application on current provider. Scale cluster into prospective provider. Shutdown nodes on current provider. Cluster reschedules lost container. Migration finished. Quint, P.-C., & Kratzke, N. (2016). Overcome Vendor Lock-In by Integrating Already Available Container Technologies - Towards Transferability in Cloud Computing for SMEs. In Proceedings of CLOUD COMPUTING 2016 (7th. International Conference on Cloud Computing, GRIDS and Virtualization). is to avoid vendor lock-in: • Make use of elastic container platforms to operate elastic services being deployable to any IaaS cloud infrastructure. • Transfer of these services from one private or public cloud infrastructure to another at runtime. Kratzke, N. (2017). Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms. In Proceedings of the 7th Int. Conf. on Cloud Computing and Services Science (CLOSER 2017) (pp. 29–42).
  • 5. Research Methodology Cloud TRANSIT 5 [KQ2017a] Kratzke, N., & Quint, P.-C. (2017). Understanding Cloud-native Applications after 10 Years of Cloud Computing - A Systematic Mapping Study. Journal of Systems and Software, 126 (April). [KP2016] Kratzke, N., & Peinl, R. (2016). ClouNS - a Cloud-Native Application Reference Model for Enterprise Architects. In 2016 IEEE 20th International Enterprise Distributed Object Computing Workshop (EDOCW) (pp. 1–10). [Kra2017a] Kratzke, N. (2017). Smuggling Multi- Cloud Support into Cloud- native Applications using Elastic Container Platforms. In Proceedings of the 7th Int. Conf. on Cloud Computing and Services Science (CLOSER 2017) (pp. 29–42). This presentations focus
  • 6. Cloud Application Maturity Level limits the presented approach Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 6
  • 7. Can we solve cloud orchestration problems different? Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 7 TOSCA [QK2018a] Quint, P.-C., & Kratzke, N. (2018). Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-native Applications. In Proceedings of the 8th Int. Conf. on Cloud Computing and Services Science (CLOSER 2018, Madeira, Portugal). UCAML [Kra2017a] Kratzke, N. (2017). Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms. In Proceedings of the 7th Int. Conf. on Cloud Computing and Services Science (CLOSER 2017) (pp. 29–42). PLAIN Jolie (1st language for micro- services) Montesi F., Guidi C., Zavattaro G. (2014) Service-Oriented Programming with Jolie. In: Bouguettaya A., Sheng Q., Daniel F. (eds) Web Services Foundations. Springer, New York, NY
  • 8. Independent Systems Architecture (ISA) That is how practitioners build cloud applications 1. Modules (and Interfaces) 2. Separate Processes (Container) 3. Macro / Micro Architecture 4. Integration (limited and standardized) 5. Communication (limited set of protocols) 6. Independent continuous delivery pipeline (per module) 7. Standardized operation (across all modules) 8. Standards: enforced via interfaces 9. Resilience (dependent service failures) Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 8 PRINCIPLES Due to infrastructure-as-code even the Macro Architecture can be made executable.
  • 9. Two Architecture Levels Decisions for all modules Only very few languages TOSCA, maybe Jolie Decisions for one module Thousands of languages (each module can use its own) MACRO Architecture MICRO Architecture
  • 10. Requirements for a Cloud Programming Language R1: Containerized Deployment The DSL must be designed to describe and label a containerized deployment of discoverable services. R2: Application Scaling The DSL must be designed to describe elastic services. R3: Compendiously The DSL must be designed to be lightweight and pragmatic. R4: Multi-Cloud Support. The DSL must be designed to support multi-cloud operations. R5: Infrastructure agnostic The DSL must be designed to be independent from a specifc ECP or cloud infrastructure. R6: Elastic runtime environment The DSL must be designed to define applications being able to be operated on an elastic runtime environment. Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 10
  • 11. Core Language Model Requirements R1, R2, R3 Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 11
  • 12. Infrastructure and platform agnostic Requirements R4, R5, R6 Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 12 A model-to-model transformer transforms a universal CNA definition (UCAML) into a specific ECP format (Kubernetes manifests, Swarm compose files, etc.). • The runtime environment is a user decision (other like Jolie, platform agnostic). • But the runtime specifics must not be modeled on the application level (other like TOSCA, infrastructure agnostic).
  • 13. Example („Hello World“) Elastic webservice for checking prime numbers Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 13 Ucaml::application('prime-service-app', expose: [Ucaml::expose(from: 'prime-service', port: 8888, as: 'public')], services: [ Ucaml::service('prime-service', request: Ucaml::request(cpu: 100, memory: 256, ephemeral_storage: 2), scale: Ucaml::scalingrule(min: 1, max: 10, cpu: 66), ports: [8888], container: Ucaml::container('prime-unit', 'transit/primesvc:latest', cmd: 'ruby hw-service.rb', ports: [80] ) ) ] ) Meanwhile we switched from Java to a more pragmatic Ruby-based DSL. R1 : Containerized deployments R1 : Discoverable services R2 : Scalable services R3 : Pragmatic description
  • 14. All together … 14 R1 : Containerized deployments R2: Scalable Applications R3: Compendiously and pragmatic R4 : Multi-Cloud Support R5: Infrastructure agnostic R6: Elastic runtime environment UCAML (this paper) PLAIN Kratzke, N. (2017). Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms. In Proceedings of the 7th Int. Conf. on Cloud Computing and Services Science (CLOSER 2017)
  • 15. Evaluation E1 + E2 (Practicability) To evaluate the usability [R3] we described a Sock-Shop needing [R1, R2] deployed the Sock-Shop to Kubernetes, and Docker Swarm [R6] in AWS, Azure, GCE and OpenStack [R4] E3 (Transferability) For demonstrating IaaS independence [R4] we transfered the deployment at runtime between IaaS infrastructures of Amazon Web Services, Microsoft Azure, Google Compute Engine and a OpenStack installation. Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 15
  • 16. Evaluation E1 + E2 Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 16 See: https://microservices-demo.github.io/ „Sock Shop simulates an e- commerce website that sells socks. It is intended to aid the demonstration and testing of microservice and cloud native technologies.“
  • 17. Results of E3: Transfers between AWS, GCE, Azure and OpenStack Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 17 Transfer of a 1+5 cluster (one master, five workers) Only Kubernetes data presented (Docker Swarm basically the same)
  • 18. Conclusion Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 18 • For UCAML we rated DSL pragmatism and practitioner acceptance higher than richness of DSL expressions. • The DSL is intentionally designed for container and microservice architectures but has limitations outside this scope. • This limits DSL complexity but reduces possible use cases. • The DSL supports currently the following container platforms: • Kubernetes • Docker Swarm • And has been tested on the following IaaS infrastructes: • AWS, GCE, Azure • OpenStack • Because it is infrastructure and platform agnostic further infrastructures and platforms can be extended.
  • 19. Acknowledgement • Puzzle: Pixabay (CC0 Public Domain, PIRO4D) • Definition: Pixabay (CC0 Public Domain, PDPics) • Macro/Micro Architecture: isa-principles.org (CC-SA 3.0, innoQ GmbH) • Checklist: Pixabay (CC0 Public Domain, Tumiso) • Road Ahead: Pixabay (CC0 Public Domain, Nel_NZ) • Air Transport: Pixabay (CC0 Public Domain, WikiImages) • All cliparts: openclipart.com (CC0 Public Domain) Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 19 Picture Reference Our research is funded by German Federal Ministry of Education and Research (13FH021PX4). Presentation URL Paper URL
  • 20. About Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 20 Nane Kratzke CoSA: http://cosa.fh-luebeck.de/en/contact/people/n-kratzke Blog: http://www.nkode.io Twitter: @NaneKratzke GooglePlus: +NaneKratzke LinkedIn: https://de.linkedin.com/in/nanekratzke GitHub: https://github.com/nkratzke ResearchGate: https://www.researchgate.net/profile/Nane_Kratzke SlideShare: http://de.slideshare.net/i21aneka
  • 21. Backup Slides Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 21
  • 22. So, what would a cloud programming language be? Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 22 A computer programming language is a notation used to write computer programs, which involves a computer performing some kind of computation or algorithm and possibly control of external devices such as printers, disk drives, and so on. Adapted from ACM SIGPLAN/Wikipedia A cloud programming language is a notation on the macro architecture level used to define cloud applications to be provided via cloud infrastructures or platforms performing processes and possibly composing further internal and external services such as authentication, scaling, storage, messaging, logging, and further domain/problem specific services.
  • 23. Cloud-native Application Definition Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 23 [KQ2017a] Kratzke, N., & Quint, P.-C. (2017). Understanding Cloud-native Applications after 10 Years of Cloud Computing - A Systematic Mapping Study. Journal of Systems and Software, 126 (April).
  • 24. Cloud-native Application What? Be IDEAL • Isolated State • Distributed • Elastic • Automated management • Loosely coupled Why? There is a need for .. • Speed (delivery) • Safety (fault tolerance, design for failure) • Scalability • Client diversity How? Integrate ... • (Micro)service oriented architectures (M)SOA • Use API-based collaboration • Consider cloud-focused pattern catalogues • Use self-service agile platforms Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 24 C. Fehling, F. Leymann, R. Retter, W. Schupeck, and P. Arbitter, Cloud Computing Patterns: Fundamentals to Design, Build, and Manage Cloud Applications. Springer, 2014. M. Stine, Migrating to Cloud-Native Application Architectures. O’Reilly, 2015 A. Balalaie, A. Heydarnoori, and P. Jamshidi, “Migrating to Cloud-Native Architectures Using Microservices”, CloudWay 2015, Taormina, Italy S. Newman, Building Microservices. O’Reilly, 2015. Often heard by practitioners: „A cloud-native application is an application intentionally designed for the cloud.“ True, but helpful?