Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • to support all the use cases (as a common service)
  • to provide access to new  version of ONAP APIs via MSB
  • to implement the S3P requirements
  • to fix the issues reported by other projects and users
  • to support service mesh efforts (limited resources)

Use Cases

Describe the use case this release is targeted for (better if reference to customer use case).

As a common service project, MSB is the upstream of other projects to provide inter-service communication infrastructure, so it will be involved in the use cases indirectly. 

Just list the use cases of VF-C and MultiCloud project which depends on MSB here  , other use case will also be supported if msb involvement is needed.

Use Case:

Residential Broadband vCPE (Approved)

CCVPN Use Case (Dublin)

vFW/vDNS

vCPE

Functional Requirements:

Hardware Platform Enablement In ONAP

Centralized Representation and Consistent Identification of Cloud Regions In ONAP

Auto Scaling - stretch goal Release 4 (Dublin) Use Cases and functional requirements

Minimum Viable Product

  • Internal API Gateway:  Service API gateway which serve as a transparent inter-service communication proxy  to provide service discovery/routing/load balancing inside ONAP system.

  • External API Gateway:  Service API Gateway which serve as an entrance to allow external system access to ONAP services.

  • Service Discovery:  Provides service registration and discovery for ONAP microservices, which leverage Consul and builds an abstract layer on top of it to make it agnostic to the registration provider.

  • JAVA SDK: Provides a JAVA SDK for rapid microservices development, including service registration, service discovery, request routing, load balancing, retry, etc.

  • Swagger SD: Swagger SDK could be used to generate the server stub and client part in different language.

...

High level architecture diagram

At that stage within the Release, the team is expected to provide more Architecture details describing how the functional modules are interacting.

Indicate where your project fit within the ONAP Archiecture diagram.

Block and sequence diagrams showing relation within the project as well as relation with external components are expected.

Anyone reading this section should have a good understanding of all the interacting modules.


MSB is part of the underlying platform to support onap microservice communication.

Image Added


MSB consists of these sub-components:

  • Registry Service information storage, MSB uses Consul as the service registry.
  • MSB Discovery Provides REST APIs for service discovery and registration.
  • API Gateway Provide service request routing, load balancing and service governance. It can be deployed as external Gateway or Internal Gateway.
  • MSB SDK A Java SDK for point to point communication.

Image Added

MSB works with OOM (Kube2msb Registrator) to provide transparent service registration for onap microservices.

  • OOM deploy/start/stop ONAP components. 
  • Registrator watches the kubernetes event.
  • Registrator reads the service definition from kubernetes deployment specs.
  • Registrator sends service endpoints to MSB discovery when ONAP apps are deployed by OOM.
  • Registrator registers service endpoint info to MSB. It also updates the service info to MSB when ONAP components are stopped/restarted/scaled by OOM


Image AddedImage Removed

Platform Maturity

...

AreaActual LevelTargeted Level for current ReleaseHow, EvidencesComments
Performance12Capture the baseline performance of API Gateway, such as QPS Latency Transfer/sec.
  • 0 -- none
  • 1 – baseline performance criteria identified and measured
  • 2 & 3 – performance improvement plans created & implemented
Stability1272 hours soak test with random transactions from ONAP microservices via Internal API Gateway.
  • 0 – none
  • 1 – 72 hours component level soak w/random transactions
  • 2 – 72 hours platform level soak w/random transactions
  • 3 – 6 months track record of reduced defect rate
Resiliency22MSB integrates with OOM and leverage kubernetes to provide automated detection and recovery
  • 0 – none
  • 1 – manual failure and recovery (< 30 minutes)
  • 2 – automated detection and recovery (single site)
  • 3 – automated detection and recovery (geo redundancy)
Security011Reach the 50% Test Coverage, get CII Passing badge(now 98%).
  • 0 – none
  • 1 – CII Passing badge + 50% Test Coverage
  • 2 – CII Silver badge; internal communication encrypted; role-based access control and authorization for all calls
  • 3 – CII Gold
Scalability11Provide cluster deployment for MSB components to achieve single site horizontal scaling.
  • 0 – no ability to scale
  • 1 – single site horizontal scaling
  • 2 – geographic scaling
  • 3 – scaling across multiple ONAP instances
Manageability11MSB provide access logging at API gateway.
  • 1 – single logging system across components; instantiation in < 1 hour
  • 2 – ability to upgrade a single component; tracing across components; externalized configuration management
Usability12Provide all the required documentation.
  • 1 – user guide; deployment documentation; API documentation
  • 2 – UI consistency; usability testing; tutorial documentation

...

API this project is delivering to other projects.

We don't expect mass API changes in Dublin, MSB APIs are already stable.

API NameAPI DescriptionAPI Definition DateAPI Delivery dateAPI Definition link (i.e.swagger)
Service RegistrationRESTFul API for service registration with MSB.2019/01/24Release Planning#DublinReleaseCalendarMicroservice Bus API Documentation
Service DiscoveryRESTFul API for service discovery with MSB.2019/01/24Release Planning#DublinReleaseCalendarMicroservice Bus API Documentation
JAVA SDKJAVA SDK for service registration, discovery and inter-services communication.2019/01/24Release Planning#DublinReleaseCalendarMicroservice Bus API Documentation

...

Risk identifiedMitigation PlanContingency Plan
To fill outTo fill outTo fill out



Resources

Fill out the Resources Committed to the Release centralized page.

Release Milestone

...

It is not expected to have a detailed project plan.

...

Documentation, Training

  • Highlight the team contributions to the specific document related to he project (Config guide, installation guide...).
  • Highlight the team contributions to the overall Release Documentation and training asset
  • High level list of documentation, training and tutorials necessary to understand the release capabilities, configuration and operation.
  • Documentation includes items such as:
    • Installation instructions
    • Configuration instructions
    • Developer guide
    • End User guide
    • Admin guide
    • ...

...