ClouNSA Cloud-native Application Reference Model for (Enterprise) Architects
1) Lübeck University of Applied Sciences
2) Hof University of Applied Sciences
Nane Kratzke1 and René Peinl2
1Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems
The next 30 minutes are about ...
• What is the meaning of 'cloud-native'?
• Research Methodology
• What are Cloud-native Applications?
• A Cloud-native Application Definition Proposal
• How to Avoid Cloud Vendor Lock-In?
• A Cloud-native Application Reference Model
• Conclusion and Outlook
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 2
We try to answer just one question ...
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 3
What is the meaningof cloud-native?
Research Methodology
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 4
Main focus of this contribution
CNA == Cloud-native Application
Systematic Mapping Study Resultson Cloud-native Applications (I)
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 5
0
5
10
15
20
25
30
PublishedPapers Extrapolation(for2016)
Google Trends (2006 – 2016)
Systematic Mapping Study Resultson Cloud-native Applications (II)
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 6
Systematic Mapping Study Resultson Cloud-native Applications (III)
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 7
CNA Architecture ←→ Patterns
Patterns ←→ CNA Design
CNA Design ←→ Microservices
Microservices ←→ Deployment Units (Containers)
Microservices ←→ Service Composition
Microservices ←→ (Elastic) Automation Platform
(Elastic) Automation Platform ←→ Resilience
(Elastic) Automation Platform ←→ Scalability
Microservices
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 8
„The microservice architectural style is an approach to developing a single application as a suite of small services, each running in itsown process and communicating with lightweight mechnisms, oftenan HTTP resource API.“
Martin Fowler
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 orientedarchitectures (M)SOA
• Keep in mind: a serviceshould do one thingwell
• Use API-basedcollaboration
• Consider cloud-focusedpattern catalogues
• Use self-service agile platforms
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 9
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 UsingMicroservices”, CloudWay 2015, Taormina, Italy
S. Newman, Building Microservices. O’Reilly, 2015.
Cloud-native Application Definition
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 10
How to Avoid Cloud Vendor Lock-In?
Industrial Top Down Approaches
• CIMI + OVF (Infra)• OCCI (Infra)• CDMI (Data)• OCI (Container)
Open-Source Bottom UpApproches
• Deltacloud• fog.io• jClouds• Apache Libcloud
Formalized Deployment
• Several XML-based descriptional approaches
• TOSCA (Orch.)• SALSA (Elasticity)• SPEEDL
(Elasticity)
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 11
„Vendor lock-in is defined to make a customer dependent on a vendor for productsand services, unable to use another vendor without substantial switching costs“(according to: The Linux Information Project, “Vendor Lock-in Definition”, 2006).
According to practitioner experiences, none of these approaches avoidapplication adaption efforts coming along when switching a cloud serviceprovider.
Cloud Standardization ApproachesBasic Insight
Prof. Dr. rer. nat. Nane KratzkePraktische Informatik und betriebliche Informationssysteme 12
2 2
2 4 6 77
7 7 11 11
1 1
2 4 7 1014
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
Relationofconsid
eredservices
consideredbyCIMI,OCCI,CDMI,OVF,OCI,TOSCA notconsidered
Cloud standards improved. However, cloudstandardization coverage decreased (in relationto available services) over the last 10 years.
Analyzed using over 2300 offical release notes of Amazon Web Services (AWS). Data for other providers like Google, Azure, Rackspace, etc. not presented. Basic conclusions for theseproviders are the same.
So, cloud native applications are
vulnerable to vendor lock-in, especially if they are
provided by SMEs.
Overcome Vendor Lock-In using onlyexisting Container Technologies
Prof. Dr. rer. nat. Nane KratzkePraktische Informatik und betriebliche Informationssysteme 13
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 byIntegrating Already Available Container Technologies - TowardsTransferability in Cloud Computing for SMEs. In Proceedings of CLOUD COMPUTING 2016 (7th. International Conference on Cloud Computing, GRIDS and Virtualization).
Avoiding Vendor Lock-In for Small andMedium Sized Enterprises:• The aim is to provide methodologies and
tools to define secure, transferable andelastic services being deployable to anyIaaS cloud infrastructure.
• Migration of these services from one private or public cloud infrastructure to anothershould be possible.
• The solution should be manageable by smalland medium sized enterprises (1-person IT staffs).
Research Surveillance of Practitioners
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 14
Docker SwarmSwarm Mode (sinceDocker 1.12) Clones
Kubernetes-like controlprocesses but integrates
them in just onecomponent. Secure by
default (control and dataplane). Hides operation
complexity.
GoogleControl processes that
continuously drive current stateof container based applicationstowards a defined desired state. Makes Google‘s experience ofrunning large scale productionworkloads available as open
source.
MesosphereApache Mesos based
datacenter operating systemfor fine grained resource
allocation. Frameworks tooperate containers and data
services. Datacenter focused. Mesos operates successfullylarge scale datacenters since
years (Twitter, Netflix, ...)
Practitioners ask for simple solutions (elastic platforms) ...
Research Surveillance of Practitioners
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 15
Practitioners often prefer layer-based reference models ...
Jason Lavigne, ”Don’t let aPaaS you by - What is aPaaS and whyMicrosoft is excited about it”, seehttps://atjasonunderscorelavigne.wordpress.com/2014/01/27/dont-let-apaas-you-by/ (last access 4th August 2016)
Johann den Haan, ”Categorizing and Comparing the Cloud Landscape”,see http://www.theenterprisearchitect.eu/blog/categorize-compare-cloud-vendors/ (accessed 4th August 2016)
Josef Adersberger, Andreas Zitzelsberger, Mario-Leander Reimer, ”Der Cloud-Native-Stack: Mesos, Kubernetes und Spring Cloud”, seehttp://www.qaware.de/fileadmin/user_upload/QAware-Cloud-Native-Artikelserie-Java_Magazin-1.pdf (accessed 4th August 2016)
MEKUNS Cloud Landscape Model
Some Cloud-native Tools, Frameworks, Infrastructures
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 16
We need some guidance ...
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 17
The Cloud-native ApplicationReference Model
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 18
The Cloud-native ApplicationReference Model
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 19
The Cloud-native ApplicationReference Model
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 20
The Cloud-native ApplicationReference Model
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 21
The Cloud-native ApplicationReference Model
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 22
This reference model guides ourresearch
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 23
Developing a description language for cloud-native applications.
Developing a standardized way of deploying a clusteredcontainer runtime environment for cloud-native applications.
Make use of commodity services of public cloud serviceproviders only (IaaS).
Conclusion
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 24
For vendor lock-in aware enterprisearchitectures we advocate to operatecloud-native applications on portable elastic platforms.
However, it is work in progress ...
E.g. Layer 5 services could be categorizedmore precisely to provide more guidance.• service taxonomy systems
• standardized data transferabilityrequirements
• upward and downward standardizationrequirements
The reference model guides our• technology identification,
• classification,
• adoption,
• research and development processes.
The reference model contributes tomake• technologies,
• research approaches and
• standardization
for/of cloud-native applicationdevelopment• more comparable,
• more codifyable
• more integrated.
Acknowledgement
• Airplane: Pixabay (CC0 Public Domain, Gellinger)• Definition: Pixabay (CC0 Public Domain, PDPics)• Order Chaos: Pixabay (CC0 Public Domain, geralt)• Railway: Pixabay (CC0 Public Domain, Fotoworkshop4You)• Microservices: Robert Morschel, http://www.soa-probe.com/2015/03/microservices-
summary.html
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 25
We would like to thank Dr. Adersberger from QAWARE GmbH. He inspired us with his thoughts about hisMEKUNS approach (Mesos, Kubernetes, Cloud-native Stack). This research is funded by German Federal
Ministry of Education and Research (Project Cloud TRANSIT, 03FH021PX4; Project SCHub,
3FH025PX4).The authors thank Lübeck University (Institute of Telematics) and fat IT solution GmbH (Kiel)
for their support of Cloud TRANSIT.
Picture Reference
About
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 26
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
About
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 27
René Peinl
iisys: https://www.iisys.de/profile/rene-peinl.html
ResearchGate: https://www.researchgate.net/profile/Rene_Peinl
Backup Slides
Prof. Dr. rer. nat. Nane KratzkeComputer Science and Business Information Systems 28
Top Related