occiware presentation at cloud computing world expo, april 1, 2015, paris

12
OCCIware A framework for Everything as a Service Marc Dutoo, Open Wide Jean Parpaillon, Inria Cloud Computing World Expo, Paris April, 1st 2015

Upload: catherine-nuel

Post on 16-Jul-2015

151 views

Category:

Technology


0 download

TRANSCRIPT

OCCIwareA framework for Everything as a Service

Marc Dutoo, Open Wide

Jean Parpaillon, Inria

Cloud Computing World Expo, ParisApril, 1st 2015

OverviewSpeakers

– Marc Dutoo, Head of R&D Dept. at Open Wide● OCCIware coordinator, SOA / Data expert

– Jean Parpaillon, R&D engineer at Inria● OW2 TC Chairman, author or erocci

Schedule

– 15' OCCI(ware) introduction

– 15' XaaS demo with erocci

OCCIware Factsheet

• 72 man month, 5,6m€ budget, sponsored by French ministry of Industry• 3 academics, 5 companies, 2 associations• To lower Cloud Computing adoption costs and break up barriers between its various implementations, layers, domains

- Especially Data Center, deployment, Big Data, Linked Data

• By bringing to OGF's Open Cloud Computing Interface (OCCI) the power of formal languages and model driven engineering (MDE)

Cloud Computing – the problem

Layers

Domains

Image : wikipedia.org

Partitioning! Lock in!

No one-fits-allsolution!

Lack of standards!

Layers

Domains

Too manystandards!

Lack of ecosystem!

Cloud Computing – the problem

Image : wikipedia.org

OCCI 101OCCI Core (metamodel)

Network

Container

Environment

Compute- memory- started- start()

Database

Application

Storage

Router

Deployable

NetworkLink

DatabaseLink

EnvironmentLink

Everything is Resource or Link, be it at …

Platformlevel

Infrastructurelevel

Applicationlevel

OCCI Extensions (models)

OCCIware Outputs• A formal, model-driven platform to manage any Cloud resource

- Formal model of OCCI, on MIT's Alloy – Inria & TSP- OCCIware Studio, on Eclipse EMF & Sirius – Obeo- OCCIware@Runtime & console, using Models@Runtime – ActiveEon & Scalair- Deploy@OCCIware - ActiveEon & UJF

• 4 Use cases- Data Center as a Service / IaaS, on Scalair infrastructure- Big Data / HPC, on ActiveEon ProActive HPC platform- Linked Open Data, on Ozwillo app store's Datacore – Pôle Numérique & Open Wide- Deployment interoperability, on Linagora & ActiveEon's

• Open Source (OW2, Eclipse) and standardization (OGF) with help from a 10-strong international Scientific Orientation Committee

01/04/15 9

OCCI Runtime Architecture

01/04/15 10

OCCI Model 1 : blog

<?xml version="1.0" encoding="UTF­8"?>

<occi:extension xmlns:occi="http://schemas.ogf.org/occi" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema­instance"  xsi:schemaLocation="http://example.org/occi occi.xsd " name="A REST blog" status="experimental" version="1">

    <occi:kind scheme="http://example.org/occi/test#" term="blog" title="A Blog">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="resource" />

    <occi:attribute name="example.blog.title" type="xs:string" title="Blog title"  use="required" />

  </occi:kind>

  <occi:kind scheme="http://example.org/occi/test#" term="entry" title="entry">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="resource" />

    <occi:attribute name="blog.entry.title" type="xs:string" title="Blog entry title" use="required" />

    <occi:attribute name="blog.entry.date" type="xs:string" title="Creation date"  use="optional" />

    <occi:attribute name="blog.entry.content" type="xs:string" title="Entry content" use="required" />

  </occi:kind>

  <occi:kind scheme="http://example.org/occi/test#" term="user" title="Blog user">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="resources" />

    <occi:attribute name="blog.user.name" type="xs:string" title="User name"  use="required" />

    <occi:attribute name="blog.user.email" type="xs:string" title="User email" />

    <occi:attribute name="blog.user.role" type="xs:string" title="User role" />

  </occi:kind>

  <occi:kind scheme="http://example.org/occi/test#" term="author" title="Author">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="link" />

  </occi:kind>

</occi:extension>

example.blog.title : string (1..1)

blog

summary : string (0..1)

resource linktarget

sourcelinks

example.entry.title : string (1..1)example.entry.date : string (0..1)example.entry.content : string (1..1)

entry

example.user.name : string (1..1)example.user.email : string (0..1)example.user.role : string (0..1)

user

author

01/04/15 11

OCCI Model 2 : storage

<?xml version="1.0" encoding="UTF­8"?>

<occi:extension xmlns:occi="http://schemas.ogf.org/occi" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema­instance" xsi:schemaLocation="http://schemas.ogf.org/occi occi.xsd " name="Storage" status="experimental" version="1">

  <occi:kind term="container" scheme="http://schemas.ogf.org/occi/storage#"   title="Container Resource (dir)">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="resource" />

    <occi:attribute name="occi.storage.size" type="xs:integer" title="Container Size (#children)" />

  </occi:kind>

  <occi:kind term="containerentry" scheme="http://schemas.ogf.org/occi/storage#"  title="Container Entry Link">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="link" />

  </occi:kind>

  <occi:kind term="data" scheme="http://schemas.ogf.org/occi/storage#"  title="Data Resource (file)">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="resource" />

    <occi:attribute name="occi.storage.mimetype" type="xs:string" title="Content Mimetype" />

    <occi:attribute name="occi.storage.size" type="xs:integer" title="Content Size" />

  </occi:kind>

  <occi:mixin term="rawdata" scheme="http://schemas.ogf.org/occi/storage#" title="Raw data mixin">

    <occi:attribute name="occi.storage.raw" type="xs:anyURI" title="Data content link" />

  </occi:mixin>

  <occi:mixin term="thumbnail" scheme="http://schemas.ogf.org/occi/storage#" title="Data thumbnail (light representation)" >

    <occi:attribute name="occi.storage.thumbnail.id" type="xs:anyURI" title="" />

    <occi:attribute name="occi.storage.thumbnail.mimetype" type="xs:string" title="" />

  </occi:mixin>  

</occi:extension>

occi.storage.size : integer (0..1)

container

summary : string (0..1)

ressource linktarget

sourcelinks

occi.storage.mimetype: string (0..1)occi.storage.size : integer (0..1)

data

occi.storage.raw : uri (1..1)

rawdata : mixin

occi.storage.thumbnail.id: uri (0..1)occi.storage.thumbnail.mimetype : string (0..1)

thumbnail : mixin

01/04/15 12

OCCI Model 3 : admin

<?xml version="1.0" encoding="UTF­8"?>

<occi:extension xmlns:occi="http://schemas.ogf.org/occi" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema­instance" xsi:schemaLocation="http://erocci.ow2.org/occi occi.xsd " name="Admin Resources for erocci" status="experimental" version="1">

  <occi:kind scheme="http://erocci.ow2.org/occi/admin#" term="system" title="System Informations">

    <occi:parent scheme="http://schemas.ogf.org/occi/core#" term="resource" />

    <occi:attribute name="erocci.admin.sysname" type="xs:string" title="System Name"   immutable="true" />

    <occi:attribute name="erocci.admin.sysdescr" type="xs:string" title="System Description"  immutable="true" />

    <occi:attribute name="erocci.admin.syscontact" type="xs:string" title="System Contact" immutable="true" />

    <occi:attribute name="erocci.admin.uptime" type="xs:integer" title="System Uptime"  immutable="true" />

  </occi:kind>

</occi:extension>

summary : string (0..1)

ressource linktarget

sourcelinks

erocci.admin.sysname: string (0..1)erocci.admin.sysdescr : string (0..1)erocci.admin.syscontact : string (0..1)erocci.admin.uptime : string (0..1

admin

Any questions ?Thanks for your attention !

Contact :

http://www.occiware.org ­ marc.dutoo at openwide.fr

Partners

Sponsors

DGE (PIA) & System@tic, SCS, Images & Réseaux, PICOM, Minalogic clusters