Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard
TOSCA Interoperability Demonstration
Join the TOSCA Technical Committeewww.oasis-open.org, [email protected]
Participating Companies:
Complete cloud application modeling and orchestrationTOSCA
Contributing Members
provides the Interoperable Description of:Applications, their component Services and Artifacts
Platform and Infrastructure services,
Relationships between these services, and the
Management and Operational behavior of these services
facilitates higher levels of Solution Portability:Portable deployment to any cloud that can orchestrate TOSCA service templates
Simplify Migration of existing customer apps. to cloud
Dynamic, Flexible Scaling and bursting of multi-cloud applications
Enables Software Defined Environments (SDEs) Template contents provide the means to optimize the underlying cloud infrastructure
Enable portability and semi-automatic management of cloud applications across clouds regardless of provider platform or infrastructure thus expanding customer choice, improving reliability, and reducing cost and time-to-value.
The TOSCA standard…
Business Value
Open Ecosystem for Cloud Services• Vendor-independent definitions of complex Cloud services
provide new marketing channel for solutions in the Cloud• Decoupling of Cloud infrastructure and Cloud content helps
focus on key aspects: Cloud Provider or Cloud Service Provider• Ability to deploy services in any standards-compliant
environment avoids vendor lock-in and eases migration
Interoperability and Composition• Goes beyond VMs in describing the cloud application‘s
components and their dependencies• Composition of services defined independently by their
domain experts into a higher-value service• Key enabler for open hybrid Clouds
Easy Adoption of new Cloud Services• Model-driven creation of Cloud Services• Standardized deployment into various kinds of
environments – from test to production, from cloud A to cloud B
• Process-driven Cloud Service Lifecycle Management
3
Cloud ACloud C
Cloud B
TOSCA
• Architects and Developers can choose from many open source and commercial tools to create, compose, update and manage TOSCA Cloud Applications.
Reusable, Composable TOSCA Service Templates
• Companies & Software Providers can share TOSCA service templates which have encapsulated their expert knowledge using “marketplaces” for others to reuse and extend.
Wide Range of Open Source& Commercial Tooling
Orchestration of TOSCA Apps in any TOSCA enabled cloud
• Customers can seamless deploy, run and manage any TOSCA applications in any TOSCA enabled cloud.
Application Modeling & Management Tools
TOSCA Conceptual Open Ecosystem
Cloud Providers
Cloud ACloud C
Cloud B
Service TemplateMarketplaces
Cloud Customers
Enabling choice for cloud customers…
Interoperability Demonstration Overview
Demonstrating: different cloud orchestration tools from different vendors all interpreting and seamlessly running the same TOSCA service templates in the same way.
Benefits: Using TOSCA service templates, enterprise customers can easily move their applications from one cloud to another and orchestrate them using the expert knowledge the application developers have built into them.
SuiteFlexFrame Orchestrator
TOSCACloud Application
Marketplaces
Cloud Management andAutomation
SmartCloud andWorkload Deployer
Cloud Monitoring
Telco Cloud Solution
Application Modeling & Management Tools
Specific Demonstration Elements
Cloud Providers
Service TemplateMarketplaces
Cloud Customers
FlexFrame Orchestrator Cloud Management andAutomation
SmartCloudAnd Workload
DeployerTelco Cloud Solution
Suite
Composing a TOSCA Service Template for a “SugarCRM” Application
7
using Vnomic’s Service Designer, www.vnomic.com
The SugarCRM application include 2 “Tiers”:• Web Application Tier (Linux, Apache, PHP, SugarCRM)• Database Tier (Linux, MySQL)
for this demo, we choose to publish the “SugarCRM” Cloud Application to IBM’s Integrated Service Mgmt. (ISM) Cloud Marketplace
which encapsulates the Application Architect’s “Expert Knowledge”
8
The Cloud Application is made “Portable” and packagedusing TOSCA’s Cloud Service Archive (CSAR) format
Showing “SugarCRM” as a newly published service by Vnomic into IBM’s “Cloud Marketplace”
Demonstrating the vision of an “Open Ecosystem” of cloud services based upon TOSCA standardized service templates
TOSCA service templates could be published and shared on both public and private marketplaces
9
The “SugarCRM” Application’s Topology Template Viewed in IWD
10
… developers can choose to edit the components’ properties or simply use the defaults settings packaged in the CSAR file prior to deployment
Web Server Tier (left), Database Tier (right)
The “SugarCRM” TOSCA Application is Fully Deployed and Running using IBM SmartCloud Foundation Services
11
… we can see that both the Web Server and Database Tiers are running and assigned Public IP Addresses
Demo: deployment of SugarCRM to a private cloud based on a TOSCA Service Template
“The Fujitsu FlexFrame Orchestrator provides a comprehensive cloud framework to orchestrate and manage key applications like ERP, CRM and BI. By adopting TOSCA in FlexFrame Orchestrator we can now achieve cross-cloud interoperability and portability up to the application level. This is a great opportunity for Fujitsu to meet the customer challenge of using and combining cloud services from different clouds of different vendors.”
Jens-Peter Seick, SVP Product Development, Fujitsu Technology Solutions
Show a FUJITSU prototype of a TOSCA-compliant orchestrator that automatically:
• interprets a TOSCA Service Template for SugarCRM applications,• orchestrates the environment for a SugarCRM application instance and• deploys it into a private Cloud using
FUJITSU FlexFrame Orchestrator
Login to “SugarCRM” application running on an IBM Cloud
13
… using the IP Address allocated by IBM’s Cloud for the Apache Web Server which was part of the Web Server Tier of the TOSCA “SugarCRM” application
Demonstrating Seamless TOSCA “Run-time” Portability
TOSCA Resources - Learn More & Participate!
TOSCA Technical Committee – Public Website https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=tosca
TOSCA Specification, Version 1.0, Committee Spec. 01, March 18, 2013 http://docs.oasis-open.org/tosca/TOSCA/v1.0/cs01/TOSCA-v1.0-cs01.pdf
TOSCA Primer, Version 1.0 , Committee Note Draft 01, 31 January 31, 2013 http://docs.oasis-open.org/tosca/tosca-primer/v1.0/cnd01/tosca-primer-v1.0-cnd01.pdf
TOSCA Implementer's Recommendations for Interoperable TOSCA Implementations, Version 1.0, Working Draft 01, Revision 5, May 20, 2013 http://www.oasis-open.org/committees/download.php/49245/tosca-implement-v1.0-wd01-rev05.docx
TOSCA Interop. Demo, SugarCRM Scenario Sample CSAR, August, 2013 https://www.oasis-open.org/committees/download.php/50158/SugarCRM-Interop-20130803.zip
More on TOSCA Modeling…
Modeling Topologies with TOSCAService Topologies are described using the TOSCA “Meta-model”:
Artifacts Describe Installables and Executables required to
instantiate and manage a service. Currently, they include:
Implementation Artifacts: – Executables or Plans that implement a Node’s or
Relationship’s Operations (e.g. a Bash script) Deployment Artifacts:
– Installables of the components (e.g. a TAR file)
A service’s Topology Model is included in a TOSCA Service Template which is packaged and shared, along with all dependent artifacts, as a TOSCA Cloud Service Archive (CSAR)
Service Templates Group the nodes and relationships that make up a
service’s topology – Allowing modeling of sub-topologies
Service Templates “look like nodes” enabling: Composition of applications from one or more
service templates Substitution of abstract Node types with available
service templates of the same type
Nodes Represent Components of an application or service and
their Properties. Example nodes include:– Infrastructure: Compute, Network, Storage, etc.– Platform: OS, VM, DB, Web Server, etc.– Granular: functional Libraries, Modules, etc.
Include Operations which are the management functions for the node– e.g. deploy(), start(), stop(), connect(), etc.
Export their dependencies on other nodes as Requirement and Capabilities
Relationships Represent the logical Relationships between nodes
– e.g. “hostedOn”, “connectsTo”, etc. Describes the valid Source and Target nodes they are
designed to couple– e.g. source “web application” node is designed to
“connectTo” a target “database” nodeHave their own Properties and Constraints
Software Defined Environments
PaaS Layer
computeCompute1,single
Compute2,scalable
Network2Network1 Storage
app db
InfrastructurePatterns
TOSCA service templates can model any cloud application or infrastructure pattern
TOSCA
• Generalized, Normative
Types• OpenStack is
one example
• Derived, Custom
Types
IaaS Layer
Application Patterns
• on either PaaS, IaaS platforms
compute
network storage
OptimizedWorkloads
Platform and InfrastructureResources
Value: enables rapid and continuous delivery of diverse set of workloads with agility and optimization on programmable heterogeneous infrastructure leveraging reusable building blocks
Service Oriented Applications
Service Templates
Composition Layer
App. Resource Relationships
Hardware
Business Application Layer
Go beyond simple deployment; services can provide instructions for any lifecycle operations enabling precise orchestration and control of application management tasks.
TOSCA Service Templates support …
Supports the ability to substitute logical parts of applications through composable service templates providing choice in both service vendor and implementation.
Service Composability
Allow developers to describe the topology of their applications and encapsulate their expert knowledge, including service configurations, policies and dependencies.
Complete Topology Modeling
Full Lifecycle Orchestration
Primer Scenarios: Developing a “Single-Tier MySQL Database”
DBTier
Tier
MySqlVM
Server
MySQL
DBMS
MySQLDatabase
Database
hostedOn
hostedOn
hostedOn
hostedOn
MySqlLinuxOS
OperatingSystem
Nodes can “Host” or contain other Nodes of specified types
Nodes can export the types of nodes they are “capable” of hosting,
These are matched to other nodes that export their specific host container “requirements”
In this example:
A MySQL Database node is “hostedOn” a “MySQL Database Management System (DMBS) node
The MySQL DBMS node, in turn, is “hostedOn” a “LinuxOS”, and so on…
Containment
Component “Containment” Relationship Type
“Tier” is a topological concept used to describe sets of nodes (or sub-topologies) that can be deployed and managed as a single group
DBTier Service Template
DBTier
Tier
MySqlVM
Server
MySQL
DBMS
SugarCRMDatabase
Database
MySqlLinuxOS
OperatingSystem
Primer Scenarios: “Two-Tier SugarCRM Web Application”
WebTier
Tier
hostedOn
ApacheVM
Server
Apache
WebServer
PHPModuleApacheModule
SugarCRMApp
WebApplication
hostedOn
hostedOn
DependsOn
Conn
ects
To
host
edO
n
ApacheLinuxOS
Operating System
hostedOn
Nodes can “Connect” to other specified node types
Nodes export the types of nodes they require “require” connectivity to,
These are matched to nodes that export they are “capable” of accepting specific connections
In this example:
The SugarCRM Application node “connectsTo” a database node in another “tier”
The “DB Tier” components are packaged into a separate service template permitting Substitution
Connectivity
Components grouped into composable service templates.
Network “Connectivity” Relationship Type
WebTier Service Template
DBTier Service Template
WebTier
ScalableTier
ApacheVM
Server
Apache
WebServer
SugarCRMApp
WebApplication
DBTier
Tier
MySqlVM
Server
MySQL
DBMS
SugarCRMDatabase
Database
ApacheLinuxOS
Operating System
MySqlLinuxOS
OperatingSystem
Advanced Scenarios: “Scalable SugarCRM Web Application”
ApacheLB
LoadBalancer“Tier” Node Types convey scalability
The “Web Application Tier” is declared Scalable with upper bounds “n” instances Note: the “Database Tier” remains a
single instance
A Load Balancer node is added to the previous template to route requests among “Web Application Tier” instances
Both tiers are packaged into their own service templates permitting Substitution
1..n 1
The range of instances would be a property of the “Tier” Node Type
Components grouped into composable service templates.
Scalability
Overview – “Public TOSCA Interop. Demo”
IBM WorkloadDeployer (IWD) +IBM SmartCloud
HuaweiCloud
FujitsuFlexFrame
1
2
3
4 4 4 4
Vnomic’s Service Designer Tool• Models the TOSCA Interop. Demo App: • 2-Tier SugarCRM App, MySQL Database
1
2 Export of SugarCRM Application as TOSCA CSAR file• Format: Cloud Service Archive (CSAR) file• Export to a Cloud Marketplace or “AppStore” of
TOSCA Modeled Applications and Services
3 TOSCA “Cloud Marketplace”• Customers can rapidly discover and implement
cloud solutions from TOSCA Service Templates
4 Download / Import of SugarCRM to choice of:• Runtime Interop. - TOSCA-enabled clouds for
seamless deployment <or>• Tooling Interop. - TOSCA-enabled tools that can
alter TOSCA Service Template models
Service Designer
Cloud Marketplace
Note: Companies can choose to work with SAP (in advance) to demonstrate a SAP CRM model for private interop. events.
5 View SugarCRM in Cloud of Choice• Companies provide 3 minute video of SugarCRM
in their tools or deployed to clouds• Companies can opt to show more if they desire
and if asked to by press or analysts.
Temporary