1 of 20

EMCO LF Networking

Induction Proposal

September 2021

2 of 20

EMCO Mission

The mission of the Project is to create a universal control plane that helps organizations to securely connect and deploy workloads across public clouds, private clouds and edge locations, with end-to-end inter-application communication enabled.

3 of 20

EMCO Background

Incubated as a subproject, ONAP4k8S, under ONAP since 2019

  • Garnered following of several companies in ONAP

Moved under the Intel OpenNESS umbrella/repo in late 2020

  • Renamed EMCO, source drops provided back to ONAP users

ONAP community formally requested that EMCO return to open governance March 2021- LF Leadership suggested LFN.

  • OPS-5G program also identified EMCO as key, requested same

Intel approved move back to LF May 2021; formation commenced July ‘21

4 of 20

LFN Induction Request & Next Step

Pursuant to LFN Project Lifecycle process, EMCO has met the mandatory criteria for LFN Entry and formally requests entry under the LFN umbrella as a Sandbox project.

Project Roles

How people come to fill project roles.

How people are removed from project roles. (WIP)

Who currently fills project roles.

How disputes are definitively resolved (majority vote).

How governance evolves over time. (WIP)

Top-level technical decision-making body for the project and TAC representative.

Next Step:

  • Governing Board review /Oct 2021

5 of 20

EMCO – Project Vitals

  • Project name: EMCO
  • Project creation date: July 20 , 2021 (Formation KickOff)
  • Project license: Apache 2.0
  • Multiple company plans to contribute to code base
    • Intel, Aarna, Cango, Verizon, Tech Mahindra
  • Release Plan:
    • Seed code dropped Sept 20, 2021 (pending)
    • Release Schedule:
      • Releases Planned for Sept (seed code) and Dec 2021

More detail on Roadmap slide below

6 of 20

Participating Companies

Mailing List Participation (in addition to TSC above):

Orange

TSC Make Up to Date (in no particular order):

7 of 20

Project & Community Health

  • Technical Charter: Sept 02, 2021
  • TSC established August 24, 2021 (11 Representatives)
  • Seed code dropped September 21, 2021
  • Website: https://emco-project.io (under development)
  • Wiki: https://wiki.lfnetworking.org/display/EMCO/Welcome+to+the+EMCO+Wiki
  • Mailing list: https://lists.project-emco.io/g/main
  • Community size: 36 members (based on mailing list)
  • 12 companies/entities represented in total
  • >200 commits by 10+ contributors from Intel, Aarna Networks in 6 months prior to seed code drop
  • Active, ongoing assessments with at least 4 ONAP member companies

8 of 20

EMCO – Project Governance

  • Project Governance Wiki

  • TSC is established per:
    • The Technical Steering Committee (the “TSC”) is responsible for all technical oversight of the open source Project.
    • The TSC voting members will be composed of technical representatives, appointed by participating companies. Participating companies may appoint one voting member to the TSC (each a “TSC Member”). Each participating company may also designate one alternate to act in place of each participating company’s primary TSC Member in the event that the primary TSC Member is unavailable.
    • After a period to be determined, the TSC membership will be determined by the TSC Election Process, to be defined by TSC.
    • The TSC may elect a TSC Chair through open nomination and voting process.
  • Other project roles will be established and filled through an open nomination and voting process- Notably, TAC and MAC reps, if/when the Project is eligible, will be established

9 of 20

Overview: Traditional Cloud Native frameworks For Enterprise Apps

Linux

K8s

Linux

K8s

Public Cloud K8s Cluster

VMs

Private Cloud K8s cluster

Apps

Apps

Traditional:

  • Number of K8s clusters are small
  • K8s Cluster installation/upgrades are mostly done independently in each location.
  • Deployment of applications on K8s clusters is also done independently.

  • K8s clusters are used for normal applications
  • Network and security functions are deployed outside of K8s clusters as physical appliances or virtual appliances, typically supplied by providers.

FW

SLB

IDS

Provider supplied

FW

SLB

IDS

Provider supplied

Internet

EGDE MULTI-CLUSTER OCHESTRATOR | EMCO

10 of 20

Overarching Problem Statement

  • A need for deploying applications in multiple geographical locations, w/ varying needs for latency, local context restrictions, cost structures etc.

  • A need for life cycle management of composite applications, across multiple, distributed k8s clusters (Edges<>Clouds), is complex and painstaking if not simplified and automated
    • Instantiation, termination, monitoring, upgrading, managing security etc.
    • Particularly when the # of applications and clusters can number in the 100’s, or 1000’s

To reduce the complexity, all these operations are to be automated.

    • There is a requirement for one-click deployment of the complex applications across multiple geo-distributed clusters
    • One simple dashboard to know the status of the complex application deployment at any time
    • Hence, there is a need for Multi-Edge and Multi-Cloud distributed application orchestrator.

There are many proprietary, vendor driven solutions, but few independant, open source community-driven solutions

EMCO is intended to develop such an open, collaborative solution

10

EGDE MULTI-CLUSTER OCHESTRATOR | EMCO

11 of 20

High Level EMCO Block level Architecture

11

Software Platforms

Enterprise Edges

Edge Clouds

Telco CO

Edges

Pub/Pvt

Clouds

Network

Edges

Distributed Application scheduler

Hardware Platform

Aware Controller

Distributed Cloud Manager

Cluster Registration Controller

Secure Mesh Controller

Secure WAN Controller

Monitoring

EMCO - GUI subproject

EMCO - Base

  • Cluster Registration Controller registers clusters by cluster owners
  • Distributed Application Scheduler provides simplified, and extensible placement
  • Hardware Platform Aware Controller enables scheduling with auto-discovery of platform features/ capabilities
  • Distributed Cloud Manager presents a single logical cloud from multiple edges
  • Secure Mesh Controller auto-configures both service mesh (ISTIO) and security policy (NAT, firewall)
  • Secure WAN Controller automates secure overlays across edge groups
  • Monitoring covers distributed application performance, and accesses

EGDE MULTI-CLUSTER OCHESTRATOR | EMCO

12 of 20

EMCO Microservice Architecture

Few EMCO Micro-Services

Distributed Cloud Management Micro-service

Cluster References

User Permissions

Cluster Network Configuration Management

Micro-service

Cluster Provider Management

Cluster Management

Cluster Notifier

Network Plugin Controller

Ex. Placement Controller

Resource Synchronizer & Status Collector

Micro-service

Distributed Application Scheduler Micro-service

Projects Mgmt

Composite App Mgmt

Scheduler

Composite Profile Mgmt

Deployment Intent Group Mgmt

Placement stage

Action Stage

Generic Placement Controller

Nodus Deployment Controller

Placement Controller

Placement Controller

Action Controller

Action Controller

Status Notifier

Mongo

DB

etcd

Cluster Quotas

EGDE MULTI-CLUSTER OCHESTRATOR | EMCO

13 of 20

Distributed Application Scheduler - Critical component

13

  • Project Management provides multi-tenancy in the application from a user perspective
  • Composite App Management  manages composite apps (collection of Helm Charts one per application)
  • Composite Profile Management  manages composite profiles (collection of profile one per application)
  • Deployment Intent Group Management manages Intents for composite Applications
  • Controller Registration manages placement and action controller registration, priorities etc.
  • Status Notifier framework allows user to get on-demand status notifications on status updates
  • Scheduler - Placement Controllers ( in-build Generic Placement Controller) and Action Controllers
  • Rsync – Reads application Context from etcd and manages resources on edge clusters

Distributed Application Scheduler Microservice

Project Management

Composite App Management

Composite Profile Management

Deployment Intent Group Management

Status Notifier

Scheduler

Placement Stage

Action Stage

Generic Placement Controller

Placement Controllers

Action

Controllers

Mongo

DB

Resource Synchronizer and Status Microservice

etcd

Monitor

Monitor

Monitor

External API Endpoint

Nodus action Controller

Controller Registration

EGDE MULTI-CLUSTER OCHESTRATOR | EMCO

14 of 20

EMCO - Potential Cross Project interaction

EMCO

ONAP

Current: As a Multi Cloud plugin in ONAP

Potential Collaborations (Based on few discussions): As a VNFM in ONAP/SO; ONAP DCAE/Policy/CLAMP to augment EMCO for analytics/insights; ONAP External API for standard compliance; ONAP Network Slicing on top of EMCO

CNCF

EMCO is consumer of multiple CNCF projects, namely ISTIO/Envoy, Prometheus, Jaeger, fluentD

5G Super Blueprint:

EMCO is utilized under OpenNESS banner

LFE/Akraino

Several BPs use EMCO (PCEI, MICN, Private-LTE/5G).

Featured Demo & Panel at ONES

Magma

Potential Collaboration: Deployment of Magnum across multiple clusters and connectivity among them.

EGDE MULTI-CLUSTER OCHESTRATOR | EMCO

15 of 20

EMCO – Aspirational Roadmap

Dec 2021

2022

2023

  • Platform Robustness
    • Database integrity
    • Timeout and Retries
  • Security
    • EMCO front end microservices via ISTIO
  • Features
    • Upgrade
    • Placement constraints : Platform capability aware selection of target clusters for deployment
    • Multi Cluster Service Mesh
    • GitOps support
  • Platform Robustness
    • Scale-out/Elasticity of EMCO
    • HA of EMCO
  • Security
    • Extending ISTIO to secure E-W traffic among EMCO microservices
    • Private key security with TEEs.
  • Features
    • Comprehensive traffic controller
    • MEC Support
    • Day 2 App Configuration
    • Integration with Service Assurance
    • More placement controllers
    • Multi Cloud - App deployments
  • Platform Robustness
    • TBD
  • Security
    • TBD
  • Features
    • Dynamic Network Slicing
    • TBD

EGDE MULTI-CLUSTER OCHESTRATOR | EMCO

16 of 20

EMCO - Infrastructure Tooling

Uses modern LFX tooling platform and shared Jira instances under LF Networking.

  • Bug tracker
    • Jira - under LF Networking Jira (integration with confluence, SCRUM epics)
    • GitLab Issues
  • Chat tool
    • emco-network.slack.com
  • Image repositories
    • GitLab
  • Workflow
    • GitLab
  • Code review
    • GitLab
  • Projects Analytics
    • LFX Insights
    • GitLab Analytics
  • Continuous Integration tooling
    • GitLab CI/CD
  • Product Documentation
    • readthedocs.io - proposed
  • Mailing lists
  • Meeting calendars

17 of 20

Open & Follow-up Items

  • Need to complete the seed code scan, which is ready to execute
  • Website: https://project-emco.io under development
  • Logo under development: https://wiki.lfnetworking.org/display/EMCO/Logo+Working+Folder
  • Verify initial TSC verse long term TSC makeup
  • Availability of Intel lab resources
  • PTLs - core and GUI
  • EMCO positioning

18 of 20

In Summary

EMCO has a strong legacy dating back 2 years in ONAP and Akraino

Bringing EMCO back to open community governance was strong request by Linux Foundation, ONAP and OPS-5G communities

We have robust TSC representation of 10 participating companies out of the gate

We have a robust roadmap and active evaluations/usage across several LF communities, as well as the 5G SuperBlueprint

Our Ask: Please approve EMCO for Induction into LFN as a Sandbox project.

19 of 20

Thanks

20 of 20

Backup