31
Yaron Parasol @yaronpar Introduction to TOSCA

Tosca explained

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Tosca explained

Yaron Parasol@yaronpar

Introduction to TOSCA

Page 2: Tosca explained

About Me

• Yaron – Modern Hebrew Name• Parasol – Strange

Polish Name• Lead Product

Manager of Cloudify at GigaSpaces• Member of TOSCA

TC

Page 3: Tosca explained

Many stages require manual involvement

Provision

Install

Configure

Deploy

Monitor

Scale

Application Deployment Lifecycle

Page 4: Tosca explained

The Impact of Human

Error

80% of outages impacting mission-

critical services will be caused by people and process issues

80% of outages impacting mission-

critical services will be caused by people and process issues

50% of those outages will be caused by

change/configuration/release integration and hand-off issues

Page 5: Tosca explained

61% ARE HERE

83%WANT TO BE HERE

TIME

EFFE

CTIV

ENES

S

The Path to Orchestration

Page 6: Tosca explained

What is TOSCA?

• Topology & Orchestration Specification of Cloud Application

• By OASIS – Sponsored by IBM, CA, Rackspace, RedHat, Huawei and others

Page 7: Tosca explained

What is TOSCA?

• Goal: cross cloud, cross tools orchestration of applications on the Cloud

• Status: – Version 1 approved (XML ) – Version 2 (also YAML!) in final

design

Page 8: Tosca explained

Why TOSCA?

• Standard• Can Describe– Any Topology– Any Automation

Process

• Portable between Clouds and Tools

Page 9: Tosca explained

The TOSCA Building Blocks

Application Topologies

Workflows

Policies

Page 10: Tosca explained

What do we see here?

Page 11: Tosca explained

What do we see here?

Host

Middleware

App module

connection

Page 12: Tosca explained

What We’ve Seen

• An application topology• 3 layers

– Infrastructure (Cloud or DC objects)– Platform or Middleware (App

containers)– Application modules, schemas and

configurations

• Relationships between components:– What’s hosted on what or installed

on what– What’s connected to what

Page 13: Tosca explained

What’s in a TOSCA

Topology?

• component in the topology are called Nodes

• Each Node has a Type (e.g. Host, BD, Web server). – The Type is abstract and hence

portable– The Type defines Properties and

Interfaces

• An Interface is a set of hooks (named Operations)

• Nodes are connected to one another using Relationships

Page 14: Tosca explained

Topology

Infrastructure

Middleware

Application

Host Host Network

Apache Tomcat MySQL

Mod_proxy WAR Schema

Page 15: Tosca explained

Structure &Syntax

Page 16: Tosca explained

Node Type

• Describe a Cloud or Software type (e.g. Server or Apache)• Maps the Type to the actual impl. Of

the lifecycle interface

Page 17: Tosca explained

Node Type (cont.)

• Defines properties as YAML maps• Might defines capabilities (What it

can provide to other nodes)

Page 18: Tosca explained

Node Type (cont.)

• Might Define Requirements (what it needs from other nodes)

Page 19: Tosca explained

Relationship Type

• Requirements and Capabilities are implicit way to describe relationships• Usually you need the explicit way– You need hooks to configure the source or target

node or both

• So relationships have types and interfaces as well

Page 20: Tosca explained

Relationships (cont.)

• The basic relationship types are:– dependsOn – abstract type and its sub types:– hostedOn – a node is contained within another– connectsTo – a node has a connection configured to

another

• The basic interface is configure– preconfigure_source, preconfigure_target– postconfigure_source, postconfigure_target– add_target, remove_target

Page 21: Tosca explained

Node Templates

• An instance of a type (like Object to Class)• Has specific properties• Has artifacts:– What to install– How to install (mapped to interface hooks)

• Has requirements and capabilities (or relationships)

Page 22: Tosca explained

Node Template (Examples)

Page 23: Tosca explained

Translated to TOSCA

Node

Node

Node

Connectes_to relationship

Hosted_onrelationship

Page 24: Tosca explained

Workflows

• Imperative flow algorithm• Using a workflow

engine• Timing the

invocation of operations on different node

Page 25: Tosca explained

Policies

• Brings monitoring to the orchestration as input• Ongoing evaluation

of Rules• Enforce SLA,

Health, and anything else• Can invoke more

processes

Page 26: Tosca explained

Putting it All Together

• TOSCA Template (Blueprint in Cloudify) contains:– Application Topology• Nodes

– Interfaces– Properties– Artifacts (Plugins in Cloudify)

• Relationships– Interfaces

– Workflows– Policies

Page 27: Tosca explained

Proxy

REST + File

Server

GUI

WorkflowEngine

Task Manager

Blueprint + RuntimeData

Agent

AgentApplicationStack

Cloudify Manager

App VM

InvokesReportsCreates Architecture

Page 28: Tosca explained

Proxy

REST + File

Server

GUI

WorkflowEngine

Task Manager

Blueprint + RuntimeData

Policy Engine

Agent

Monitoring Data

Agent Monitoring Agent

ApplicationStack

Cloudify Manager

App VM

InvokesReportsCreates

Metrics VM

Architecture

Page 29: Tosca explained

Proxy

REST + File

Server

GUI

WorkflowEngine

Task Manager

Blueprint + RuntimeData

Policy Engine

Agent

Monitoring Data

Agent Monitoring Agent

ApplicationStack

Cloudify Manager

App VM

InvokesReportsCreates

Metrics VM

Logs + Events

Architecture

Page 30: Tosca explained

Cloudify 3Demo

• Apache 2 OpenSource• Release – July

2014

Page 31: Tosca explained

Thank you• http://

getcloudify.org