OASIS TOSCA. and how it could fit into OpenStack Heat. OpenStack Design Summit, April 15 th 2013. Thomas Spatzier, IBM (thomas.spatzier@de.ibm.



Similar documents
OASIS TOSCA. Introduction and Overview. Thomas Spatzier, IBM

OASIS TOSCA. Introduction and Overview

TOSCA Interoperability Demonstration

Portable, Interoperable Cloud Applications using TOSCA

Portable, Interoperable Cloud Applications using TOSCA

Topology and Orchestration Specification for Cloud Applications. An Open Standard for Cloud Application Portability

KonyOne Server Installer - Linux Release Notes

Topology and Orchestration Specification for Cloud Applications (TOSCA) Primer Version 1.0

CloudCenter Full Lifecycle Management. An application-defined approach to deploying and managing applications in any datacenter or cloud environment

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

Figure 1: Illustration of service management conceptual framework

Combining Declarative and Imperative Cloud Application Provisioning based on TOSCA

Escaping Vendor Lock-in with TOSCA, an Emerging Cloud Standard for Portability

STeP-IN SUMMIT June 18 21, 2013 at Bangalore, INDIA. Performance Testing of an IAAS Cloud Software (A CloudStack Use Case)

ActiveVOS Server Architecture. March 2009

Mobile Cloud Computing T Open Source IaaS

Community Systems Management Open Source COSMOS Creation Review

Change the Game with HP Helion

Building Data Integrator Real-time Jobs and Calling Web Services

SUSE Cloud 2.0. Pete Chadwick. Douglas Jarvis. Senior Product Manager Product Marketing Manager

Cloud Service Orchestration with TOSCA, Chef and Openstack

A Middleware Strategy to Survive Compute Peak Loads in Cloud

Docker Java Application with Solr, Mongo, & Cassandra: Design, Deployment, Service Discovery, and Management in Production

Introduction into Web Services (WS)

DevOps Best Practices for Mobile Apps. Sanjeev Sharma IBM Software Group

Virtualization and Cloud: Orchestration, Automation, and Security Gaps

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

Sales Slide Midokura Enterprise MidoNet V1. July 2015 Fujitsu Limited

Portal Factory CMIS Connector Module documentation

EMC Smarts SAM, IP, ESM, MPLS, NPM, OTM, and VoIP Managers Support Matrix

How To Use Anibom Smart Cloud For Business

OpenClovis Product Presentation

Open Source SOA with Service Component Architecture and Apache Tuscany. Jean-Sebastien Delfino Mario Antollini Raymond Feng

Customer Master Presentation - Contents

HP OO 10.X - SiteScope Monitoring Templates

An Oracle White Paper October Maximize the Benefits of Oracle SOA Suite 11g with Oracle Service Bus

Running Oracle Databases in a z Systems Cloud environment

An Oracle White Paper February Oracle Data Integrator 12c Architecture Overview

Multi Provider Cloud. Srinivasa Acharya, Engineering Manager, Hewlett-Packard

PaaS solutions evaluation

Lego4TOSCA: Composable Building Blocks for Cloud Applications

Apache Stratos (incubating) M5 Installation Guide

Zenoss for Cisco ACI: Application-Centric Operations

CLOUDFORMS Open Hybrid Cloud

SCA-based Enterprise Service Bus WebSphere ESB

Developers Integration Lab (DIL) System Architecture, Version 1.0

What s new with Operations Management & Partner MPs

Jenkins and Chef Infrastructure CI and Application Deployment

IBM Cloud Manager with OpenStack

The Total Newbie s Introduction to Heat Orchestration in OpenStack

Of Pets and Cattle and Hearts

IBM WebSphere ESB V6.0.1 Technical Product Overview

White Paper. Cloud Native Advantage: Multi-Tenant, Shared Container PaaS. Version 1.1 (June 19, 2012)

Datasheet FUJITSU Cloud Monitoring Service

Extending IBM WebSphere MQ and WebSphere Message Broker to the Clouds Session 14238

Bridge Development and Operations for faster delivery of applications

Virtual Machine Manager Domains

Datasheet FUJITSU Software ServerView Cloud Monitoring Manager V1.0

TOSCA: Portable Automated Deployment and Management of Cloud Applications

KVM, OpenStack and the Open Cloud SUSECon November 2015

1 What is Cloud Computing? Cloud Infrastructures OpenStack Amazon EC CAMF Cloud Application Management

Building a big IaaS cloud with Apache CloudStack

Collaborative Open Market to Place Objects at your Service

Hard Partitioning and Virtualization with Oracle Virtual Machine. An approach toward cost saving with Oracle Database licenses

Onegini Token server / Web API Platform

KVM, OpenStack, and the Open Cloud

FUJITSU Software ServerView Cloud Monitoring Manager V1 Introduction

Cloud on TEIN Part I: OpenStack Cloud Deployment. Vasinee Siripoonya Electronic Government Agency of Thailand Kasidit Chanchio Thammasat University

Introduction to WebSphere Process Server and WebSphere Enterprise Service Bus

Cloud Computing for Architects

WSO2 Business Process Server Clustering Guide for 3.2.0

Introduction to Cloud Computing. Lecture 02 History of Enterprise Computing Kaya Oğuz

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.

Plan for Success with a Hybrid Cloud! Thanks to IBM Power Systems OpenStack SoftLayer and UrbanCode

SNIA Cloud Storage PRESENTATION TITLE GOES HERE

Configuration Management of Massively Scalable Systems

FIWARE Lab Solution for Managing Resources & Services in a Cloud Federation

Clodoaldo Barrera Chief Technical Strategist IBM System Storage. Making a successful transition to Software Defined Storage

Integrated Cloud Application Provisioning: Script-centric Management Technologies

The Sirocco multi-cloud management framework

Savanna Hadoop on. OpenStack. Savanna Technical Lead

Consuming and Producing Web Services with WST and JST. Christopher M. Judd. President/Consultant Judd Solutions, LLC

mod_cluster A new httpd-based load balancer Brian Stansberry JBoss, a division of Red Hat

Chapter 1 - Web Server Management and Cluster Topology

Managing MySQL Scale Through Consolidation

IOS110. Virtualization 5/27/2014 1

HP Converged Infrastructure: The Path to Cloud Computing Chuck Weir, BCS Solution Architect

Introduction to Service-Oriented Architecture for Business Analysts

Transcription:

OASIS TOSA and how it could fit into OpenStack Heat OpenStack Design Summit, April 15 th 2013 Thomas Spatzier, IBM (thomas.spatzier@de.ibm.com)

Agenda TOSA Overview and Examples TOSA oncepts Explained About Encoding Discussion: TOSA and Heat 2

Properties Properties What is TOSA? Topology and Orchestration Specification for loud Applications A language for defining Service Templates including a Topology Template describing the structure of a service elationship Template Service Template Topology Template type for Node Types apabilities equirements Interfaces Scripts Installables Definition of building blocks for services along with the implementation artifacts for manageability operations type for Images and the definition of deployment artifacts for components Node Template including the definition of plans for orchestrating the application Plans elationship Types Interfaces Definition of possible links between components Packaging format (SA) for packaging models and all related artifacts. loud Service Achive (SA) 3

TOSA T Members 3M ActiveState Axway A Technologies enturylink isco itrix loudsoft EM Fujitsu Google HP IBM Huawei Jericho Systems NetApp Nokia Siemens Pricewaterhouse Primeton ed Hat SAP Software AG VE Vnomic WSO2 Zenoss 4

1 st Interop Example: SugarM SugarMApp SugarMDB depends on [WebApplication] connects to [MySQLDatabase] PHPModule [ApacheModule] hosted on hosted on installed on Apache MySQL [ApacheWebServer] [MySQL] hosted on hosted on LinuxOS4Web LinuxOS4DB [OperatingSystem] [OperatingSystem] hosted on hosted on Server4WebTier Server4DBTier [Server] [Server] 5

Templates Types Language TOSA v1.0 spec Using TOSA to model Applications Node Type elationship Type Implementation Artifact Deployment Artifact MySQL Database MySQLDBontainer eq. MySQL LinuxOS eq. start.sh start.sh configure.sh PMs: mysql mysql-server MySQLDBonnection Properties: ontext root: /mycrm SugarMApp [WebApplication] SugarMDB [MySQLDatabase] Properties: DB Name: mysqldb Properties: HTTP Port: 8080 Apache [ApacheWebServer] MySQL [MySQL] Properties: Admin User: myadmin Primary focus for users Orchestrator Deployed Instances 6

ole of elationships in Model Processing NodeType Application is of type elationshiptype DBonnection is of type is of type NodeType Database Lifecycle operations (create, configure, start, ) are used by an orchestrator to create and manage components NodeTemplate MyApp NodeTemplate MyDB onnector concept elationship Types declare what endpoints they can connect, and which processing logic they inject to establish a link at runtime Base elationship Types HostedOn, DependsOn and onnectsto define the base semantics for processing topology models Use defined lifecycle operations to deploy and manage each component If a component is related to another component, see if relationship injects additional processing logic (e.g. pre-configure endpoint) Use base relationship types to derive processing order Process a host before a hosted component (HostedOn) Process a provider before a client (DependsOn, onnectsto) a pretty mechanical process 7

How is a Topology processed? Use base relationship types to derive component processing order First process a host, then process hosted component First process a component that another component depends on, then process the dependent component First process a component that another component connects to, then process the connecting component For each component Deploy its Deployment Artifacts Invoke lifecycle operations in right sequence (create, configure, start ); their can be no-ops If a relationship contributes logic, inject it into component operation invocations Web 4 Web 5 Web 3 Web 2 Web 1 relationship injects logic DB 4 DB 3 DB 2 DB 1 Web 1 create VM DB 1 create VM Web 2 Web 3 perform base OS config install and configure httpd run in parallel DB 2 DB 3 perform base OS config install and configure MySQL Web 4 install and configure php runtime DB 4 create and configure SugarM database Web 5 install and configure SugarM app, configure database endpoint properties wait for step DB 4 to complete 8

ompute Storage ompute Storage ompute Storage equirements & apabilities Some Application Database provider = MySQL version >= 5.5 Database Database Provider arch = x86_64 cpus = 2 mem >= 4GB OS = Linux Some Application size >= 10GB Database provider = MySQL version >= 5.5 equirements can be fulfilled explicitly by other components in the model arch = x86_64 cpus = 2 mem >= 4GB OS = Linux equirements can be fulfilled size by >= the 10GB runtime equirements/apabilities are base for substitutability Some omponent Provider A O Provider B O Provider 9

Model omposition Service Template 1 Node Template Service Template 2 Node Template boundary definitions Subsystems can be abstracted in some models. Other models can define details of subsystems. separation of concern, re-use 10

Usage Scenarios for Model omposition & Substitution Varying deployment options Layering of models WebApp ustom workload App DB Application Layer WebTier Multiple options of middleware deployments Tomcat MySQL Platform Layer Web Server VM Load Balancer VM Web Server VM 1..* Multiple options of infrastructure configurations VM Network VM Storage Infrastructure Layer Single node web tier Scalable web tier 11

About Encoding TOSA is XML The TOSA T decided to use XML and XML Schema as the normative way for defining the TOSA language. But: The important thing about TOSA are the concepts, not the encoding. Alternative encodings (e.g. JSON) can be defined as part of TOSA vnext work. 12

Alternative Encoding Example <NodeType name="server"> <PropertiesDefinition element="tbase:serverproperties"/> </NodeType> <xs:schema...> <xs:element name="serverproperties" type="tserverproperties"/> <xs:complextype name="tserverproperties"> <xs:sequence> <xs:element name="numpus" default="1"> <xs:simpletype> <xs:restriction base="xs:int"> <xs:enumeration value="1"/> <xs:enumeration value="2"/> <xs:enumeration value="4"/> </xs:restriction> </xs:simpletype> </xs:element> <xs:element name="memory" type="xs:int"/> </xs:sequence> </xs:complextype> </xs:schema> <TopologyTemplate> <NodeTemplate id= MyServer" type="tbase:server"> <Properties> <tbase:serverproperties> <Numpus>2</Numpus> <Memory>4096</Memory> </tbase:serverproperties> </Properties>... </NodeTemplate>... </TopologyTemplate> "NodeType" : { "name" : "Server", "properties" : [ { "name" : "Numppus", "type" : "integer", "options" : [1,2, 4] }, { "name" : "Memory", "type" : "integer", } ]... } "TopologyTemplate" : { "NodeTemplates" : [ { "id" : "MyServer", "type" : "Server", "properties" : [ "Numpus" : 2, "Memory" : 4096 ] },... ],... } 13

Now, how could it fit into Heat? It s all about concepts: as longs as a pattern engine s concepts and TOSA are aligned, mapping to TOSA as an external format is straight forward No need to use TOSA as Heat s core format Define a sub-set profile of TOSA that is appropriate for use cases targeted by Heat Define an alternative JSON rendering for TOSA sub-set profile Define a set of base Node- and elationship Types for core OpenStack resources: ompute (Nova), Network (Quantum), Block Storage (inder), Object Storage (Swift) As natively supported types Users do not have to care about defining TOSA types, but can just start defining templates Use implementation to improve and refine the TOSA standard; use standardized concepts to shape implementation 14

Learn more about TOSA TOSA Specification, Version 1.0 ommittee Specification 01, 18 March November 2013, http://docs.oasis-open.org/tosca/tosa/v1.0/cs01/tosa-v1.0-cs01.pdf TOSA Primer, Version 1.0 ommittee Note Draft (ND) 01, Public eview Draft 01, 31 January 2013, http://docs.oasis-open.org/tosca/tosca-primer/v1.0/cnd01/tosca-primer-v1.0-cnd01.pdf TOSA Implementer's ecommendations for Interoperable TOSA Implementations, Version 1.0 Interoperability Subcommittee, Working Draft 01, ev. 02, 14 January 2013, http://www.oasis-open.org/committees/document.php?document_id=47888&wg_abbrev=tosca-interop TOSA Interoperability Subcommittee, SugarM Scenario Sample SA Preliminary Draft SA for Interop. Testing against TOSA v1.0 Specification, http://www.oasis-open.org/committees/document.php?document_id=47585&wg_abbrev=tosca-interop 15