TOSCA Topology and Orchestration Specification for Cloud Applications

  • Slides: 21
Download presentation
TOSCA Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard How TOSCA Adds Value

TOSCA Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard How TOSCA Adds Value and Portability in a Container-Centric World

Agenda ▪ What and why TOSCA? • Definition • Addressing critical Cloud challenges for

Agenda ▪ What and why TOSCA? • Definition • Addressing critical Cloud challenges for different roles, e. g. , Cloud provider/platform, developer/modeler (Dev. Ops), etc. • TOSCA eco-system and status ▪ How: a use case driven technical walk-thru of TOSCA ▪ Q&A and open discussion 2 2

What is TOSCA? • TOSCA is an important new open cloud standard, that is

What is TOSCA? • TOSCA is an important new open cloud standard, that is enabling a unique eco-system, supported by a large and growing number of international industry leaders… TOSCA is a machine and human readable, domain specific language, that defines the interoperable description of applications; including their components, relationships, dependencies, requirements, and capabilities…. …thereby enabling portability and automated management across cloud providers regardless of underlying platform or infrastructure thus expanding customer choice, improving reliability, and reducing cost and time-to-value. 3

Containment The collective knowledge of application and infrastructure experts are captured as reusable TOSCA

Containment The collective knowledge of application and infrastructure experts are captured as reusable TOSCA models Web Server Tier TOSCA Application Model Database Server Tier Web Server DB Server Web App Database PHP Script Module Connectivity Containment and Connectivity concepts support Composition & Reuse These concepts lead to an application-centric, holistic, unified model • Reusable models extend investments by making it easy to compose more valuable and complex apps from existing apps • Models can be validated by automation to ensure app-aware, policy-aligned configuration, deployment and operational semantics 4

TOSCA enables an eco-system where service providers can Compete and Differentiate to add value

TOSCA enables an eco-system where service providers can Compete and Differentiate to add value to Your Applications TOSCA supports automated matching of application requirements to provider capabilities Cloud Provider B Best Fit Choice TOSCA App Choice of Provider that “best fits” your application Portable Cloud Provider A • TOSCA Apps can be designed to be portable to any cloud (including hybrid) that meets the application’s requirements Cloud Provider C • Avoid the “lowest-common denominator” approach… Each cloud provider competes by offering their “best fit” of unique capabilities, features, and services that match the application’s requirements 5

External Influences Business Conditions Strategic Requests TOSCA enables holistic application lifecycle automation while ensuring

External Influences Business Conditions Strategic Requests TOSCA enables holistic application lifecycle automation while ensuring integrity, security and compliance Architects Model services, policies & requirements TOSCA Template Cloud Provider A Operational Requests Hot Packs Operations Deploy, manage & monitor application lifecycle Development Teams Cloud Application Lifecycle with TOSCA Develop, unit test scripts, plans & artifacts for planned releases, patches, fixes Cloud Provider B Cloud Provider C Template QA Teams TOSCA Template TOSCA Build & Test releases, updates & configurations Template Infrastructure Changes TOSCA Templates Agnostic to Cloud Infrastructure Changes TOSCA templates communicate and drive app-centric Dev-Ops and continuous delivery 6

TOSCA reduces application complexity by expressing application requirements… TOSCA Portable Cloud Application TOSCA Service

TOSCA reduces application complexity by expressing application requirements… TOSCA Portable Cloud Application TOSCA Service Template Ap p DB Scaling Policy independently from cloud provider Capabilities… Comput e 2 Compute 1 Net wo rk Stor age Application Requirements Automatic Matching TOSCA Orchestration Infrastructure Capabilities X 86 VM 10 Gb Networ k Cloud Provider A X 86 VM HDD Power. VM X 86 VM HDD RDMA Networ k Cloud Provider B & Optimization Power. VM SSD KVM KVM Ring Networ k KVM Cloud Provider C Enabling TOSCA applications to be portable to different infrastructures 7

 • • TOSCA eco-system is rapidly growing with support from industry leaders …

• • TOSCA eco-system is rapidly growing with support from industry leaders … and open source partners TOSCA Version 1. 0 Specification approved as an OASIS Standard (Nov 2013) Associated Companies Government and Corporate Awareness: – OASIS: 600+ participant organizations. 5000+ participants spanning 65+ countries – TOSCA Committee: 170+ people 45+ companies/orgs – International Standards & Research: ETSI NFV liaison, EU FP 7, etc. • – Industry Analysts: Forrester names TOSCA as a top four cloud open standard (Mar 2014) Multi-company Interoperability Demonstrated: – Euro. Cloud 2013 (Oct 2013): IBM, SAP, Fujitsu, Huawei, HP, Vnomic, Zenoss and others • – Open Data Center Alliance: TOSCA Application Portability in the Enterprise Cloud Po. C (Jan 2014) Open Source Projects Open Source: – Open. Stack, Eclipse, getcloudify. org, celar 8

We Covered the What and Why… How: A Use Case Driven Technical Walk-Thru of

We Covered the What and Why… How: A Use Case Driven Technical Walk-Thru of TOSCA

TOSCA Abstraction describing Application, Container & Infrastructure Relationship Connects. To can be orchestrated in.

TOSCA Abstraction describing Application, Container & Infrastructure Relationship Connects. To can be orchestrated in. Node parallel Pay. Pal Sample App Node. js Database Tier Application Tier mongo_db paypal_pizzastore Web. Application Connects. To Requirements Endpoint. DB Container nodejs Web. Server Compute Node Mongo. DB Capabilities Endpoint. DB Hosted. On Capabilities Container Requirements Container app_server Database Requirements Container mongo_dbms DBMS Hosted. On Capabilities Container Requirements Container Hosted. On mongo_server Compute Hosted. On Capabilities Endpoint DB Node Mongo DBMS Capabilities Relationship Capabilities Requirements Container Hosted. On Container Endpoint DB Container Example: Java Web Application using Node. js and Mongo Database Enabled by: TOSCA Nodes, Relationships, Requirements, and Capabilities

TOSCA Model for a Complex Multi-Tier Cloud Service Database Tier mongo_db Database Application Tier

TOSCA Model for a Complex Multi-Tier Cloud Service Database Tier mongo_db Database Application Tier Logging/Monitoring Tier (ELK) paypal_pizza store Web. Application elasticsearch kibana Software. Component Capabilities log_endpoint Connects. To logstash_server app_server Compute Capabilities collectd Container Capabilities search_endpoint Connects. To Requirements search_endpoint Requirements Container DBMS mongo_server Connects. To Requirements search_endpoint Web. Server Artifacts • Create • Config • Start nodejs mongo_dbms logstash Hosted. On elasticsearch _server Container Hosted. On kibana_server Compute Capabilities Container Hosted. On Container rsyslog Example: Logging/Monitoring Service for the Webshop using Kibana 11

TOSCA Model for Block & Object Cloud Storage my_web_server_1 Compute Attributes • • private_address

TOSCA Model for Block & Object Cloud Storage my_web_server_1 Compute Attributes • • private_address public_address networks ports Capabilities Container Operating. System . . . Requirements Attachment storage_attach_1 Attaches. To Properties • location: /some_location Create new volume and attach to server_1 • my_web_server_1 (Compute) • storage_attach_1 (Attaches. To) • location: /some_location • my_storage (Block. Storage) my_storage Block. Storage Capabilities Attachment my_web_server_2 storage_attach_2 Compute Attributes • • private_address public_address networks ports Capabilities Container Operating. System . . . Requirements Attachment Attaches. To Properties • location: /another_location Properties • size • volume_id • snapshot_id Attach same volume to server_2 • my_web_server_2 (Compute) • storage_attach_2 (Attaches. To) • volume_id for my_storage • location: /another_location Scenario: different servers use the same storage at different mount points 12

TOSCA Model for Logical Public & Private Cloud Networks my_app_1 Compute Attributes • private_address

TOSCA Model for Logical Public & Private Cloud Networks my_app_1 Compute Attributes • private_address • public_address • networks • ports port_1 Capabilities Container . . . Port Binds. To Bindable • Connected via logical Ports nodes (via Links. To and Binds. To) Requirements Bindable Capabilities Linkable Links. To private_net_1 Network Capabilities Linkable port_2 Port • Application Model separate from Network Model Binds. To Requirements Bindable Capabilities Linkable Links. To public_net_1 Network Capabilities Linkable Allows developers to model JUST the application bind to existing tenant networks 13

TOSCA Model for Containers leveraging Repositories Paa. S Modeling Container Application Modeling • Template

TOSCA Model for Containers leveraging Repositories Paa. S Modeling Container Application Modeling • Template author chooses to expose or hide runtime topology & implementation • Agnostic of Paa. S Cloud Provider – Paa. S on Open. Stack, Cloud Foundry, Azure, etc. Paa. S Subsystem (hidden) docker_mysql my_Paa. S_platform Container. App. Docker Artifacts Container. Runtime - my_image: Capabilities Container Runtime. Docker Runtime. Nodejs . . . Runtime. J 2 EE Paa. S Layer exposes “runtimes” as TOSCA Capabilities • Docker, Nodejs, JSP, J 2 EE, etc. Hosted On type: Image. Docker URI: mysql repository: docker Requirements Container Docker Hub (Repository) Docker Image for mysql Runtime. Docker . . . Orchestrators could automatically retrieve and deploy a Docker image from a declared Repository • TOSCA Templates can model repositories • Orchestrators could dynamically “pull” from multiple repositories 14

TOSCA Direction to model Policies Supported areas: Placement (Affinity), Scaling and Performance ‒ with

TOSCA Direction to model Policies Supported areas: Placement (Affinity), Scaling and Performance ‒ with Rules that are evaluated to execute Automatic and Imperative Triggers 2 Policy • Type • Rule • Trigger 1 Policy • Type • Rule • Trigger my_app_1 my_scaling_group backend_app Compute Capabilities Container Lifecycle create configure . . . 3 Policy • Type • Rule • Trigger web-app Compute my_database Compute Policies modeled as Requirements using Capability Types that can be attached to ‒ Interfaces or specific Operations ‒ Nodes and ‒ Groups of Nodes 15

TOSCA Direction to model Network Functions Virtualization Planning work with Open. Stack Neutron related

TOSCA Direction to model Network Functions Virtualization Planning work with Open. Stack Neutron related Open. NFV projects • TOSCA liaising with ETSI NFV and Open. NFV standards work groups Support for NFV graph constructs: TOSCA Profile Drafts model SDN on Open. Stack – Network Service Descriptors (NSD) – Virtual Network Function Descriptors (VNFD) – Forwarding Graphs as sequences of Connection Points (CPs) 16

Automated TOSCA-based Orchestration Now Part of Open. Stack TOSCA Template TOSCA Types TOSCA Nodes

Automated TOSCA-based Orchestration Now Part of Open. Stack TOSCA Template TOSCA Types TOSCA Nodes Map Generate Validation Tests TOSCA Parser HOT Generator ● TOSCA-to-Heat-Translator now part of Open. Stack Heat o Latest TOSCA features integrated: Networking, Block & Object Storage. . . o Implemented TOSCA relationship templates, custom types HOT - Heat Orchestration Template Deploy Heat Orch o Availability to use on command line & user input param support ● Plans for next Open. Stack release (“Liberty”) include o Murano (Application catalog integration) with Open. Stack client Open. Stack Services o TOSCA parser available as independent Python library o TOSCA Policy schema and Group schema 17

TOSCA templates rendered in YAML • • Both TOSCA Templates and Heat HOT Templates

TOSCA templates rendered in YAML • • Both TOSCA Templates and Heat HOT Templates use YAML as DSL Human readable and crisp Popular in open source projects Easy to integrate TOSCA YAML HOT YAML 18

TOSCA Benefits Summary • Human readable and easy to integrate Domain Specific Language •

TOSCA Benefits Summary • Human readable and easy to integrate Domain Specific Language • An Open Standard that models the right application abstractions • Manipulate the orchestration declaratively instead of dealing with disparate cloud APIs (leave that to the TOSCA Orchestrator) • Covers the full complexity of applications • All levels and tiers: Application, Middleware, Container, Infrastructure • Group software components and attach TOSCA policies to convey important Qo. S & placement requirements • Aligns with future work on monitoring • Leverage pre-built TOSCA Templates, models, and definitions from distributed repositories • Portable automatic orchestration (works with Open. Stack now) 19

 • • TOSCA Resources – Learn More TOSCA Technical Committee Public Page (latest

• • TOSCA Resources – Learn More TOSCA Technical Committee Public Page (latest documents, updates, and more) – https: //www. oasis-open. org/committees/tc_home. php? wg_abbrev=tosca OASIS Channel (all standards) or TOSCA You. Tube Playlist • https: //www. youtube. com/user/OASISopen or http: //bit. ly/1 BQGGHm • http: //docs. oasis-open. org/tosca/TOSCA-Simple-Profile-YAML/v 1. 0/TOSCA-Simple-Profile. YAML-v 1. 0. pdf • TOSCA Simple Profile in YAML v 1. 0 (latest committee approved draft) • TOSCA Simple Profile for NFV v 1. 0 (latest committee approved draft) • • KB: Update PL: updated 7/7 – http: //docs. oasis-open. org/tosca-nfv/v 1. 0/csd 01/tosca-nfv-v 1. 0 -csd 01. pdf TOSCA v 1. 0 Specification (2013) – http: //docs. oasis-open. org/tosca/TOSCA/v 1. 0/TOSCA-v 1. 0. pdf TOSCA v 1. 0 Primer – http: //docs. oasis-open. org/tosca-primer/v 1. 0/tosca-primer-v 1. 0. pdf • Contact the Technical Committee Co-Chairs: – Paul Lipton, paul. lipton@ca. com – Simon Moser, smoser@de. ibm. com 20

TOSCA An Open Standard for Business Application Agility and Portability in the Cloud Q&A

TOSCA An Open Standard for Business Application Agility and Portability in the Cloud Q&A Start Blueprinting Your Cloud Apps in TOSCA now! 21 21