julia schroeter - tu dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf ·...

16
Faculty of Computer Science, Institute of Software and Multimedia Technology, Chair of Software Technology 23.11.2012 Dynamic Configuration Management of Cloud-based Applications Julia Schroeter

Upload: others

Post on 17-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Faculty of Computer Science, Institute of Software and Multimedia Technology, Chair of Software Technology

23.11.2012

Dynamic Configuration Management of Cloud-based Applications

Julia Schroeter

Page 2: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 2 of 16

• Multi-tenant aware applications are a special kind of multi-user applications

• Single-instance multi-tenancy• One application instance shared among various tenants• One-size-fits-all paradigm

23.11.2012

Motivation

Multi-tenant awareApplication

Company A

Users

Company B

Users

Page 3: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 3 of 1623.11.2012

• Tenants have different requirements

• Requirements may change

• Various stakeholdersinvolved in provisioningapplication

• Need for efficient dynamicconfiguration management

One size fits all?

© w

ww

.Car

toon

Stoc

k.co

m

Page 4: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 4 of 1623.11.2012

• Software as a Service (SaaS)• Business application

• Platform as a Service (PaaS)• Multi-tenancy support• Load balancing• Persistence service

• Infrastructure as a Service (IaaS)• Storage• Computing capacity

Cloud-computing Stack

[MG11] P. Mell and T. Grance. The NIST definition of cloud computing. NIST Special Publication 800-145, National Institute of Standards and Technology, Information Technology Laboratory, 2011.

[MG11]

Page 5: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 5 of 1623.11.2012

• User• Various devices to access

application

• Tenant• Functional requirements• Quality requirements (service

level agreements)

• Application Provider• Provide application functionality• Platform pre-configuration

• Resource Provider• Infrastructure, platform pre-

configuration

Stakeholders Involved in Configuration Process

Page 6: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 6 of 1623.11.2012

• Multi-tenant aware application architecture

• Sharing of resources as well as the application instance

• Variable functionality and extra-functional qualities

• Runtime onboarding and decomissioning of tenants• Not all tenants are known beforehand

• Various stakeholders involved in configuration process

• Change of a stakeholder‘s objectives

Characteristics of Cloud-based Applications

Page 7: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 7 of 1623.11.2012

• Apply software product line (SPL) variability management

• Extend staged configuration proposed by Czarnecki et al. • Pre-configuration stages• Adding stakeholders at runtime to a stage• Reconfiguration on defined entry points

Dynamic Configuration Management

[CHE05] K. Czarnecki, S. Helsen, and U. Eisenecker. Staged configuration through specialization and multi-levelconfiguration of feature models. Journal of Software Process: Improvement and Practice, 10(2):143–169, 2005

[CHE05]

Page 8: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 8 of 1623.11.2012

• Model staged configuration process

• Separation of concerns

• Enable reuse

Dynamic Staged Configuration

Page 9: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 9 of 1623.11.2012

Variability Model

• Functionality represented as features• Quality properties represented as attributes• Cross-tree constraints among features and attributes

Page 10: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 10 of 1623.11.2012

Configuration Operations on the Variability Model• Atomic operations

• Select feature• Deselect feature• Set attribute value• Limit an attribute domain

• Autocompletion to fulfill feature model constraints

-=

Page 11: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 11 of 1623.11.2012

View Model

[FK92] D. Ferraiolo and D. Kuhn. Role based access control. Proceedings of the 15th National Computer SecurityConference (NCSC ’92), pages 554–563, 1992.

[FK92]

• Group stakeholders• Assign configuration operations to (groups of)

stakeholders• Apply concepts of role based access control (RBAC)

Page 12: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 12 of 1623.11.2012

Configuration Process Model• Different stage types

• Free ordering of stage types

• Result of stages are pre-configurations with leftvariability

• Final results are completeconfigurations

Page 13: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 13 of 1623.11.2012

• Reconfiguration• On defined entry points

• Changes are propagated tosubsequent stages

• Add / remove stakeholder• At application runtime

• Update view model

• Add / remove actions in the configuration process

Dynamic Concepts

Page 14: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 14 of 1623.11.2012

• Independent in theproblem space• Tenancy contracts• User variant

configurations

• Dependent in thesolution space• User context• Tenant context

Configuration Artifacts

[SCG+12] Julia Schroeter, Sebastian Cech, Sebastian Götz, Claas Wilke and Uwe Aßmann. Towards Modeling a Variable Architecture for Multi-Tenant SaaS-Applications. Proceedings of VaMoS '12, ACM Press, 2012.

[SCG+12]

Page 15: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 15 of 1623.11.2012

• Support variability in cloud-based applications

• Staged configuration with various stakeholders involved

• Reconfiguration support to handle changing objectives

• Add and remove stakeholders dynamically

• Implementation of configuration management and thestaged configuration process

• Tooling support for extended feature models needed

• Evaluation using different case studies

Conclusion and Outlook

Page 16: Julia Schroeter - TU Dresdenst.inf.tu-dresden.de/files/teaching/ws12/fo/julia_staged_config.pdf · Julia Schroeter Software Technology Group, TU Dresden julia.schroeter@tu-dresden.de

Dynamic Configuration Management of Cloud-based Applications Slide 16 of 1623.11.2012

Julia SchroeterSoftware Technology Group, TU [email protected] www.juliaschroeter.de

Contact