To view this presentation as a slideshow use the following link: SlideShow.
Contents
- (NOTES)
- T6.5 -- Deployment and run-time management
- Presentation agenda
- (NOTES)
- Zooming into the run-time **
- Actor interactions
- Inter-task collaborations
- Run-time axes (1)
- Run-time axes (2)
- Primary goals (1) **
- Primary goals (2) **
- Secondary goals
- (NOTES)
- Architecture (1) **
- Architecture (2)
- Application life-cycle (1)
- Application life-cycle (2)
- Sub-systems (1)
- Sub-systems (2)
- Supported service models **
- Supported cloud providers (1)
- Supported cloud providers (2)
- Primary achievements (1) **
- Primary achievements (2) **
- (NOTES)
- Demo
- (NOTES)
- Technical outcomes (1)
- Technical outcomes (2)
(NOTES)
This presentation is only a draft of the actual presentation to be given at the review.
It's main purpose is to quickly edit and obtain feedback about the contents of the presentation. Following that, the contents shall be transcribed into a proper presentation that follows the MODAClouds presentation template.
Although it seems there are many slides, only 7 are essential (those marked with two stars ** in their title) which will fit in 5 minutes. There are also 14 more slides if we are asked for details or we have enough time. (The reminder 8 are "meta-slides" like described below.)
In some slides there are paragraphs marked with that are meant as annotations, remarks or presentation directives, and are not part of the actual presentation. Moreover some slides, just like this one, titled (NOTES), are not part of the actual presentation, they just provide meta-details about what is to be presented.
T6.5 -- Deployment and run-time management
Partners: IeAT, Imperial, Flexi, CA;
Roadmap:
M3-M6 -- preparation: SotA (D6.1), architecture (D3.2.1);
M6-M12 -- development: proof of concept (D6.5.1);
- M12-M24 -- development and integration: initial release (D6.5.2);
- M24-M30 -- testing and integration: final release (D6.5.3);
Presentation agenda
(NOTE: This slide only highlights the presentation topics.)
- Identify the position within the MODAClouds ecosystem.
Summarize the goals and requirements.
Overview of the architecture and sub-systems.
Highlight the achievements to date.
Demo of the execution platform.
(NOTES)
(NOTE: This slide is not part of the actual presentation, it just provides meta-details about what is to be presented.)
The following few slides are meant to accustom the reviewer with the context and concepts of the execution platform and it's relation with the other MODACloud's sub-systems.
The goal is to have a clear understanding of the following concepts:
- application service vs. platform service;
- application run-time vs. platform run-time;
Zooming into the run-time **
(TODO: Update the diagram to highlight the execution platform.)
(NOTE: This slide is meant to give the reviewer a mental "you-are-here" point within the MODAClouds "picture".)
Actor interactions
(NOTE: This slide can be skipped if time is precious.)
The execution platform interacts mainly with:
self-adaptation platform;
application operators;
application testers;
Although there could be interactions with:
- monitoring platform;
- platform developers;
- application developers;
- third-party integrators;
Inter-task collaborations
(NOTE: This slide can be skipped if time is precious.)
- WP6 -- T6.2 (monitoring), T6.4 (self-adaptation);
- WP5 -- T5.4 (filling the gap);
WP4 -- T4.2 (Models@RunTime, CloudML);
- WP3 -- T3.3 (testing infrastructure);
Run-time axes (1)
(NOTE: This slide can be skipped if time is precious.)
Horizontally (based on functionality):
application services (developed externally);
platform services (developed within MODAClouds);
Examples of MODAClouds platform services:
- self-adaptation platform;
- monitoring platform;
- cloud adapters (mOSAIC, Cloud4SOA);
- other required resources (C-SPARQL);
(TODO: Provide a picture highlighting the split, based on a simplified diagram of the architecture.)
Run-time axes (2)
(NOTE: This slide can be skipped if time is precious.)
Vertically (stacked):
services, running on top of,
execution platform, running on top of,
infrastructure (IaaS or PaaS);
(The underlaying infrastructure could be different between the application and platform services.)
(TODO: Provide a picture highlighting the split, based on a simplified diagram of the architecture.)
Primary goals (1) **
The execution platform provides support for both application and platform services.
By handling at run-time:
deployment -- provisioning and configuration;
operations -- scaling up / down, re-configuration;
maintenance -- (basic) monitoring, logging;
- (basic) security;
But also aiding at development-time in:
- testing -- providing a cloud-like environment;
Primary goals (2) **
All is achieved by providing:
an abstraction layer (and API) around cloud run-time platforms;
a standard set of resources (SQL / NoSQL databases, messaging, etc.);
a set of support services (discovery, coordination, etc.);
the tools (and UI's) to interact with all of the above;
Secondary goals
(NOTE: This slide can be skipped if time is precious.)
There are also a few general guidelines:
API-centric (besides tools and UI's);
- building-upon and enhancing existing technologies;
- leveraging existing standards (e.g. TOSCA);
open-source code (e.g. Apache 2.0);
aiding agile development and deployment methodologies (e.g. DevOps);
(NOTES)
(NOTE: This slide is not part of the actual presentation, it just provides meta-details about what is to be presented.)
The following slides focus on the technical aspects of the execution platform:
- they start from a top level architectural view;
- then go through a typical application deployment workflow;
- then give detailed breakdown of the provided services;
- and finish with the supported deployment models and providers;
Architecture (1) **
(TODO: Provide a simplified diagram of the architecture, that expands into the full architecture on the next slide.)
Architecture (2)
(NOTE: This slide can be skipped if time is precious.)
Application life-cycle (1)
(NOTE: This slide can be skipped if time is precious.)
Development:
- testing in a cloud-like environment;
Preparation:
- selecting a cloud provider and deployment model;
- packaging and publishing the application artifacts;
(These are only the phases where the execution platform is involved in.)
Application life-cycle (2)
(NOTE: This slide can be skipped if time is precious.)
Deployment:
- initial IaaS resource allocation;
- core services deployment;
- support services deployment;
- application deployment;
OAM (Operations, Administration, Maintenance)
(These are only the phases where the execution platform is involved in.)
Sub-systems (1)
(NOTE: This slide can be skipped if time is precious.)
There are three broad categories:
platform -- direct support and interaction with other MODAClouds services;
- infrastructure -- mediation for cloud providers, enhancements for cloud services, etc.;
- coordination -- focused on the distributed aspects of cloud environments;
Sub-systems (2)
(NOTE: This slide can be skipped if time is precious.)
Examples of platform sub-systems:
- application controller and bootstrapper;
- cluster load balancer;
- artifact repository;
- object store;
(A complete list in found at https://goo.gl/RXQsxc.)
Supported service models **
Application services:
initial IaaS (on-top of mOSAIC PaaS) for M12;
- initial PaaS (on-top of Cloud4SOA PaaS) for M24;
- customized VM's (via custom adapters) for M30;
Platform services:
- IaaS (on-top of mOSAIC) for M12-M30;
Supported cloud providers (1)
(NOTE: This slide can be skipped if time is precious.)
Through mOSAIC (IaaS only):
testing environments (IeAT's Eucalytpus) for M12;
- private clouds (Flexiant) for M18;
- public clouds (Amazon EC2) for M18;
other private clouds (OpenStack, OpenNebula) from M24;
- other public clouds (Google CE) from M24;
Supported cloud providers (2)
(NOTE: This slide can be skipped if time is precious.)
Through Cloud4SOA (PaaS and IaaS), from M18-M24:
Google AppEngine;
- Heroku;
- Cloud Foundry;
- (and many others supported;)
Primary achievements (1) **
A sound architecture tackling both IaaS and PaaS deployments.
A clear separation of concerns between the execution and self-adaptation platforms.
An integration plan between the design-time tools and the run-time tools.
(Bare in mind that this is just the proof-of-concept release.)
Primary achievements (2) **
Building upon and enhancing mOSAIC, making it suitable for the MODAClouds requirements.
Initial OFBiz deployment (one of the case-study applications) on-top of mOSAIC.
An early integration between the monitoring and the execution platform.
(Bare in mind that this is just the proof-of-concept release.)
(NOTES)
(NOTE: This slide is not part of the actual presentation, it just provides meta-details about what is to be presented.)
The following demo consists of a video presenting the deployment of OFBiz ontop of mOSAIC, running on IeAT's Eucalyptus instance.
The script is as follows:
- it starts from a console, where a tool is used to provision a mOSAIC cluster; (the outcome is an URL to the platform controller;)
- it then displays the application descriptor used to start the OFBiz application; (the descriptor is a JSON file, listing the OFBiz server and MySQL components; for the OFBiz component it provides as configuration the endpoint of an already executing C-SPARQL instance;)
- it then shows how the descriptor is loaded into the platform controller WUI, and how the deployment commences;
- it then lists the two components running, and how the OFBiz server is queried for the HTTP endpoint;
- it uses the obtained HTTP endpoint to check that OFBiz is indeed running;
- it also checks the C-SPARQL instance for incoming monitoring data;
- (optional) it continues by show-casing the mOSAIC features (like logging, stopping a component, or cloning a component);
Demo
...
(NOTES)
(NOTE: This slide is not part of the actual presentation, it just provides meta-details about what is to be presented.)
The following slides, highly technical in nature, are provided in case we need to fill some time. They present the story behind the MODAClouds enhancements on-top of mOSAIC.
Technical outcomes (1)
(NOTE: This slide can be skipped if time is precious.)
ME2 (mOSAIC Execution Environment):
- LXC-based service isolation;
- the run-time environment for the application / platform services;
mOS (mOSAIC Operating System):
- OpenSUSE-based customized distribution;
- available as a VM image for various IaaS providers;
- the run-time environment for the core sub-systems;
(Only those available in the current release.)
Technical outcomes (2)
(NOTE: This slide can be skipped if time is precious.)
MySQL component:
- MariaDB-based customized build;
- running inside ME2;
- providing an SQL resource for application / platform services;
mOSAIC and the new mOS / ME2 environments:
- initial porting the platform controller;
- initial porting of core components;
(Only those available in the current release.)