Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms

Nane Kratzke
Nane KratzkeProfessor for Computer Science at Lübeck University of Applied Sciences
Smuggling Multi-Cloud Support
into Cloud-native Applications
using Elastic Container Platforms
1
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
Nane Kratzke
The next 30 minutes are about ...
• What are Cloud-native Applications?
• Elastic Container Platforms and why they
should be considered for multi-cloud research.
• A control loop to scale Elastic Container
Platforms across Cloud Service Providers
• Some data of our evaluation
• 7 Lessons Learned and Conclusion
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
2
Presentation URL
Paper URL
Maturity Criteria
3
Cloud
Native
• Application can dynamically migrate across infrastructure
providers without interruption of service.
• Application can elastically scale out/in appropriately based on
stimuli.
2
Cloud
Resilient
• Services are stateless.
• Application is unaware and unaffected by failure of dependent services.
• Application is infrastructure agnostic and can run anywhere.
1
Cloud
Friendly
• Application is composed of loosely coupled services.
• Application services are discoverable by name.
• Application deployment units are designed according to cloud patterns
(e.g. 12-factor app principles)
• Application compute and storage are separated.
• Application consumes one or more cloud services: compute, storage,
network.
0
Cloud
Ready
• Application runs on virtualized infrastructure.
• Application can be instantiated from an image or script.
According to OPEN DATA CENTER ALLIANCE Best Practices (Architecting Cloud-Aware
Applications), 2014
with add-ons by practitioner Mario-Leander Reimer (QAWare)
Cloud Application Maturity Model (CAMM)
Covered by
a lot of
SOA and
cloud
deployment
approaches.
This contri-
bution‘s
focus ...
Research Surveillance of Practitioners
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
4
Docker Swarm
Swarm Mode (since
Docker 1.12) „copies“ the
idea of Kubernetes-like
control processes but
integrates them in just one
component. Secure by
default (control and data
plane). Hides operation
complexity.
Google
Control processes that
continuously drive current state
of container based applications
towards an intended desired
state. Makes Google‘s
experience of running large
scale production workloads
available as open source
(especially from the Google
internal Borg system).
Mesosphere
Apache Mesos based
datacenter operating system
for fine grained resource
allocation. Frameworks to
operate containers and data
services. Datacenter focused.
Mesos operates successfully
large scale datacenters since
years (Twitter, Netflix, ...)
Practitioners ask for simple solutions (elastic platforms) ...
The very basic idea ...
Prof. Dr. rer. nat. Nane Kratzke
Praktische Informatik und betriebliche Informationssysteme
5
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).
Avoiding 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 would be possible at
runtime.
But the idea provides more options ...
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
6
Simply stop „a transfer“ somewhere in between and you get ...
One Control Loop
for All
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
7
Operate application on current provider.
Scale cluster into prospective provider.
Shutdown nodes on current provider.
Cluster reschedules lost container.
Migration finished.
Control Loop
Example to deploy a cluster
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
8
Definition of an intended state.
{
"type": "cluster",
"platform": "Swarm",
"deployments": [
{
"district": "gce-europe",
"flavor": "small",
"role": "master",
"quantity": 1
},
{
"district": "gce-europe",
"flavor": "small",
"role": "worker",
"quantity": 9
},
{
"district": "aws-europe",
"flavor": "small",
"role": "worker",
"quantity": 0
}
]
}
Control Loop
Example to deploy a cluster
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
9
Derive a prioritized action list.
|| Create secgroup for gce-europe
-- Create master in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| Create worker in gce-europe
|| executed in parallel
-- executed sequentially
Control Loop
Example to deploy a cluster
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
10
Updated resources.
- Secgroup for gce-europe
- Master node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
All detail data like IP-adresses,
identifiers, etc. omitted for better
readability.
- Secgroup for gce-europe
- Master node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
Control Loop
Example: Transfer of five worker nodes
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
11
{
"type": "cluster",
"platform": "Swarm",
"deployments": [
{ "district": "gce-europe",
"flavor": "small",
"role": "master",
"quantity": 1
},
{ "district": "gce-europe",
"flavor": "small",
"role": "worker",
"quantity": 9
},
{ "district": "aws-europe",
"flavor": "small",
"role": "worker",
"quantity": 0
}
]
}
4
5
|| Create secgroup for aws-europe
|| Create worker in aws-europe
|| Create worker in aws-europe
|| Create worker in aws-europe
|| Create worker in aws-europe
|| Create worker in aws-europe
-- Delete worker in gce-europe
-- Delete worker in gce-europe
-- Delete worker in gce-europe
-- Delete worker in gce-europe
-- Delete worker in gce-europe
|| executed in parallel
-- executed sequentially
- Secgroup for gce-europe
- Secgroup for aws-europe
- Master node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in gce-europe
- Worker node in aws-europe
- Worker node in aws-europe
- Worker node in aws-europe
- Worker node in aws-europe
- Worker node in aws-europe
Resulting Architecture (Domain Model)
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
12
Extension point
for elastic
platforms
Currently supported:
Kubernetes, Swarm
Extension point for IaaS
infrastructures
Currently supported: AWS, GCE,
Azure, OpenStack
Evaluation:
5 Experiments (with a 1 Master and 9 Worker Cluster)
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
13
OpenStack
Google Compute Engine
(GCE, n1-standard-2)
Elastic Compute Cloud
(EC2, m3.large)
E1
E2 E2
E1
E3, E4, E5
E3, E4, E5
The same experiments have
been done with OpenStack
as well.
E1: Launch a 10 node cluster.
E2: Terminate a 10 node cluster.
E3: Transfer one node of the cluster.
E4: Transfer 5 nodes of the cluster.
E5: Transfer all nodes of the cluster.
Cluster was Docker Swarm (operated a Sock Shop
Reference Application and a Redis-based Guestbook)
Kubernetes
Different elastic container
platforms had no significant
impact on the runtimes.
Therefore data is only
presented for Docker Swarm.
Docker Swarm
Evaluation (Single Cloud)
Deploying and terminating clusters
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
14
Experiment E1
Experiment E2
10 times longer ???
Evaluation (Multi-Cloud)
Transfer GCE ⇠⇢ AWS
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
15
Experiment
E3
Experiment
E4
Experiment
E5
Comparable with a
shutdown.
Node termination
times seem to
dominate the
transfer times
massively.
Why these (dramatic) differences?
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
16
Analysis turned out:
1. GCE API works
synchronously (a node
termination call blocks until
termination is completed)
2. AWS API works
asychronously (so node
termination call did not block
until termination completed,
fire and forget)
3. GCE SDN related
processing times take far
longer than AWS SDN
related processing times.
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
17
Conclusion
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
18
• Elastic container platforms provide often overlooked multi-cloud opportunities
• We could succesfully demonstrate multi-cloud transfers between AWS, GCE,
Azure and OpenStack using a simple control loop (scaling Kubernetes and
Docker SwarmMode).
• The control loop is designed to be integratable in a MAPE loop as execution
phase.
• A cybernetic understanding (intended state vs. current state) makes a lot of
multi-cloud workflows easier.
• On the downside: The solution is limited to container-based applications (CNMM
Level 3) and services (but that seems to become a dominating architectural
style).
• New research opportunities and future research directions:
• Making the solution available as Open Source
• P2P-based elastic platforms would make deployments even easier (no worker/master
roles)
• There is room for improvements (e.g. resource efficient action planning)
Acknowledgement
• Elastic Straps: Pixabay (CC0 Public Domain, PublicDomainPictures)
• Definition: Pixabay (CC0 Public Domain, PDPics)
• Class room: Pixabay (CC0 Public Domain, Unsplash)
• Railway: Pixabay (CC0 Public Domain, Fotoworkshop4You)
• Air Transport: Pixabay (CC0 Public Domain, WikiImages)
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
19
Picture Reference
This research is funded by German Federal Ministry of Education
and Research (03FH021PX4). I would like to thank Peter Quint,
Christian Stüben, and Arne Salveter for their hard work and their
contributions to the Project Cloud TRANSIT.
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
Elastic Platforms and Multi-cloud
requirements
Multi-Cloud Requirements Contributing Platform concepts
Transferability Integration of nodes into one logical cluster
Designed for failure
Cross-provider deployable
Data location awareness Pod concept (Kubernetes)
Volume orchestrator (Flocker for Docker)
Geolocation awareness Tagging of nodes with geolocation, pricing, policy or
on-premise informations
Platform schedulers have selectors (Swarm) /
affinitities (Kubernetes) / constraints
(Mesos/Marathon) to evaluate these taggings
Pricing awareness
Legislation/policy awareness
Local resources awareness
Security requirements Encrypted data / control plane (Swarm)
Encrypted overlay networks (e.g. Weave for
Kubernetes)
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
22
Several transferability, awareness and security requirements come along with
multi-cloud approaches. Already existing elastic container platforms contribute
to fulfill these requirements.
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
23
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?
Cloud-native Application Definition
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
24
[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).
We need some guidance ...
ClouNS – Cloud-native Application Reference Model
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
25
[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).
Did you know?
Prof. Dr. rer. nat. Nane Kratzke
Praktische Informatik und betriebliche Informationssysteme
26
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	
Cloud standards improved over the last 10
years. However, cloud standardization coverage
decreased (in relation to all available services).
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 these
providers are the same.
[KQP+2016] Kratzke, N., Quint, P.-C., Palme, D., &
Reimers, D. (2016). Project Cloud TRANSIT - Or to
Simplify Cloud-native Application Provisioning for
SMEs by Integrating Already Available Container
Technologies. In V. Kantere & B. Koch
(Eds.), European Project Space on Smart Systems, Big
Data, Future Internet - Towards Serving the Grand
Societal Challenges.
Research Methodology
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
27
Main focus
of this
contribution
CNA == Cloud-native Application
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
28
Evaluation:
Virtual Machine Type Selection
[KQ2015] Kratzke, N., & Quint, P.-C. (2015). About Automatic Benchmarking of IaaS Cloud Service
Providers for a World of Container Clusters. Journal of Cloud Computing Research, 1(1), 16–34.
We searched for the most similar machine types of different public cloud service
providers. The similarity indicator maps processing, memory, network, and disk I/O
performance to just one similarity value (1 means identical, 0 means no similarity at all).
This reference model guides our
research
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
29
Developing a description language for cloud-native applications.
Developing a standardized way of deploying a clustered container runtime
environment for cloud-native applications
(CNMM Level 3 conform deploying/operation)
Make use of commodity services of public cloud service providers
only (IaaS).
Research Surveillance of Practitioners
Prof. Dr. rer. nat. Nane Kratzke
Computer Science and Business Information Systems
30
Practitioners often prefer layer-based reference models ...
Jason Lavigne, ”Don’t let aPaaS you by - What is aPaaS and why
Microsoft is excited about it”, see
https://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”,
see
http://www.qaware.de/fileadmin/user_upload/QA
ware-Cloud-Native-Artikelserie-Java_Magazin-
1.pdf (accessed 4th August 2016)
MEKUNSCloud Landscape Model
1 of 30

Recommended

ClouNS - A Cloud-native Application Reference Model for Enterprise Architects by
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 ArchitectsNane Kratzke
2.2K views28 slides
Cloud Native Computing: What does it mean, and is your app Cloud Native? by
Cloud Native Computing: What does it mean, and is your app Cloud Native?Cloud Native Computing: What does it mean, and is your app Cloud Native?
Cloud Native Computing: What does it mean, and is your app Cloud Native?Michael O'Sullivan
446 views52 slides
Cloud Native Applications Maturity Model by
Cloud Native Applications Maturity ModelCloud Native Applications Maturity Model
Cloud Native Applications Maturity ModelJim Bugwadia
4.9K views26 slides
Cloud Native Machine Learning by
Cloud Native Machine Learning Cloud Native Machine Learning
Cloud Native Machine Learning Manning Publications
370 views7 slides
Cloud Native Architectures for Devops by
Cloud Native Architectures for DevopsCloud Native Architectures for Devops
Cloud Native Architectures for Devopscornelia davis
2.2K views64 slides
Breaking the Monolith by
Breaking the MonolithBreaking the Monolith
Breaking the MonolithVMware Tanzu
7.8K views42 slides

More Related Content

What's hot

Introducing the Open Container Project by
Introducing the Open Container ProjectIntroducing the Open Container Project
Introducing the Open Container ProjectSam Ramji
2.1K views40 slides
Hyper Stratus Migrating Applications to the Cloud by
Hyper Stratus Migrating Applications to the CloudHyper Stratus Migrating Applications to the Cloud
Hyper Stratus Migrating Applications to the Cloudbhgolden
1K views24 slides
Autopilot : Securing Cloud Native Storage by
Autopilot : Securing Cloud Native StorageAutopilot : Securing Cloud Native Storage
Autopilot : Securing Cloud Native StorageSF Bay Cloud Native Open Infra Meetup
1.8K views21 slides
Cloud Foundry, the Open Platform As A Service by
Cloud Foundry, the Open Platform As A ServiceCloud Foundry, the Open Platform As A Service
Cloud Foundry, the Open Platform As A ServicePatrick Chanezon
10.5K views63 slides
Adopting Multi-Cloud Services with Confidence by
Adopting Multi-Cloud Services with ConfidenceAdopting Multi-Cloud Services with Confidence
Adopting Multi-Cloud Services with ConfidenceKevin Hakanson
192 views37 slides
The Need of Cloud-Native Application by
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native ApplicationEmiliano Pecis
2.4K views38 slides

What's hot(20)

Introducing the Open Container Project by Sam Ramji
Introducing the Open Container ProjectIntroducing the Open Container Project
Introducing the Open Container Project
Sam Ramji2.1K views
Hyper Stratus Migrating Applications to the Cloud by bhgolden
Hyper Stratus Migrating Applications to the CloudHyper Stratus Migrating Applications to the Cloud
Hyper Stratus Migrating Applications to the Cloud
bhgolden1K views
Cloud Foundry, the Open Platform As A Service by Patrick Chanezon
Cloud Foundry, the Open Platform As A ServiceCloud Foundry, the Open Platform As A Service
Cloud Foundry, the Open Platform As A Service
Patrick Chanezon10.5K views
Adopting Multi-Cloud Services with Confidence by Kevin Hakanson
Adopting Multi-Cloud Services with ConfidenceAdopting Multi-Cloud Services with Confidence
Adopting Multi-Cloud Services with Confidence
Kevin Hakanson192 views
The Need of Cloud-Native Application by Emiliano Pecis
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native Application
Emiliano Pecis2.4K views
The Cloud Revolution - Philippines Cloud Summit by Randy Bias
The Cloud Revolution - Philippines Cloud SummitThe Cloud Revolution - Philippines Cloud Summit
The Cloud Revolution - Philippines Cloud Summit
Randy Bias5.6K views
Architecting Multi-Cloud Environments by RightScale
Architecting Multi-Cloud EnvironmentsArchitecting Multi-Cloud Environments
Architecting Multi-Cloud Environments
RightScale5.5K views
Cloud 2.0 - How Containers, Microservices and Open Source Software are Redefi... by Mark Hinkle
Cloud 2.0 - How Containers, Microservices and Open Source Software are Redefi...Cloud 2.0 - How Containers, Microservices and Open Source Software are Redefi...
Cloud 2.0 - How Containers, Microservices and Open Source Software are Redefi...
Mark Hinkle2.2K views
Networking is NOT Free: Lessons in Network Design by Randy Bias
Networking is NOT Free: Lessons in Network DesignNetworking is NOT Free: Lessons in Network Design
Networking is NOT Free: Lessons in Network Design
Randy Bias6.2K views
SOCstock 2021 The Cloud-native SOC by Anton Chuvakin
SOCstock 2021 The Cloud-native SOC SOCstock 2021 The Cloud-native SOC
SOCstock 2021 The Cloud-native SOC
Anton Chuvakin430 views
Cloud Native, Cloud First and Hybrid: How Different Organizations are Approac... by Amazon Web Services
Cloud Native, Cloud First and Hybrid: How Different Organizations are Approac...Cloud Native, Cloud First and Hybrid: How Different Organizations are Approac...
Cloud Native, Cloud First and Hybrid: How Different Organizations are Approac...
How to Migrate to Cloud with Complete Confidence and Trust by Apcera
How to Migrate to Cloud with Complete Confidence and TrustHow to Migrate to Cloud with Complete Confidence and Trust
How to Migrate to Cloud with Complete Confidence and Trust
Apcera691 views
cross cloud inter-operability with iPaaS and serverless for Telco cloud SDN/NFV by Krishna-Kumar
cross cloud inter-operability with iPaaS and serverless for Telco cloud SDN/NFVcross cloud inter-operability with iPaaS and serverless for Telco cloud SDN/NFV
cross cloud inter-operability with iPaaS and serverless for Telco cloud SDN/NFV
Krishna-Kumar 441 views
FLUX - Crash Course in Cloud 2.0 by Mark Hinkle
FLUX - Crash Course in Cloud 2.0 FLUX - Crash Course in Cloud 2.0
FLUX - Crash Course in Cloud 2.0
Mark Hinkle5K views

Similar to Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms

Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati... by
Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati...Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati...
Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati...Nane Kratzke
458 views24 slides
A performance analysis of OpenStack Cloud vs Real System on Hadoop Clusters by
A performance analysis of OpenStack Cloud vs Real System on Hadoop ClustersA performance analysis of OpenStack Cloud vs Real System on Hadoop Clusters
A performance analysis of OpenStack Cloud vs Real System on Hadoop ClustersKumari Surabhi
130 views62 slides
Self-Tuning and Managing Services by
Self-Tuning and Managing ServicesSelf-Tuning and Managing Services
Self-Tuning and Managing ServicesReza Rahimi
129 views39 slides
Journey to Containerized Application / Google Container Engine by
Journey to Containerized Application / Google Container EngineJourney to Containerized Application / Google Container Engine
Journey to Containerized Application / Google Container EngineGoogle Cloud Platform - Japan
1.9K views23 slides
NextGenML by
NextGenML NextGenML
NextGenML Moldovan Radu Adrian
183 views36 slides
Modern Scheduling for Modern Applications with Nomad by
Modern Scheduling for Modern Applications with NomadModern Scheduling for Modern Applications with Nomad
Modern Scheduling for Modern Applications with NomadMitchell Pronschinske
797 views38 slides

Similar to Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms(20)

Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati... by Nane Kratzke
Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati...Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati...
Towards a Lightweight Multi-Cloud DSL for Elastic and Transferable Cloud-nati...
Nane Kratzke458 views
A performance analysis of OpenStack Cloud vs Real System on Hadoop Clusters by Kumari Surabhi
A performance analysis of OpenStack Cloud vs Real System on Hadoop ClustersA performance analysis of OpenStack Cloud vs Real System on Hadoop Clusters
A performance analysis of OpenStack Cloud vs Real System on Hadoop Clusters
Kumari Surabhi130 views
Self-Tuning and Managing Services by Reza Rahimi
Self-Tuning and Managing ServicesSelf-Tuning and Managing Services
Self-Tuning and Managing Services
Reza Rahimi129 views
OCCIware: extensible and standard-based XaaS platform to manage everything in... by OW2
OCCIware: extensible and standard-based XaaS platform to manage everything in...OCCIware: extensible and standard-based XaaS platform to manage everything in...
OCCIware: extensible and standard-based XaaS platform to manage everything in...
OW2189 views
OCCIware: extensible and standard-based XaaS platform to manage everything in... by OCCIware
OCCIware: extensible and standard-based XaaS platform to manage everything in...OCCIware: extensible and standard-based XaaS platform to manage everything in...
OCCIware: extensible and standard-based XaaS platform to manage everything in...
OCCIware190 views
OCCIware@OW2con 2016 by Marc Dutoo
OCCIware@OW2con 2016OCCIware@OW2con 2016
OCCIware@OW2con 2016
Marc Dutoo251 views
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform by Marc Dutoo
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platformOCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform
Marc Dutoo507 views
OCCIware: Extensible and Standard-based XaaS Platform To Manage Everything in... by OW2
OCCIware: Extensible and Standard-based XaaS Platform To Manage Everything in...OCCIware: Extensible and Standard-based XaaS Platform To Manage Everything in...
OCCIware: Extensible and Standard-based XaaS Platform To Manage Everything in...
OW2162 views
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever... by OCCIware
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware586 views
Cloud comparison - AWS vs Azure vs Google by Patrick Pierson
Cloud comparison - AWS vs Azure vs GoogleCloud comparison - AWS vs Azure vs Google
Cloud comparison - AWS vs Azure vs Google
Patrick Pierson1.8K views
AIST Super Green Cloud: lessons learned from the operation and the performanc... by Ryousei Takano
AIST Super Green Cloud: lessons learned from the operation and the performanc...AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...
Ryousei Takano1.2K views
How To Build, Integrate, and Deploy Real-Time Streaming Pipelines On Kubernetes by Lightbend
How To Build, Integrate, and Deploy Real-Time Streaming Pipelines On KubernetesHow To Build, Integrate, and Deploy Real-Time Streaming Pipelines On Kubernetes
How To Build, Integrate, and Deploy Real-Time Streaming Pipelines On Kubernetes
Lightbend2.4K views
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile by OCCIware
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
OCCIware72 views
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017 by Marc Dutoo
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
Marc Dutoo200 views
Solutions for IT Organizations on The Journey to The Digital Enterprise by andreas kuncoro
Solutions for IT Organizations on The Journey to The Digital EnterpriseSolutions for IT Organizations on The Journey to The Digital Enterprise
Solutions for IT Organizations on The Journey to The Digital Enterprise
andreas kuncoro145 views
Solutions for IT Organizations on The Journey to The Digital Enterprise by andreas kuncoro
Solutions for IT Organizations on The Journey to The Digital EnterpriseSolutions for IT Organizations on The Journey to The Digital Enterprise
Solutions for IT Organizations on The Journey to The Digital Enterprise
andreas kuncoro156 views
OpenStack Preso: DevOps on Hybrid Infrastructure by rhirschfeld
OpenStack Preso: DevOps on Hybrid InfrastructureOpenStack Preso: DevOps on Hybrid Infrastructure
OpenStack Preso: DevOps on Hybrid Infrastructure
rhirschfeld972 views

More from Nane Kratzke

Smart like a Fox: How clever students trick dumb programming assignment asses... by
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...Nane Kratzke
1.2K views28 slides
#BTW17 on Twitter (Die Bundestagswahl 2017 auf Twitter - war der Ausgang abzu... by
#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...Nane Kratzke
465 views18 slides
About being the Tortoise or the Hare? Making Cloud Applications too Fast and ... by
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 ...Nane Kratzke
531 views13 slides
Serverless Architectures - Where have all the servers gone? by
Serverless Architectures - Where have all the servers gone?Serverless Architectures - Where have all the servers gone?
Serverless Architectures - Where have all the servers gone?Nane Kratzke
1.2K views33 slides
There is no impenetrable system - So, why we are still waiting to get breached? by
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?Nane Kratzke
330 views11 slides
We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar? by
We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar?We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar?
We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar?Nane Kratzke
424 views11 slides

More from Nane Kratzke(20)

Smart like a Fox: How clever students trick dumb programming assignment asses... by Nane Kratzke
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...
Nane Kratzke1.2K views
#BTW17 on Twitter (Die Bundestagswahl 2017 auf Twitter - war der Ausgang abzu... by Nane Kratzke
#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...
Nane Kratzke465 views
About being the Tortoise or the Hare? Making Cloud Applications too Fast and ... by Nane Kratzke
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 ...
Nane Kratzke531 views
Serverless Architectures - Where have all the servers gone? by Nane Kratzke
Serverless Architectures - Where have all the servers gone?Serverless Architectures - Where have all the servers gone?
Serverless Architectures - Where have all the servers gone?
Nane Kratzke1.2K views
There is no impenetrable system - So, why we are still waiting to get breached? by Nane Kratzke
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?
Nane Kratzke330 views
We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar? by Nane Kratzke
We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar?We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar?
We have the Bricks to Build Cloud-native Cathedrals - But do we have the mortar?
Nane Kratzke424 views
About an Immune System Understanding for Cloud-native Applications - Biology ... by Nane Kratzke
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 Kratzke625 views
Der Bundestagswahlkampf 2017 auf Twitter - War der Ausgang abzusehen? by Nane Kratzke
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?
Nane Kratzke1.2K views
Was die Cloud mit einem brennenden Haus zu tun hat by Nane Kratzke
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
Nane Kratzke626 views
What the cloud has to do with a burning house? by Nane Kratzke
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?
Nane Kratzke776 views
ppbench - A Visualizing Network Benchmark for Microservices by Nane Kratzke
ppbench - A Visualizing Network Benchmark for Microservicesppbench - A Visualizing Network Benchmark for Microservices
ppbench - A Visualizing Network Benchmark for Microservices
Nane Kratzke1.8K views
About Microservices, Containers and their Underestimated Impact on Network Pe... by Nane Kratzke
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...
Nane Kratzke9.9K views
Java Streams und Lambdas by Nane Kratzke
Java Streams und LambdasJava Streams und Lambdas
Java Streams und Lambdas
Nane Kratzke3.7K views
Dart (Teil II der Tour de Dart) by Nane Kratzke
Dart (Teil II der Tour de Dart)Dart (Teil II der Tour de Dart)
Dart (Teil II der Tour de Dart)
Nane Kratzke6.5K views
Dart (Teil I der Tour de Dart) by Nane Kratzke
Dart (Teil I der Tour de Dart)Dart (Teil I der Tour de Dart)
Dart (Teil I der Tour de Dart)
Nane Kratzke11.5K views
Cloud Economics in Training and Simulation by Nane Kratzke
Cloud Economics in Training and SimulationCloud Economics in Training and Simulation
Cloud Economics in Training and Simulation
Nane Kratzke607 views
Are cloud based virtual labs cost effective? (CSEDU 2012) by Nane Kratzke
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)
Nane Kratzke895 views
What Cost Us Cloud Computing by Nane Kratzke
What Cost Us Cloud ComputingWhat Cost Us Cloud Computing
What Cost Us Cloud Computing
Nane Kratzke303 views
Overcoming Cost Intransparency of Cloud Computing by Nane Kratzke
Overcoming Cost Intransparency of Cloud ComputingOvercoming Cost Intransparency of Cloud Computing
Overcoming Cost Intransparency of Cloud Computing
Nane Kratzke595 views

Recently uploaded

SUPPLIER SOURCING.pptx by
SUPPLIER SOURCING.pptxSUPPLIER SOURCING.pptx
SUPPLIER SOURCING.pptxangelicacueva6
16 views1 slide
Scaling Knowledge Graph Architectures with AI by
Scaling Knowledge Graph Architectures with AIScaling Knowledge Graph Architectures with AI
Scaling Knowledge Graph Architectures with AIEnterprise Knowledge
38 views15 slides
virtual reality.pptx by
virtual reality.pptxvirtual reality.pptx
virtual reality.pptxG036GaikwadSnehal
14 views15 slides
Voice Logger - Telephony Integration Solution at Aegis by
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at AegisNirmal Sharma
39 views1 slide
Five Things You SHOULD Know About Postman by
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About PostmanPostman
36 views43 slides
Powerful Google developer tools for immediate impact! (2023-24) by
Powerful Google developer tools for immediate impact! (2023-24)Powerful Google developer tools for immediate impact! (2023-24)
Powerful Google developer tools for immediate impact! (2023-24)wesley chun
10 views38 slides

Recently uploaded(20)

Voice Logger - Telephony Integration Solution at Aegis by Nirmal Sharma
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at Aegis
Nirmal Sharma39 views
Five Things You SHOULD Know About Postman by Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman36 views
Powerful Google developer tools for immediate impact! (2023-24) by wesley chun
Powerful Google developer tools for immediate impact! (2023-24)Powerful Google developer tools for immediate impact! (2023-24)
Powerful Google developer tools for immediate impact! (2023-24)
wesley chun10 views
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf by Dr. Jimmy Schwarzkopf
STKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdfSTKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdf
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
Piloting & Scaling Successfully With Microsoft Viva by Richard Harbridge
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft Viva
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays17 views
Serverless computing with Google Cloud (2023-24) by wesley chun
Serverless computing with Google Cloud (2023-24)Serverless computing with Google Cloud (2023-24)
Serverless computing with Google Cloud (2023-24)
wesley chun11 views

Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms

  • 1. Smuggling Multi-Cloud Support into Cloud-native Applications using Elastic Container Platforms 1 Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems Nane Kratzke
  • 2. The next 30 minutes are about ... • What are Cloud-native Applications? • Elastic Container Platforms and why they should be considered for multi-cloud research. • A control loop to scale Elastic Container Platforms across Cloud Service Providers • Some data of our evaluation • 7 Lessons Learned and Conclusion Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 2 Presentation URL Paper URL
  • 3. Maturity Criteria 3 Cloud Native • Application can dynamically migrate across infrastructure providers without interruption of service. • Application can elastically scale out/in appropriately based on stimuli. 2 Cloud Resilient • Services are stateless. • Application is unaware and unaffected by failure of dependent services. • Application is infrastructure agnostic and can run anywhere. 1 Cloud Friendly • Application is composed of loosely coupled services. • Application services are discoverable by name. • Application deployment units are designed according to cloud patterns (e.g. 12-factor app principles) • Application compute and storage are separated. • Application consumes one or more cloud services: compute, storage, network. 0 Cloud Ready • Application runs on virtualized infrastructure. • Application can be instantiated from an image or script. According to OPEN DATA CENTER ALLIANCE Best Practices (Architecting Cloud-Aware Applications), 2014 with add-ons by practitioner Mario-Leander Reimer (QAWare) Cloud Application Maturity Model (CAMM) Covered by a lot of SOA and cloud deployment approaches. This contri- bution‘s focus ...
  • 4. Research Surveillance of Practitioners Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 4 Docker Swarm Swarm Mode (since Docker 1.12) „copies“ the idea of Kubernetes-like control processes but integrates them in just one component. Secure by default (control and data plane). Hides operation complexity. Google Control processes that continuously drive current state of container based applications towards an intended desired state. Makes Google‘s experience of running large scale production workloads available as open source (especially from the Google internal Borg system). Mesosphere Apache Mesos based datacenter operating system for fine grained resource allocation. Frameworks to operate containers and data services. Datacenter focused. Mesos operates successfully large scale datacenters since years (Twitter, Netflix, ...) Practitioners ask for simple solutions (elastic platforms) ...
  • 5. The very basic idea ... Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme 5 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). Avoiding 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 would be possible at runtime.
  • 6. But the idea provides more options ... Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 6 Simply stop „a transfer“ somewhere in between and you get ...
  • 7. One Control Loop for All Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 7 Operate application on current provider. Scale cluster into prospective provider. Shutdown nodes on current provider. Cluster reschedules lost container. Migration finished.
  • 8. Control Loop Example to deploy a cluster Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 8 Definition of an intended state. { "type": "cluster", "platform": "Swarm", "deployments": [ { "district": "gce-europe", "flavor": "small", "role": "master", "quantity": 1 }, { "district": "gce-europe", "flavor": "small", "role": "worker", "quantity": 9 }, { "district": "aws-europe", "flavor": "small", "role": "worker", "quantity": 0 } ] }
  • 9. Control Loop Example to deploy a cluster Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 9 Derive a prioritized action list. || Create secgroup for gce-europe -- Create master in gce-europe || Create worker in gce-europe || Create worker in gce-europe || Create worker in gce-europe || Create worker in gce-europe || Create worker in gce-europe || Create worker in gce-europe || Create worker in gce-europe || Create worker in gce-europe || Create worker in gce-europe || executed in parallel -- executed sequentially
  • 10. Control Loop Example to deploy a cluster Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 10 Updated resources. - Secgroup for gce-europe - Master node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe All detail data like IP-adresses, identifiers, etc. omitted for better readability.
  • 11. - Secgroup for gce-europe - Master node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe Control Loop Example: Transfer of five worker nodes Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 11 { "type": "cluster", "platform": "Swarm", "deployments": [ { "district": "gce-europe", "flavor": "small", "role": "master", "quantity": 1 }, { "district": "gce-europe", "flavor": "small", "role": "worker", "quantity": 9 }, { "district": "aws-europe", "flavor": "small", "role": "worker", "quantity": 0 } ] } 4 5 || Create secgroup for aws-europe || Create worker in aws-europe || Create worker in aws-europe || Create worker in aws-europe || Create worker in aws-europe || Create worker in aws-europe -- Delete worker in gce-europe -- Delete worker in gce-europe -- Delete worker in gce-europe -- Delete worker in gce-europe -- Delete worker in gce-europe || executed in parallel -- executed sequentially - Secgroup for gce-europe - Secgroup for aws-europe - Master node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in gce-europe - Worker node in aws-europe - Worker node in aws-europe - Worker node in aws-europe - Worker node in aws-europe - Worker node in aws-europe
  • 12. Resulting Architecture (Domain Model) Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 12 Extension point for elastic platforms Currently supported: Kubernetes, Swarm Extension point for IaaS infrastructures Currently supported: AWS, GCE, Azure, OpenStack
  • 13. Evaluation: 5 Experiments (with a 1 Master and 9 Worker Cluster) Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 13 OpenStack Google Compute Engine (GCE, n1-standard-2) Elastic Compute Cloud (EC2, m3.large) E1 E2 E2 E1 E3, E4, E5 E3, E4, E5 The same experiments have been done with OpenStack as well. E1: Launch a 10 node cluster. E2: Terminate a 10 node cluster. E3: Transfer one node of the cluster. E4: Transfer 5 nodes of the cluster. E5: Transfer all nodes of the cluster. Cluster was Docker Swarm (operated a Sock Shop Reference Application and a Redis-based Guestbook) Kubernetes Different elastic container platforms had no significant impact on the runtimes. Therefore data is only presented for Docker Swarm. Docker Swarm
  • 14. Evaluation (Single Cloud) Deploying and terminating clusters Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 14 Experiment E1 Experiment E2 10 times longer ???
  • 15. Evaluation (Multi-Cloud) Transfer GCE ⇠⇢ AWS Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 15 Experiment E3 Experiment E4 Experiment E5 Comparable with a shutdown. Node termination times seem to dominate the transfer times massively.
  • 16. Why these (dramatic) differences? Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 16 Analysis turned out: 1. GCE API works synchronously (a node termination call blocks until termination is completed) 2. AWS API works asychronously (so node termination call did not block until termination completed, fire and forget) 3. GCE SDN related processing times take far longer than AWS SDN related processing times.
  • 17. Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 17
  • 18. Conclusion Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 18 • Elastic container platforms provide often overlooked multi-cloud opportunities • We could succesfully demonstrate multi-cloud transfers between AWS, GCE, Azure and OpenStack using a simple control loop (scaling Kubernetes and Docker SwarmMode). • The control loop is designed to be integratable in a MAPE loop as execution phase. • A cybernetic understanding (intended state vs. current state) makes a lot of multi-cloud workflows easier. • On the downside: The solution is limited to container-based applications (CNMM Level 3) and services (but that seems to become a dominating architectural style). • New research opportunities and future research directions: • Making the solution available as Open Source • P2P-based elastic platforms would make deployments even easier (no worker/master roles) • There is room for improvements (e.g. resource efficient action planning)
  • 19. Acknowledgement • Elastic Straps: Pixabay (CC0 Public Domain, PublicDomainPictures) • Definition: Pixabay (CC0 Public Domain, PDPics) • Class room: Pixabay (CC0 Public Domain, Unsplash) • Railway: Pixabay (CC0 Public Domain, Fotoworkshop4You) • Air Transport: Pixabay (CC0 Public Domain, WikiImages) Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 19 Picture Reference This research is funded by German Federal Ministry of Education and Research (03FH021PX4). I would like to thank Peter Quint, Christian Stüben, and Arne Salveter for their hard work and their contributions to the Project Cloud TRANSIT. 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. Elastic Platforms and Multi-cloud requirements Multi-Cloud Requirements Contributing Platform concepts Transferability Integration of nodes into one logical cluster Designed for failure Cross-provider deployable Data location awareness Pod concept (Kubernetes) Volume orchestrator (Flocker for Docker) Geolocation awareness Tagging of nodes with geolocation, pricing, policy or on-premise informations Platform schedulers have selectors (Swarm) / affinitities (Kubernetes) / constraints (Mesos/Marathon) to evaluate these taggings Pricing awareness Legislation/policy awareness Local resources awareness Security requirements Encrypted data / control plane (Swarm) Encrypted overlay networks (e.g. Weave for Kubernetes) Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 22 Several transferability, awareness and security requirements come along with multi-cloud approaches. Already existing elastic container platforms contribute to fulfill these requirements.
  • 23. 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 23 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?
  • 24. Cloud-native Application Definition Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 24 [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).
  • 25. We need some guidance ... ClouNS – Cloud-native Application Reference Model Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 25 [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).
  • 26. Did you know? Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme 26 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 Cloud standards improved over the last 10 years. However, cloud standardization coverage decreased (in relation to all available services). 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 these providers are the same. [KQP+2016] Kratzke, N., Quint, P.-C., Palme, D., & Reimers, D. (2016). Project Cloud TRANSIT - Or to Simplify Cloud-native Application Provisioning for SMEs by Integrating Already Available Container Technologies. In V. Kantere & B. Koch (Eds.), European Project Space on Smart Systems, Big Data, Future Internet - Towards Serving the Grand Societal Challenges.
  • 27. Research Methodology Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 27 Main focus of this contribution CNA == Cloud-native Application
  • 28. Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 28 Evaluation: Virtual Machine Type Selection [KQ2015] Kratzke, N., & Quint, P.-C. (2015). About Automatic Benchmarking of IaaS Cloud Service Providers for a World of Container Clusters. Journal of Cloud Computing Research, 1(1), 16–34. We searched for the most similar machine types of different public cloud service providers. The similarity indicator maps processing, memory, network, and disk I/O performance to just one similarity value (1 means identical, 0 means no similarity at all).
  • 29. This reference model guides our research Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 29 Developing a description language for cloud-native applications. Developing a standardized way of deploying a clustered container runtime environment for cloud-native applications (CNMM Level 3 conform deploying/operation) Make use of commodity services of public cloud service providers only (IaaS).
  • 30. Research Surveillance of Practitioners Prof. Dr. rer. nat. Nane Kratzke Computer Science and Business Information Systems 30 Practitioners often prefer layer-based reference models ... Jason Lavigne, ”Don’t let aPaaS you by - What is aPaaS and why Microsoft is excited about it”, see https://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”, see http://www.qaware.de/fileadmin/user_upload/QA ware-Cloud-Native-Artikelserie-Java_Magazin- 1.pdf (accessed 4th August 2016) MEKUNSCloud Landscape Model