TOSCA Topology and Orchestration Specification for Cloud Applications

  • Slides: 34
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 in the NFV world OASIS TOSCA Presentation for the ETSI NFV Information Modeling Workshop Proposal for a way forward

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪ What is TOSCA? ▪ TOSCA Key Modeling Concepts ‒ Topology, Composition, Lifecycle (management), Portability ▪ Interesting Features ‒ Containers, Portability, Network modeling II. A Way Forward ▪ TOSCA Modeling Applied to NFV ‒ Topology & Composition Concepts applied to NFV (NSD, VNFFG, NFP) ▪ Open Source Implementations ‒ Openstack (Heat-Translator, Tacker, Senlin), alien 4 cloud, Cloudify, etc. ▪ Backup slides ‒ Layering, Lifecycle sequencing, Policy model 2

TOSCA Overview Key Modeling Concepts & Features 3

TOSCA Overview Key Modeling Concepts & Features 3

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪ What is TOSCA? ▪ TOSCA Key Modeling Concepts ‒ Topology, Composition, Lifecycle (management), Portability ▪ Interesting Features ‒ Containers, Portability, Network modeling II. A Way Forward ▪ TOSCA Modeling Applied to NFV ‒ Topology & Composition Concepts applied to NFV (NSD, VNFFG, NFP) ▪ Open Source Implementations ‒ Openstack (Heat-Translator, Tacker, Senlin), alien 4 cloud, Cloudify, etc. ▪ Backup slides ‒ Layering, Lifecycle sequencing, Policy model 4

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

What is TOSCA? TOSCA is an important new open cloud standard, that is enabling a unique ecosystem, supported by a large and growing number of international industry leaders… • • • TOSCA Version 1. 0 Specification approved as an OASIS Standard (published Nov 2013) Associated Companies TOSCA Simple Profile v 1. 0 Specification (YAML) final public review draft, Aug 2014) 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: – OSCON 2015, Open Data Center Alliance 2014, Euro. Cloud 2013 5

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪ What is TOSCA? ▪ TOSCA Key Modeling Concepts ‒ Topology, Composition, Lifecycle (management), Portability ▪ Interesting Features ‒ Containers, Portability, Network modeling II. A Way Forward ▪ TOSCA Modeling Applied to NFV ‒ Topology & Composition Concepts applied to NFV (NSD, VNFFG, NFP) ▪ Open Source Implementations ‒ Openstack (Heat-Translator, Tacker, Senlin), alien 4 cloud, Cloudify, etc. ▪ Backup slides ‒ Layering, Lifecycle sequencing, Policy model 6

Topology Primarily, TOSCA is mainly used to describe the topology of the deployment view

Topology Primarily, TOSCA is mainly used to describe the topology of the deployment view for cloud applications ü Defining Node templates to describe components in the topology structure ü Defining Relationship templates to describe connections, dependencies, deployment ordering TOSCA can be used to describe the topology of a Network service or VNF as defined by ETSI NFV. VNF, VL can be defined as node templates in TOSCA. A new virtual. Links. To relationship type can be defined to connect VNF and VL. 7

Composition Any node in a TOSCA topology can be an abstraction of another layer

Composition Any node in a TOSCA topology can be an abstraction of another layer or sub-topology NFV information model has such a layered structure: üNSDs are composed of VNFDs, VLDs, PNFDs, etc. NSD VNFD VLD ü VNFDs are composed of VDUs, VLDs, etc. VNFD VDU VLD VDU Using the TOSCA substitution feature, NFV information model can be described by using multiple TOSCA service templates 8

Lifecycle TOSCA models have a consistent view of state-based lifecycle have Operations (implementations) that

Lifecycle TOSCA models have a consistent view of state-based lifecycle have Operations (implementations) that can be sequenced against state of any dependent resources fits into any Management Framework or Access Control System Standardize Resource Lifecycle Standardize Relationship Lifecycle source_resource my_relationship target_resource my_resource_name Type_A Connects. To Type_B My_Resource_Type A Operations configure start stop delete Lifecycle. Configure pre_config_source pre_config_target Lifecycle. Standard create add_source add_target remove_source remove_target nfv_pre_configure start stop post_config_source post_config_target Operations ü ü Lifecycle. Configure. NFV B Lifecycle. Standard create Lifecycle Customization Operations ü ü nfv_pre_delete Create new NFV Lifecycles or Augment existing (via subclassing) Parameters and Policies can be supplied to operations to affect resource behavior (state) Workflow - TOSCA is developing workflow to allow handling complex state changes, configurations, etc. TOSCA Lifecycle can be customized for NFV Resources and Relationships 9

Portability TOSCA Portable Cloud Application By expressing application Requirements independently from cloud Capabilities and

Portability TOSCA Portable Cloud Application By expressing application Requirements independently from cloud Capabilities and implementation, TOSCA provides: TOSCA Service Template App DB Compute 1 Compute 2 Network Scaling Policy Storage ü Robust set of Normative Types for different domains (including NFV) ü NFV Profile and Types applied to TOSCA enable our Way Forward. ü Multi VIM Support TOSCA Orchestration ü Portability of services across clouds ü Declarative model spanning infrastructure and service ü Manipulate the orchestration declaratively instead of dealing with disparate cloud APIs (leave to the TOSCA Orchestrator) TOSCA enables NFV applications flexible movement between different cloud infrastructures. 10

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪ What is TOSCA? ▪ TOSCA Key Modeling Concepts ‒ Topology, Composition, Lifecycle (management), Portability ▪ Interesting Features ‒ Containers, Portability, Network modeling II. A Way Forward ▪ TOSCA Modeling Applied to NFV ‒ Topology & Composition Concepts applied to NFV (NSD, VNFFG, NFP) ▪ Open Source Implementations ‒ Openstack (Heat-Translator, Tacker, Senlin), alien 4 cloud, Cloudify, etc. ▪ Backup slides ‒ Layering, Lifecycle sequencing, Policy model 11

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

TOSCA Model for Containers leveraging Repositories Paa. S Modeling Container Application Modeling • Provider chooses to expose or hide underlying runtime topology & implementation • Agnostic of Paa. S Cloud Provider – Paa. S on Open. Stack, Cloud Foundry, Azure, etc. Paa. S Subsystem (hidden) docker_mysql Layer Separation my_Paa. S_platform Container. Runtime Capabilities Container Runtime. Docker Runtime. Nodejs . . . Hosted On Container. App. Docker artifacts: - my_docker_image: type: Image. Docker URI: mysql repository: docker Requirements Container Docker Hub (Repository) Docker image for mysql Runtime. Docker . . . Runtime. J 2 EE Paa. S Layer exposes “runtimes” as TOSCA Capabilities • Docker, Nodejs, JSP, J 2 EE, etc. 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 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 Port Capabilities Container . . . Binds. To Bindable Requirements Bindable Capabilities Linkable Binds. To • Connected via logical Ports nodes (via Links. To and Binds. To standard TOSCA relationship types) private_net_1 Links. To Capabilities Linkable port_2 Port Requirements Bindable • Application Model separate from Network Model Network Capabilities Linkable public_net_1 Links. To Layer separation allows developers to model JUST the application & bind later to existing tenant networks (Layer 4) Network Capabilities Linkable 13

TOSCA Direction to model Policies TOSCA defines policies using an Event-Condition-Action model ü Operational

TOSCA Direction to model Policies TOSCA defines policies using an Event-Condition-Action model ü Operational policy focus: 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 Lifecycle create configure . . . Container . . . 3 Policy • Type • Rule • Trigger web-app my_database Compute Policies modeled as Requirements using Capability Types that can be attached to 1. 2. 3. Interfaces for specific Operations Nodes and Groups of Nodes 14

How TOSCA Adds Value in the NFV world TOSCA End Part 1 TOSCA Overview

How TOSCA Adds Value in the NFV world TOSCA End Part 1 TOSCA Overview 15

TOSCA The Way forward TOSCA Concepts Applied to NFV 16

TOSCA The Way forward TOSCA Concepts Applied to NFV 16

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪ What is TOSCA? ▪ TOSCA Key Modeling Concepts ‒ Topology, Composition, Lifecycle (management), Portability ▪ Interesting Features ‒ Containers, Portability, Network modeling II. A Way Forward ▪ TOSCA Modeling Applied to NFV ‒ Topology & Composition Concepts applied to NFV (NSD, VNFFG, NFP) ▪ Open Source Implementations ‒ Openstack (Heat-Translator, Tacker, Senlin), alien 4 cloud, Cloudify, etc. ▪ Backup slides ‒ Layering, Lifecycle sequencing, Policy model 17

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪ What is TOSCA? ▪ TOSCA Key Modeling Concepts ‒ Topology, Composition, Lifecycle (management), Portability ▪ Interesting Features ‒ Containers, Portability, Network modeling II. A Way Forward ▪ TOSCA Modeling Applied to NFV ‒ Topology & Composition Concepts applied to NFV (NSD, VNFFG, NFP) ▪ Open Source Implementations ‒ Openstack (Heat-Translator, Tacker, Senlin), alien 4 cloud, Cloudify, etc. ▪ Backup slides ‒ Layering, Lifecycle sequencing, Policy model 18

Topology Primarily, TOSCA is mainly used to describe the topology of the deployment view

Topology Primarily, TOSCA is mainly used to describe the topology of the deployment view for cloud applications ü Defining Node templates to describe components in the topology structure ü Defining Relationship templates to describe connections, dependencies, deployment ordering TOSCA can be used to describe the topology of a Network service or VNF as defined by ETSI NFV. VNF, VL can be defined as node templates in TOSCA. A new virtual. Links. To relationship type can be defined to connect VNF and VL. 19

NSD example 20

NSD example 20

Composition Any node in a TOSCA topology can be an abstraction of another layer

Composition Any node in a TOSCA topology can be an abstraction of another layer or sub-topology NFV information model has such a layered structure: üNSDs are composed of VNFDs, VLDs, PNFDs, etc. NSD VNFD VLD ü VNFDs are composed of VDUs, VLDs, etc. VNFD VDU VLD VDU Using the TOSCA substitution feature, NFV information model can be described by using multiple TOSCA service templates 21

VNFD example 22

VNFD example 22

NFP Network forwarding path as defined by ETSI NFV is an order list of

NFP Network forwarding path as defined by ETSI NFV is an order list of connection points forming a chain of network functions (VNFs or PNFs). A new “Forwarder” requirement is defined in this specification to model the network forwarding path by using ordered list of multiple “Forwarder” requirements. Each “Forwarder” requirement points to a single connection point. 23

VNFFG Using TOSCA Group element to describe forwarding graphs Source: xxx 24

VNFFG Using TOSCA Group element to describe forwarding graphs Source: xxx 24

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪

Agenda - How TOSCA Adds Value in the NFV world I. TOSCA Overview ▪ What is TOSCA? ▪ TOSCA Key Modeling Concepts ‒ Topology, Composition, Lifecycle (management), Portability ▪ Interesting Features ‒ Containers, Portability, Network modeling II. A Way Forward ▪ TOSCA Modeling Applied to NFV ‒ Topology & Composition Concepts applied to NFV (NSD, VNFFG, NFP) ▪ Open Source Implementations ‒ Openstack (Heat-Translator, Tacker, Senlin), alien 4 cloud, Cloudify, etc. ▪ Backup slides ‒ Layering, Lifecycle sequencing, Policy model 25

TOSCA in Open Source Senlin Heat-Translator Tacker TOSCA Template Translation Clustering to other Domain

TOSCA in Open Source Senlin Heat-Translator Tacker TOSCA Template Translation Clustering to other Domain Specific Languages (DSLs) + Placement & Scaling Policies https: //wiki. openstack. org/wiki/Senlin https: //wiki. openstack. org/wiki/Heat -Translator NFV MANO https: //wiki. openstack. org/wiki/Tacker alien 4 cloud Service Orchestration & Management Topology, Type & LCM Design http: //getcloudify. org/ http: //alien 4 cloud. github. io/ Seaclouds CERN Indigo-Data. Cloud OPNFV Parser Open, Multi-Cloud Managemnt Data/computing platform targeted at scientific communities Deployment Template Translation www. seaclouds-project. eu/media. html http: //informationtechnology. web. cern. ch/about/projects/eu/indigodatacloud 26

Automated TOSCA-based Orchestration Now Part of Open. Stack Heat Translator project TOSCA Template TOSCA

Automated TOSCA-based Orchestration Now Part of Open. Stack Heat Translator project TOSCA Template TOSCA Types TOSCA Nodes Map Generate Validation Tests tosca-parser TOSCA heat-translator TOSCA-Parser and Heat-Translator are part of the Open. Stack Heat orchestration project • • Latest TOSCA features integrated: Networking, Block & Object Storage. . . Availability to use on command line & user input param support Heat Orchestration Template (HOT) Deploy Heat engine Orchestrate New features in Liberty release and plans for Mitaka • • • Tacker NFV MANO integration using TOSCA NFV Profile Murano (Application catalog integration) with Open. Stack client TOSCA parser available as independent Python library (pypi) TOSCA Policy schema and Group schema Plug-ins: HOT Generator now supports additional plug-ins to allow translation to other DSLs besides HOT, such as Kubernetes Open. Stack Services 27

Open. Source related to ETSI NFV and OASIS TOSCA OPNFV Parser Openstack Senlin Policy

Open. Source related to ETSI NFV and OASIS TOSCA OPNFV Parser Openstack Senlin Policy ETSI NFV Descriptor Data modeling OASIS TOSCA NSD VNFFGD ETSI NFV TOSCA parser NFVO / VNFM / Catalog reference Open. Stack Tacker Open. Stack Heat Translator heat-translator 28

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

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 You. Tube Channel, TOSCA Playlist • TOSCA Simple Profile in YAML v 1. 0 (latest committee approved draft) • TOSCA Simple Profile for NFV v 1. 0 (latest committee approved draft) • • – https: //www. youtube. com/user/OASISopen , 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 http: //docs. oasis-open. org/tosca-nfv/v 1. 0/csd 02/tosca-nfv-v 1. 0 -csd 02. pdf • Contact the Technical Committee Co-Chairs: • Today’s Presenters from the TOSCA TC: – – – Paul Lipton, paul. lipton@ca. com; Simon Moser, smoser@de. ibm. com Shitao Li, lishitao@huawei. com Matt Rutkowski, mrutkows@us. ibm. com Chris Lauwers, lauwers@ubicity. com Sridhar Ramaswamy , sramasw@Brocade. com Sivan Barzily, sivan@gigaspaces. com 29

How TOSCA Adds Value in the NFV world TOSCA End Part 2 A Way

How TOSCA Adds Value in the NFV world TOSCA End Part 2 A Way Forward 30

TOSCA Backup Slides 31

TOSCA Backup Slides 31

TOSCA Pattern Domains: Iaa. S, Paa. S, NFV, HW and more TOSCA’s Simple Profile

TOSCA Pattern Domains: Iaa. S, Paa. S, NFV, HW and more TOSCA’s Simple Profile Specification (YAML) Primary Goal was to ü Simplify Application-Centric modeling, but also supports modeling of ü Dev. Ops & Workflow: Groups, Policies, Repositories, Artifacts, Configurations Physical … Paa. S, Saa. S Patterns Cluster/Polic y (Senlin) NFV (Tacker) … Image (Glance) Metering (Ceilometer) Database (Trove) … Compute (Nova) Storage (Cinder, Swift) Network (Neutron) Containers & Domain Patterns App Container (Magnum) App Catalog (Murano) Identity (Keystone) Iaa. S Patterns Core Shared Software Apps / Services Logical § SW-Defined Systems and HW Patterns 32

TOSCA Orchestrators - Standardized Lifecycle Sequencing Source-Target Sequencing Lifecycle. Configure Lifecycle. Standard Deploy Sequencing

TOSCA Orchestrators - Standardized Lifecycle Sequencing Source-Target Sequencing Lifecycle. Configure Lifecycle. Standard Deploy Sequencing Undeploy Sequencing Combined Sequencing 33

TOSCA Policies Sample: Event-Condition-Action Condition Action TOSCA Policy Definition: <policy_name>: type: <policy_type_name> description: <policy_description>

TOSCA Policies Sample: Event-Condition-Action Condition Action TOSCA Policy Definition: <policy_name>: type: <policy_type_name> description: <policy_description> properties: <property_definitions> # allowed targets for policy association targets: [ <list_of_valid_target_resources > ] triggers: <trigger_symbolic_name_1 >: event: <event_type_name> Identifies: • the resource (Node) in the TOSCA model to monitor. • Optionally, identify a Capability of the identified node. • Describe the attribute (state) of the resource to evaluate (condition) # Identify node (resource) to monitor target_filter: node: <node_template_name > | <node_type> # (optional) reference to a related node # via a requirement: <requirement_name > # (optional) Capability within node to monitor capability: <capability_name> # Describes an attribute-relative test that # causes the trigger’s action to be invoked. condition: <constraint_clause > Describes: • An Operation (name) to invoke when the condition is met • within the declared Implementation • Optionally, pass in Input parameters to the operation along with any welldefined strategy values. action: # implementation-specific operation name <operation_name>: description: < optional description > inputs: < list_of_parameters > implementation: <script> | <service_name> . . . – Allows Triggers to be declared based upon an Event, Condition, Action model <trigger_symbolic_name_n >: 1. . N Triggers can be declared Event • Name of a normative TOSCA Event Type • That describes an event based upon a Resource “state” change. • Or a change in one or more of the resources attribute value. . 34