...
This proposal introduces the ONAP Platform OOM (ONAP Operations Manager) – which initially includes a controller manager for cross-technology orchestration and container orchestration. It is a framework on which a complete set of OAM capabilities for the ONAP platform components. The OOM will unify the deployment, management and control capabilities for ONAP, including all components, the data messaging fabric as well as the micro-services (including collectors, analytics, UI apps, etc.) to be on-boarded onto the platform. The ONAP Platform OAM addresses the current lack of consistent platform-wide method in managing software components, their health, resiliency and other lifecycle management functions. With the 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.
Current Gaps and Initial Use CasesThe 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 Platform Controller 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 Platform ControllerOperations 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 OAMcomponents. The ONAP Platform Controller 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 container. Over time, more advanced control loop automation, triggered by policy, will be built into the ONAP Platform ControllerOperations Manager.
Proposed ONAP Platform Controller Operations Manager Functional Architecture:
- UI/Dashboard – this provides DevOps users a view of the inventory, events and state of what is being managed by the ONAP Platform ControllerOperations Manager, and the ability to manually trigger corrective actions on a component. The users can also deploy ONAP instances, a component, or a change to a software module within a component.
- API handler – this supports NB API calls from external clients and from the UI/Dashboard
- Inventory & data store – tracks the inventory, events, health, and state of the ONAP instances and individual components
- ONAP Lifecycle Manager – this is the TOSCAa model-based driven orchestration engine for deploying/un-deploying instances and components. It will trigger downstream plugin actions such as instantiate VMs, create containers, stop/restart actions, etc. Target implementation should aim at TOSCA as the master information model for deploying/managing ONAP Platform components.
- SB Interface Layer – these are a collection of plugins to support actions and interactions needed by the ONAP Platform Controller to ONAP Operations Manager to ONAP instances and other external cloud related resources – plugins may include Openstack, Docker, Kubernetes, Chef, Ansible, etc.
- Service & Configuration Registry – this function performs the registry and discovery of components/software to be managed as well as the subsequent health check on each registered component/software
...
- How does this project fit into the rest of the ONAP Architecture?
- Please Include architecture diagram if possible
- What other ONAP projects does this project depend on?TBDThe ONAP Operations Manager (OOM) is used to deploy, manage and automate ONAP platform components operations.
- How does this align with external standards/specifications?
- N/AAt target, TOSCA should be used to model platform deployments and operations.
- Are there dependencies with other open source projects?
- TBDOptions could be Cloudify, Kubernetes, Docker, and others.
Resources:
- Primary Contact Person: David Sauvageau (Bell Canada)
- Munish Agarwak (Ericsson)
- John NG (AT&T)
- Arthur (Gigaspaces)
...
- JIRA project name: ONAP Operations Manasger
- JIRA project prefix: oom
Repo name: platform-containerizationoom
Lifecycle State: Incubation
Primary Contact: David SauvageauTBD
Project Lead: David Sauvageau TBD
mailing list tag pfc
Committers (Name - Email - IRC):
...