Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for...

8
Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to easily subclass from Core versus having to invent top level objects Enable domain experts to easily define their own specialized entities and relations Assemble application stacks and topologies using relations with strong typing Enable template validation Don’t try to define entire set of subclasses ever needed. E.g. all operating system types, VM Image types, … or policy types or deployment artifact types Apply this to the SugarCRM usecase as a concrete example Focus on Iaas case now, and represent Paas case next Defer connectsTo relation

Transcript of Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for...

Page 1: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA

useful for any application deployment in a cloud Enable users to easily subclass from Core versus having to invent top level

objects Enable domain experts to easily define their own specialized entities and

relations Assemble application stacks and topologies using relations with strong typing Enable template validation Don’t try to define entire set of subclasses ever needed. E.g. all operating

system types, VM Image types, … or policy types or deployment artifact types

Apply this to the SugarCRM usecase as a concrete example Focus on Iaas case now, and represent Paas case next Defer connectsTo relation

Page 2: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

See UML Diagram

Page 3: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

SugarCRM Service

SugarCRM Service Model

Zone1

WebServerTier

Apache Web Server

SugarCRM App

PHP Module

DBServerTier

MySQL

SugarCRM DBHTTP Client

Application EndPointHTTP Port 80

DocumentRoot:/SugarCRM

Database client requires client credentials, DB Name, host and portAdmin Access and/or

Management Accesspossibly over separate isolated networks with

different client credentials

requires

MySQL Client Endpoint Port 3306

Database content must be placed on storage of required capacity, availability

and performance

Page 4: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

SugarCRM Hierarchy

WebTier: ScalableTier

WebVM: VMImage

CentOS5.4: OperatingSystem

WebServer: ApacheWebServer

SugarCRM App: ApacheWebApp

PHP Module: ApacheMdule

dependsOn

DBTier: SingleNodeTier

DBVM: VMImage

CentOS5.4: OperatingSystem

Database: MySQLDatabase

SugarCRM DB:MySQLDatabase

Content

Application Container

ConnectsTo

Instance name Type nameEach contained object represents the use of a hostedOn relation

Page 5: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

Notes A valid hostedOn hierarchy can be inferred by

defining specific instances of the hostedOn relation with strongly typed ends. Multiple valid hierarchies may be possible

The connectsTo relation enables resolution of components requiring or providing a desired function

The dependsOn relation implies that the presence of another component is required although it may not directly be hostedBy or connectedTo by the depending component

Page 6: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

Application Container

Represents deployment of the application in the cloud

Application lifecycle/management operations Represents the public/private communication

boundary (access the application) Application SLAs, compliance, security

Page 7: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

Tier

Homogeneous set of identical computing elements

Well defined scaling and availability semantics Provide EndPoints for other tiers and public

network Consume EndPoints from other tiers and

public network

Page 8: Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.

HostedComponent

Represents a software component in a hostedOn hierarchy. E.g.:– WebApplication hostedOn WebServer– ELB hostedOn J2EEServer

HostedComponents are containers– They may contain other HostedComponents

The “root-most” HostedCompoment is hostedOn the VM/OS