cloudlightning service description language

16
SELF-ORGANISING, SELF-MANAGING HETEROGENEOUS CLOUD The CloudLightning Service Description Language

Upload: cloudlightning

Post on 22-Jan-2017

257 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: CloudLightning Service Description Language

SELF-ORGANISING, SELF-MANAGING HETEROGENEOUS CLOUD

The CloudLightning Service Description Language

Page 2: CloudLightning Service Description Language

CloudLightning Gateway Service – API & Definition LanguageMarian Neagul / [email protected] e-Austria / www.ieat.roTimișoara / Romania

Page 3: CloudLightning Service Description Language

Overview• A different perspective to the CloudLightning Architecture• The CloudLightning Gateway Service

Main FunctionalitiesAPI Model

• The CloudLightning Service Description Language

Page 4: CloudLightning Service Description Language

The CloudLightning ArchitectureGateway Service Perspective

Gate

way

Ser

vice

Gateway Service UI

Orc

hest

rato

r Eng

ine

Blueprint Decomposition Engine

Apache Brooklyn Serv

ice

Cata

logu

es

Page 5: CloudLightning Service Description Language

The CloudLightning ArchitectureGateway Service Perspective

Gate

way

Ser

vice

Operator

CSP

Acquire/Deploy Blueprint

Register Offers

Catalogues

Brooklyn

Service Decomposition

Console/UI

Que

ryy

Depl

oy

Self

Org

anizi

ng C

loud

Deploy Services

Trigger Self Organization

Page 6: CloudLightning Service Description Language

CloudLightning Gateway ServiceOverall functionality

• Represents the interface between the Operator and the Self Organizing Cloud

The Gateway Service also serves the CSP, allowing him to register new blueprints (definitions of applications) and services

• Abstracts the inner workings of the self organizing system (effectively hiding most of the internal details like vRacks, Cells, etc)• It’s functionality is wrapped around a custom tailored

Service Definition Language ☞

What is an application ?

Page 7: CloudLightning Service Description Language

CloudLightning Gateway ServiceGateway UI (Web Console)• The Web Console is aimed to provide

user interface for Blueprint definitionservice service registration and, most importantly, for triggering the deployment of the

blueprint • The Console builds upon the capabilities of the Brooklyn

componentThis allows us to reuse already existing Apache Brooklyn features

• It aims to hide the intricacies of the self organization systems

Page 8: CloudLightning Service Description Language

CloudLightning Gateway ServiceCatalogues

• We have several kinds:Service Catalogues: holding service definitions provided by the

CSP or, eventually, by the OperatorBlueprint Catalogues: holding blueprint definitions

(compositions of registered services or blueprints)

• The catalogues are consumed by:The decomposition engine, aiming to optimize the service

choice according to various criteriaThe console, for presentation and management purposesThe Apache Brooklyn component for triggering the effective

service orchestration and deployment

Page 9: CloudLightning Service Description Language

CloudLightning Gateway ServiceService Decomposition Engine

• The Service Decomposition Engine is the component of the Gateway Service responsible with the interaction with the self organizing system• It’s main function:

Transforming abstract specifications to concrete implementations according to user requirements; This is achieved by tight integration with the self organizing system;

The Decomposition Engine is the facilitator for achieving some of CloudLightning main aspirations: as for example energy efficiency or performance

Page 10: CloudLightning Service Description Language

CloudLightning Gateway ServiceApache Brooklyn

• We build upon the Apache incubated Brooklyn ProjectWe extend it to support our concept of “meta” servicesWe extend it in order to properly interact with the Service

Decomposition Engine

• Brooklyn's Blueprint language serves as the “backbone” of the CloudLightning Service Definition Language

We add custom constructs for referencing “meta” services and specifying service requirements ☞

Page 11: CloudLightning Service Description Language

CloudLightning Gateway ServiceService Definition Language

• As previously mentioned represents the main construct for specifying application and service requirements• Is build on top of the Apache Brooklyn Blueprint

Extended to support meta servicesExtended to support the specification of requirements at

various levels: service or application level

Page 12: CloudLightning Service Description Language

Structure of the Blueprint / SDLThe API view

Page 13: CloudLightning Service Description Language

Example Blueprint / SDLlocation: cloudlightning-1:ro.ieatname: My Cool Raytracing Solutionrequirements: - ....services:- type: io.cloudlightning.entity.meta.RayTracingComputeService id: RayTracingComputeService brooklyn.config: cloudlightning.soso.min_performance: 100gflops cloudlightning.soso.placement-policy: same-broadcast-domain cloudlightning.config: hints: prefer: ['GPU', "FPGA", "CPU"] # List of preferences requirements: ...- type: io.cloudlightning.entity.meta.raytracing.controller id: raytracingController brooklyn.config: messos_cluster.head_node: $brooklyn:component("RayTracingComputeService")

Page 14: CloudLightning Service Description Language

Implementation Schedule• Specification of the requirements for the Service

Definition Language is expected to be formulated by end of M15 (End of April 2016)• The complete implementation of the Gateway Service is

expected by end of M24 (February 2017)We plan to push relevant patches upstream (Brooklyn)

Page 15: CloudLightning Service Description Language

Questions ?

Page 16: CloudLightning Service Description Language

THANK YOUMarian Neagul