ONAP Micro-service Design Improvement. Manoj Nair, NetCracker Technologies

Similar documents
Service Orchestration- Need for Users

MSB to Support for Carrier Grade ONAP Microservice Architecture. Huabing Zhao, PTL of MSB Project, ZTE

Microservice Powered Orchestration

ONAP Integration Through Information and Data Modeling. ONAP Information Integration GOAL. 12 December 2017

OpenStack and OpenDaylight, the Evolving Relationship in Cloud Networking Charles Eckel, Open Source Developer Evangelist

Towards a Carrier Grade ONAP Platform Multi Cloud (MC) Architecture for R2+ & Alignment to S3P

BUILDING MICROSERVICES ON AZURE. ~ Vaibhav

Module Day Topic. 1 Definition of Cloud Computing and its Basics

ONAP container. For architecture subcommittee review November 14, 2017 Isaku Yamahata. Isaku Yamahata

MD-SAL APPLICATION AWARE DATA STORE (AADS)

External API - Casablanca Proposal - SDNC/DO/MEC Alignment

Beyond 1001 Dedicated Data Service Instances

Lessons Learned: Deploying Microservices Software Product in Customer Environments Mark Galpin, Solution Architect, JFrog, Inc.

Cloud & container monitoring , Lars Michelsen Check_MK Conference #4

How to Setup a Development Environment for ONAP

Introduction to OpenDaylight and Hydrogen, Learnings from the Year, and What s Next for OpenDaylight

Enabling Workloads Orchestration in Containers via MultiCloud

Towards a Carrier Grade ONAP Platform FCAPS Architectural Evolution

ServiceStage. User Guide. Issue 01 Date

Securing Microservice Interactions in Openstack and Kubernetes

Multi VIM/Cloud Evolvement for Carrier Grade Support

OpenDaylight as a Platform for Network Programmability FOSDEM, 3 February Charles Eckel, Cisco DevNet

Container in Production : Openshift 구축사례로 이해하는 PaaS. Jongjin Lim Specialist Solution Architect, AppDev

Container based network service/function deployment

Red Hat Atomic Details Dockah, Dockah, Dockah! Containerization as a shift of paradigm for the GNU/Linux OS

Software defined networking

TEN LAYERS OF CONTAINER SECURITY

Orchestration and Management for Edge Application with ONAP

Nevin Dong 董乃文 Principle Technical Evangelist Microsoft Cooperation

Microservices mit Java, Spring Boot & Spring Cloud. Eberhard Wolff

Open Cloud Engine - An Open Source Cloud Native Transformer

Development and Operations: Continuous Delivery in Practice

Red Hat Roadmap for Containers and DevOps

OpenADN: Service Chaining of Globally Distributed VNFs

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

Zero to Microservices in 5 minutes using Docker Containers. Mathew Lodge Weaveworks

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

Microservice Bus Tutorial. Huabing Zhao, PTL of MSB Project, ZTE

OpenECOMP SDC Developer Guide

Integrating External Controllers with ONAP. AT&T Labs

EASILY DEPLOY AND SCALE KUBERNETES WITH RANCHER

Microservices Beyond the Hype. SATURN San Diego May 3, 2016 Paulo Merson

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

WHITE PAPER. RedHat OpenShift Container Platform. Benefits: Abstract. 1.1 Introduction

Protecting Keys/Secrets in Network Automation Solutions. Dhananjay Pavgi, Tech Mahindra Ltd Srinivasa Addepalli, Intel

IBM Bluemix platform as a service (PaaS)

PNF and Hybrid Services Support in ONAP

VMWARE PIVOTAL CONTAINER SERVICE

Container-Native Storage

OpenDaylight: Introduction, Lithium and Beyond Colin Dixon

ONOS YANG Tools. Thomas Vachuska Open Networking Foundation

IBM Bluemix compute capabilities IBM Corporation

ONOS Roadmap. September, 2017

Hi! NET Developer Group Braunschweig!

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Software Architecture Review

Amir Zipory Senior Solutions Architect, Redhat Israel, Greece & Cyprus

Docker and Oracle Everything You Wanted To Know

Qualys Cloud Platform

Building Kubernetes cloud: real world deployment examples, challenges and approaches. Alena Prokharchyk, Rancher Labs

Go Faster: Containers, Platforms and the Path to Better Software Development (Including Live Demo)

Contrail Networking: Evolve your cloud with Containers

ONAP Security using trusted solutions. Intel & Tech Mahindra

OpenDaylight. Current and Future Use Cases. Abhijit Kumbhare OpenDaylight Technical Steering Committee (TSC) Chair

How to Keep UP Through Digital Transformation with Next-Generation App Development

StreamSets Control Hub Installation Guide

Opendaylight: Enabling 5G through Cloud Native Telco Architecture Edgar Lombara Lumina Networks Inc.

Red Hat Cloud Suite 1.1

2015 Spring Technical Forum Proceedings

Carrier SDN for Multilayer Control

Running MarkLogic in Containers (Both Docker and Kubernetes)

Cloud Scale IoT Messaging

Open SDN Controller Applications

Cloud-Native Applications. Copyright 2017 Pivotal Software, Inc. All rights Reserved. Version 1.0

Application Centric Microservices Ken Owens, CTO Cisco Intercloud Services. Redhat Summit 2015

Open Cloud Engine - An Open Source Cloud Native Platform

Industry-leading Application PaaS Platform

vrealize Automation Management Pack 2.0 Guide

IBM Planning Analytics Workspace Local Distributed Soufiane Azizi. IBM Planning Analytics

Transform to Your Cloud

Service Mesh and Microservices Networking

Performance Monitoring and Management of Microservices on Docker Ecosystem

TOSCA Templates for NFV and network topology description

Cisco Enterprise Cloud Suite Overview Cisco and/or its affiliates. All rights reserved.

OpenDaylight OpenStack Integration.

CONTAINERS AND MICROSERVICES WITH CONTRAIL

Building Open Source-Based Cloud Solutions with OpenDaylight. Colin Dixon, Brocade/OpenDaylight Lisa Caywood, OpenDaylight

Microservices What, Why? ( 마이크로서비스를꼭써야하나 )

Platform Architecture Overview

Exam C Foundations of IBM Cloud Reference Architecture V5

Authentication and Authorization of End User in Microservice Architecture

JN0-210.juniper. Number: JN0-210 Passing Score: 800 Time Limit: 120 min.

Top five Docker performance tips

Microservices. Chaos Kontrolle mit Kubernetes. Robert Kubis - Developer Advocate,

Containerization Dockers / Mesospere. Arno Keller HPE

Agile CI/CD with Jenkins and/at ZeroStack. Kiran Bondalapati CTO, Co-Founder & Jenkins Admin ZeroStack, Inc. (

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

SCALE AND SECURE MOBILE / IOT MQTT TRAFFIC

Powerful Insights with Every Click. FixStream. Agentless Infrastructure Auto-Discovery for Modern IT Operations

IBM. IBM WebSphere Application Server Migration Toolkit. WebSphere Application Server. Version 9.0 Release

Transcription:

ONAP Micro-service Design Improvement Manoj Nair, NetCracker Technologies

Micro Service Definition Micro service architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies. -- James Lewis and Martin Fowler(link)

Problem Statement 1. Micro Service Meta Model : Majority of micro services in ONAP are created around functional boundaries without any well-set guideline - Here guideline means the expression of structure and artifacts micro services use in ONAP to ease development, integration and deployment like capability/endpoint registration, deployment configuration, dependencies, resources requirements, non-functional characteristics etc. 2. Micro Service Boundaries : Boundaries of micro services based on high cohesion, low coupling principle 3. Micro-Service Shared Concerns: How cross-cutting concerns of micro services are handled - Such as external dependency configurations like IP address, URL, Authentication tokens etc, Logging, Health Check, Monitoring metrics, Tracing, data persistence, distributed messaging etc.

Deployment Framework (e.g. OOM) 1. Micro Service Meta Model Defines the key characteristics of a micro service - Which can be used at development time tools for development of micro service structure - Which can be used at run time to discover the dependencies, capabilities Development time tools such as Xtend, Maven Archetypes etc. and DM Languages like EMF,TOSCA, YANG (or general purpose languages like XML,YAML): To be developed - To generate structure of micro service - Docker file for deploying micro service - Registration configuration for registering with DMaaP (for topics), MSB (for end points) - Kubernetes deployment artifacts Meta data placed in the deployment package of micro service is used by the deployment/runtime frameworks : Partially available - To deploy the micro service based on the deployment artifact - To allocate resources based on the micro service requirements - Resolve dependencies - Register micro service capabilities and end points - Register with DMaaP Topics Key Message : Consistency in Micro Service Configuration Modeling Micro Service Meta-model Development Time Tools (for example Xtend or TOSCA Parser) Skeleton creation MS package with embedded meta data

2. Micro Service Boundaries Boundary of a micro service is a subjective decision and varies In ONAP Micro Services are created based on functional boundaries for e.g. SDC is built with 4 different micro service each focusing on a specific functional capability with tight dependency between each other Too much logic is built into BE Titan Graph, SDC Processing, Catalog Management etc. Models, Design, Catalog, Onboarding/Distribution, Health Check (Cassandra connection) Functionalities are built into same micro service (BE) forming a monolith Typical models for fixing micro service boundaries Moving parts that change frequently (e.g. SDC Model, Policy Configuration, Thresholds in DCAE/Clamp) Technology specific Polyglots (e.g. VFC) Functions/Features with similar non-functional requirements (e.g Caches, Graph, States) Transactions across micro services and consistency requirement (e.g. A&AI updates and SDC Catalog updates) Security based isolation requirements (e.g. customer, service, resource and topology information stored together in A&AI ) Key Message : Re-Structure Micro Services based on S3P and Business Context Example SDC Micro service View

3. Micro Services Shared Concerns ONAP Common Services layer consists of services that are shared across micro services like Logging, AAF, DMaaP, MSB etc. which are set of micro services in itself. Shared concerns can further extended to be a platform layer for micro services. Platform layer for micro services can host set of common needs of micro services which can be technology specific or neutral. In addition to the container orchestration/scheduling and health check/monitoring, it will be convenient to use a shared platform layer so that - Distributed concerns of micro services are hidden in the platform layer which gives location transparency - Can centrally control the S3P aspect of micro services rather than each micro service handling it independently - Work transparently across container orchestration technologies like Swarm, Kubernetes or VM Orchestration Technologies like open stack - Isolate micro services from infrastructure layer intricacies Note : Platform layer may have implication on the deployment model ( Greenfield or Brownfield) in customer premise where in ONAP need to interwork with existing micro services. Also platform layer make sense if there are many micro services that need to be managed µ µ µ µ µ µ µ µ µ µ µ Rackspace µ µ µ µ ONAP 1 ONAP 2 ONAP 3 Platform Layer Openstack Other Private Cloud Key Message : Portability of micro services and MS focus on core domain (can we use a PaaS)

Learning from Opendaylight 1/2 Abstraction Layer SB Protocol Libs API Verifier Plugin Notifier Plugin Plugin NE API Config NE Applications Network Model REST /NETCONF Network NE System Flows RIB Stats Table Flow Flow OF-Config Libs Table Flow Table OF x.y Libs NE Network Elements REST API Tunnels PCEP Libs Paths Reference: Opendaylight MD-SAL Architecture ALTO Nodes Topology Links BGP-LS Libs Projects developed as multiple micro services register with MD-SAL platform about capabilities, interfaces, entities etc. Each project is modelled using YANG and compiled to create skeleton code OpenDaylight MD-SAL Platform logic enabling the Development and Run time Framework MD-SAL takes care of data storage, cluster data consistency, sharding, interaction between micro services, set of tools for project skeleton

Learning from Opendaylight 2/2 Model Driven Service Abstraction Layer (MD-SAL) is base framework used in Opendaylight SAL is modeled by YANG SAL supports two formats of code generation based on YANG Models - Binding-independent format: Data and functions calls independent of generated Java language bindings Data and functions calls expressed in neutral DOM-like model Typically used in framework tools, South bound plugins - Programmatic (Binding-aware) format: APIs generated from YANG models APIs represented in Java as generated classes Typically used for developing applications or services SAL has built in brokers to read/write data from data store, invoke rpc calls, publish/subscribe notifications. SAL also contains a Configuration Sub system for micro services to register and search capabilities, apply initial configuration.

Our Proposal Bring in consistency in expressing micro service configuration while allowing freedom of choice. Several reference implementation exists for example yang based model for ODL, Xtend, TOSCA etc. Be more prudent in defining micro service boundaries so that refactoring of code becomes easy for meeting S3P and carrier grade performance Enable portability of micro services by separating out the infrastructure requirements and configurations from core MS logic through development of a platform layer) PaaS Solutions as one option

s Thank You