230 likes | 469 Views
Primer Themes: Creating a Cloud App With TOSCA. Gerd Breiter Frank Leymann Thomas Spatzier. Scenario: All required types are available, „only“ service template is to be specified This is the “simplest case” . Defining a service template.
E N D
Primer Themes:Creating a Cloud App With TOSCA Gerd Breiter Frank Leymann Thomas Spatzier
Scenario: All required types are available, „only“ service template is to be specified This is the “simplest case” Defining a servicetemplate
Defining a Service Template:The Application Modeler View X X Application Modeler Role • Understand application to be managed in cloud environment • Select required types • Node Types, Relationship Types • Define application structure (aka topology) • Define management behavior (aka plans) + + Define Plans ~ Import Types to Palett Define Topology Application Modeller ~
Define Topology • Import domain types needed • Node Templates • Set Properties • Set cardinalities • Set properties of Requirements & Capabiliites • Relationship Templates • Set Properties • Define Source and Target Define Topology ~ +
Subprocess Structure:DefineTopology ~ DefineNode Templates DefineRelationship Templates
Define Your Plans • Build Plan and Termination Plan incase of an imperative approach • Management plans in any cases if more that deployment and decommissioning is required Define Plans ~ +
Creating a CSAR:The IT Specialist View The IT Specialist Role • Get Service Template to create a CSAR for • Import artifact entities (artifact templates, implementation artifacts, deployment artifacts,...) • Build the CSAR + Build CSAR Get Service Template Import Artifacts ~ IT Specialist
Build Your CSAR • Define directory structure • Provide content for the directories • Update relative URIs in Artifact Templates accordingly • Copy required .ste files to /Service-Template directory • Provide TOSCA.meta file • Identify Entry Service Template • Zip the directories Build CSAR ~ +
Define Domain Types & Artifacts:The „Vendor“ View Vendor Role • Get Generic Types • Define Domain/Vendor-specific Types • Provide artifacts for those types + + Define Artifacts DefineDomain Types Get GenericTypes ~ ~ Vendor
Define Domain Types • Import generic types needed • Node Types • Properties • Interfaces • Requirement Definitions • Capability Definitions • Usage of inheritance • Relationship Types • Properties • Source/Target Interfaces • Valid Source/Target • Usage of inheritance DefineDomain Types ~ +
Subprocess Structure:Define Domain Types ~ DefineNode Type DefineRelationship Type
Define Artifacts Define Artifacts • Artifact Templates • Set Properties (i.e. the invariant values of metadata) • Associate artifacts with Artifact Templates • Specify inclusion/exclusion of files • Define Node/Relationship Type Implementations • Set variant metadata as artifact specific content +
Subprocess Structure:DefineArtifacts DefineArtifact Template AssociateArtifacts DefineNode/Rel Type Implementation
Define a Composable Service Template • Provide Boundary Definitions • Export corresponding definitions of elements of the service template Enable Service Template Composition ~ +
DefiningGenericTypes:The Cross-Vendor View • Domain-independent typesaredefined • E.g. by a vendorconsortium • E.g. by a standardsbody • ... + DefineGenericTypes ~ Cross-Vendor
Define Generic Types • Requirement Types • Capability Types • Artifact Types • Invariant metadata (in Artifact Types/Templates) • Variant metadata (used in Node/Relationship Type Implementations) • Decide, which metadata is provided in Artifact Types/Templates, Implementations vs in .meta file • Eventually, corresponding ontologies will result from that DefineGenericTypes ~ +
Subprocess Structure:DefineGenericTypes ~ DefineCapability Type DefineRequirement Type DefineArtifact Type
Scenario: You start on a green field, you must define everything for your cloud application by yourself This is the “most difficult case” Summary
StepsTowards a CloudApplication X X + + + + + + Define Plans DefineGenericTypes DefineDomain Types Build CSAR Define Artifacts Define Topology ~ ~ ~ ~ ~ ~ Application Modeller Domain Expert IT Specialist Cloud Application Specification Process