To tackle the cloud-provider lock-in, the Open Grid Forum (OGF) is developing the Open Cloud Computing Interface (OCCI), a standardized interface for managing any kind of cloud resources. Besides the OCCI Core model, which defines the basic modeling elements for cloud resources, the OGF also defines extensions that reflect the requirements of different cloud service levels, such as IaaS and PaaS. However, so far the OCCI PaaS extension is very coarse grained and lacks of supporting use cases and implementations. Especially, it does not define how the components of the application itself can be managed. In this paper, we present a model-driven framework that extends the OCCI PaaS extension and is able to use different configuration management tools to manage the whole lifecycle of cloud applications. We demonstrate the feasibility of the approach by presenting four different use cases and prototypical implementations for three different configuration management tools.
Right Money Management App For Your Financial Goals
MoDMaCAO: Model-Driven Configuration Management of Cloud Applications with OCCI (CLOSER'2018)
1. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
1
MoDMaCAO: Model-Driven
Configuration Management
of Cloud Applications with OCCI
Fabian Korte, Stéphanie Challita, Faiez Zalila,
Philippe Merle, Jens Grabowski
University of Goettingen (Germany)
Inria Lille – Nord Europe & University of Lille (France)
2. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
Context
• Open Cloud Computing Interface (OCCI)
• Standardization approach hosted by Open Grid Forum
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 2
• Resource-oriented model
and RESTful API
• Everything as a Service,
i.e., XaaS
• Not IaaS only but
also PaaS and SaaS
3. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 3
Problem Statement
• P1: Incomplete platform lifecycle model
• P2: No connection between infrastructure and platform models
• P3: No support for configuration management
• P4: Lack of use-cases and implementations
4. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 4
OCCI
Infrastructure
extension
Enhanced OCCI
Platform
extension
(1)
OCCI Placement Extension (2)
(3)
Case Study 1 Case Study 2 Case Study 3 Case Study 4
MoDMaCAO Modeling Framework
(4)
Implementation 1 Implementation 2 Implementation 3
MoDMaCAO Implementation Framework
OCCI
Platform
extension
Solution: MoDMaCAO
5. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
OCCIware Studio
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 5
OCCIware
studio
OCCIware
runtime
Manage DiscoverOCCIware
user
Cloud
resources
OCCI
extension
OCCI
configuration
Generate
Generate
6. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
Outline
• Enhanced OCCI Platform Extension
• OCCI Placement Extension
• MoDMaCAO Modeling Framework
• MoDMaCAO Implementation Framework
• Case Studies
• Conclusions
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 6
7. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 7
OCCI
Infrastructure
extension
Enhanced OCCI
Platform
extension
(1)
OCCI Placement Extension (2)
(3)
Case Study 1 Case Study 2 Case Study 3 Case Study 4
MoDMaCAO Modeling Framework
(4)
Implementation 1 Implementation 2 Implementation 3
MoDMaCAO Implementation Framework
Solution: MoDMaCAO
0
8. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
OCCI Platform Modifications
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 8
9. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
OCCI Platform Life-Cycle FSM
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 9
10. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 10
OCCI
Infrastructure
extension
Enhanced OCCI
Platform
extension
(1)
OCCI Placement Extension (2)
(3)
Case Study 1 Case Study 2 Case Study 3 Case Study 4
MoDMaCAO Modeling Framework
(4)
Implementation 1 Implementation 2 Implementation 3
MoDMaCAO Implementation Framework
Solution: MoDMaCAO
0
11. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
OCCI Placement Extension
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 11
12. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 12
OCCI
Infrastructure
extension
Enhanced OCCI
Platform
extension
(1)
OCCI Placement Extension (2)
(3)
Case Study 1 Case Study 2 Case Study 3 Case Study 4
MoDMaCAO Modeling Framework
(4)
Implementation 1 Implementation 2 Implementation 3
MoDMaCAO Implementation Framework
Solution: MoDMaCAO
0
13. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
MoDMaCAO Modeling Framework
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 13
Allows cloud architects to:
1. design abstract types for cloud applications and components
2. model configured instances of cloud applications
3. check the validity of the configured instances
14. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
MoDMaCAO Modeling Framework
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 14
15. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 15
OCCI
Infrastructure
extension
Enhanced OCCI
Platform
extension
(1)
OCCI Placement Extension (2)
(3)
Case Study 1 Case Study 2 Case Study 3 Case Study 4
MoDMaCAO Modeling Framework
(4)
Implementation 1 Implementation 2 Implementation 3
MoDMaCAO Implementation Framework
Solution: MoDMaCAO
0
16. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 16
• Configuration of applications using model interpretation
• Configuration management tools are implemented as plugins
• Code skeleton is generated from models using OCCIware Studio
MoDMaCAO Implementation
17. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
MoDMaCAO Implementation
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 17
18. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
Case Studies and Validation
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 18
• Models for
• MongoDB
• LAMP
• Cassandra
• Spark
• Implementations for
• Ansible
• Roboconf
• CloudAutomation
Available at https://github.com/occiware/MoDMaCAO
19. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
MongoDB
• MongoDB is a
• NoSQL database
• that can be highly scaled
• often used in cloud environments
• Supports sharding for scalability
• Supports replication for reliability
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 19
ConfigServer
Router
Shard1
Shard2
Shard3
20. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
MongoDB Extension
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 20
21. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
MongoDB Configuration
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 21
PlatformInfrastructure
22. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
MongoDB Designer
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 22
23. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
Plugin Implementations
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 23
• Ansible
• An Ansible-specific plugin implementation
• An Ansible role is created for each OCCI mixin
• Ansible roles are accessible via OCCIware Runtime
• An Ansible variable is created for each OCCI attribute
• Roboconf
• A Roboconf-specific plugin implementation
• SoftwareInstanceManager extends ConfigurationManagementTool
• Cloud Automation
• Based on workflows
• A workflow is a series of actions
• Workflows are implemented thanks to OCCI FSMs
24. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
Conclusion
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 24
• Model-driven configuration management for cloud applications
• with enhanced OCCI Platform Extension
• implemented using OCCIware toolchain
• Future works
• Support combination of configuration management tools
• Support modelling with TOSCA
25. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
OCCI Community Feedback
In this paper, you have identified and proposed workable solutions for
several areas in which the OCCI Platform model as currently published was
just a starting point, and have gone further by implementing and making
available tools through the OCCIware project.
From an OGF and community point of view, the natural question would
seem to be whether some of these concepts can be formalized through a
revision or new derivative document to replace the existing one
(https://www.ogf.org/documents/GFD.227.pdf) that can serve as a basis
for further enhancing the OCCI specification set.
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 25
-- Alan Sill
President of OGF
26. Inria Lille – Nord Europe & University of Lille (France)Stéphanie Challita
Thank you!
CLOSER 2018 Model-Driven Configuration Management of Cloud Applications with OCCI 26
stephanie.challita@inria.fr
www.occiware.org
https://github.com/occiware/MoDMaCAO