OOM Beijing - M1 Release Planning Template
DRAFT PROPOSAL FOR COMMENTS
The content of this template is expected to be fill out for M1 Release Planning Milestone.
- 1 Overview
- 2 Scope
- 3 Release Deliverables
- 4 Sub-Components
- 5 ONAP Dependencies
- 6 Architecture
- 7 Testing and Integration Plans
- 8 Gaps
- 9 Known Defects and Issues
- 10 Risks
- 11 Resources
- 12 Release Milestone
- 13 Team Internal Milestone
- 14 Documentation, Training
- 15 Other Information
Overview
Project Name | Enter the name of the project |
---|---|
Target Release Name | Beijing |
Project Lifecycle State | Incubation |
Participating Company | Bell, Amdocs, AT&T, ZTE, Huawei |
Scope
What is this release trying to address?
Goal: OOM for Carrier-Grade deployments
The ONAP Operations Manager provides a set of capabilities that facilitate Carrier Grade deployments of ONAP. ONAP deployments need to be capable of offering service while under adverse conditions typically with overall availability measured at five-nines or 99.999% uptime or about 5 minutes of downtime per year. This requirement might be strict for an orchestration system, but keep in mind that ONAP’s closed loop control system could be providing monitoring a control for one or more critical VNFs that need to meet stringent up-time requirements as found in the TL 9000 Quality Management System Measurements Handbook.
Details available at: OOM for Production-Grade Deployments
Use Cases
...
Minimum Viable Product
Out of scope
..
Functionalities
Epics
Stories
Longer term roadmap
ONAP Platform OOM (ONAP Operations Manager)will be used to efficiently Deploy, Manage, Operate the ONAP platform and its components (e.g. MSO, DCAE, SDC, etc.) and infrastructure (VMs, Containers). The OOM addresses the current lack of consistent platform-wide method in managing software components, their health, resiliency and other lifecycle management functions. With OOM, service providers will have a single dashboard/UI to deploy & un-deploy the entire (or partial) ONAP platform, view the different instances being managed and the state of each component, monitor actions that have been taken as part of a control loop (e.g., scale in-out, self-heal), and trigger other control actions like capacity augments across data centers.
The primary benefits of this approach are as follows:
Flexible Platform Deployment - While current ONAP deployment automation enables the entire ONAP to be created, more flexibility is needed to support the dynamic nature of getting ONAP instantiated, tested and operational. Specifically, we need the capability to repeatedly deploy, un-deploy, and make changes onto different environments (dev, system test, DevOps, production), for both platform as a whole or on an individual component basis. To this end, we are introducing the ONAP Operations Manager with orchestration capabilities into the deployment, un-deployment and change management process associated with the platform.
State Management of ONAP platform components – Our initial health checking of Components and software modules are done manually and lack consistency. We are proposing key modules/services in each ONAP Component to be able to self-register/discovered into the ONAP Operations Manager, which in turn performs regular health checks and determines the state of the Components/software.
Platform Operations Orchestration / Control Loop Actions – Currently there is a lack of event-triggered corrective actions defined for platform components. The ONAP Operations Manager will enable DevOps to view events and to manually trigger corrective actions. The actions might be simple initially – stop, start or restart the platform component. Over time, more advanced control loop automation, triggered by policy, will be built into the ONAP Operations Manager.
Release Deliverables
Indicate the outcome (Executable, Source Code, Library, API description, Tool, Documentation, Release Note...) of this release.
Deliverable Name | Deliverable Description |
---|---|
Sub-Components
List all sub-components part of this release.
Activities related to sub-component must be in sync with the overall release.
Sub-components are repositories are consolidate in a single centralized place. Edit the Release Components name for your project in the centralized page.
ONAP Dependencies
As OOM manages all of the ONAP components it has dependencies on all other projects. OOM's first goal is to manage all of the components from the 1.0 release and will incorporate newer components as they mature. In order for a project to be managed by OOM deployment artifacts that must be created - specifically a kubernetes deployment specification(s) and project configuration/environment data - in formats provided by this project.
Architecture
High level architecture diagram
OOM for Production-Grade Deployments
API Incoming Dependencies
List the API this release is expecting from other releases.
Prior to Release Planning review, Team Leads must agreed on the date by which the API will be fully defined. The API Delivery date must not be later than the release API Freeze date.
Prior to the delivery date, it is a good practice to organize an API review with the API consumers.
API Name | API Description | API Definition Date | API Delivery date | API Definition link (i.e.swagger) |
---|---|---|---|---|
API Outgoing Dependencies
API this release is delivering to other releases.
API Name | API Description | API Definition Date | API Delivery date | API Definition link (i.e.swagger) |
---|---|---|---|---|
KubeCTL | Kubernetes control | |||
Third Party Products Dependencies
Third Party Products mean products that are mandatory to provide services for your components. Development of new functionality in third party product may or not be expected.
List the Third Party Products (OpenStack, ODL, RabbitMQ, ElasticSearch,Crystal Reports, ...).
Name | Description | Version |
---|---|---|
Kubernetes | ||
Rancher | ||
Cloudify (Potential) | ||
Consul | ||
Postgres |
In case there are specific dependencies (Centos 7 vs Ubuntu 16. Etc.) list them as well.
Testing and Integration Plans
Provide a description of the testing activities (unit test, functional test, automation,...) that will be performed by the team within the scope of this release.
Describe the plan to integrate and test the release deliverables within the overall ONAP system.
Confirm that resources have been allocated to perform such activities.
Gaps
This section is used to document a limitation on a functionality or platform support. We are currently aware of this limitation and it will be delivered in a future Release.
List identified release gaps (if any), and its impact.
Gaps identified | Impact |
---|---|
To fill out | To fill out |
Known Defects and Issues
Provide a link toward the list of all known project bugs.
Risks
List the risks identified for this release along with the plan to prevent the risk to occur (mitigation) and the plan of action in the case the risk would materialized (contingency).
Risk identified | Mitigation Plan | Contingency Plan |
---|---|---|
To fill out | To fill out | To fill out |
Resources
Fill out the Resources Committed to the Release centralized page.
Release Milestone
The milestones are defined at the Release Level and all the supporting project agreed to comply with these dates.
Team Internal Milestone
This section is optional and may be used to document internal milestones within a project team or multiple project teams. For instance, in the case the team has made agreement with other team to deliver some artifacts on a certain date that are not in the release milestone, it is erecommended to provide these agreements and dates in this section.
It is not expected to have a detailed project plan.
Date | Project | Deliverable |
---|---|---|
To fill out | To fill out | To fill out |
Documentation, Training
...
Other Information
Vendor Neutral
If this project is coming from an existing proprietary codebase, ensure that all proprietary trademarks, logos, product names, etc. have been removed. All ONAP deliverables must comply with this rule and be agnostic of any proprietary symbols.
Free and Open Source Software
FOSS activities are critical to the delivery of the whole ONAP initiative. The information may not be fully available at Release Planning, however to avoid late refactoring, it is critical to accomplish this task as early as possible.
List all third party Free and Open Source Software used within the release and provide License type (BSD, MIT, Apache, GNU GPL,... ).
In the case non Apache License are found inform immediately the TSC and the Release Manager and document your reasoning on why you believe we can use a non Apache version 2 license.
Each project must edit its project table available at Project FOSS.
Charter Compliance
The project team comply with the ONAP Charter.