OOM(ONAP Operations Manager) needs to support configurable deployment options of ONAP, allow operators to choose and configure the deployment layout and choose technologies used for running ONAP. TOSCA allows modeling ONAP services, all of their components, and to model needed infrastructure components, such as Kuberetenes and OpenStack, and then to match the services with the desired infrastructure to run the ONAP services.
(Example ONAP Service Modeling With Kuberentes and OpenStack)
WHAT IS TOSCA
Topology and Orchestration Specification for Cloud Applications (TOSCA), is an OASIS standard language to describe a topology of cloud based web services, their components, relationships, and the processes that manage them. The TOSCA standard includes specifications to describe processes that create or modify services. TOSCA allows using a descriptive DSL to drive orchestration base the application declarative model.
WHAT IS Cloudfiy
Cloudify is an open source cloud orchestration framework. Cloudify is a model-driven orchestrator, it enables modeling applications and services using a TOSCA based DSL, and automates the applications' entire life cycle, including deployment on any cloud or data center environment, monitoring all aspects of a deployed application, detecting issues and failure, manually or automatically remediating such issues, and performing ongoing maintenance tasks.
WHAT IS Model-driven Orchestration
Model driven orchestration allows modeling of services and applications using a declarative and descriptive language, then to operate the application using the model. This includes deployment of the application, healing failures, scaling and others. Instead of executing manually crafted workflows, the orchestrator creates dynamic execution workflow graph, based on the application model. Each node of the graph triggers a corresponding lifecycle operation execution, while the orchestrator keeps track and stores state in a context object allowing passing information from one operation to another.
WHAT IS Kubernetes
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It aims to provide a "platform for automating deployment, scaling, and operations of application containers across clusters of hosts". It supports a range of container tools, including Docker.
ONAP Architecture with Kuberentes and OpenStack
TOSCA Base ONAP OOM Release 1 is deployed in Kubrentes PODs, that are run on OpenStack VM.
ONAP OOM TOSCA Models
TOSCA to model and orchestrate all ONAP services, in release 1 we lege, with all of their components, and then
ONAP Cloudfy TOSCA Blueprint
How To (Deploy ONAP on Kubernetes using Clouidfy )
create a deployment from the TOSCA template
Cloudify creates VMs on OpenStack (TOSCA blueprint).
Cloudify utilizes two TOSCA blueprints, the first creates the cloud resources and deploy K8s and the second is a TOSCA blueprint deployes the ONAP services (see figure below)
Cloudfiy Deploys Kuberenetes on OpenStack VMS (TOSCA blueprint)
Cloudfioy creates a POD (TOSCA blueprint)
Cloudify Deploys ONAP on POD (TOSCA blueprint)
OOM Cloudify Release 1 - Amsterdam
- Use TOSCA to provision OpenStack VMs
- Use TOSCA to deploy Kuberentes
- Use TOSCA to deploy ONAP services on Kubernetes
OOM Cloudify Roadmap
ONPA on any cloud
Onap on containers
ONAP on bare metal
User Inputs configuration
Selection of ONAP |services
Multi env of ONAP (Test,QA, Prod) with same blueprint and ONAP conf
Definitions of ONAP services dependencies
Configurable Hybrid deployment (some servcies on cloud, and others on bare-metal/or other clouds )
ONAP services placement