Versions Compared

Key

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

Introduction

The

IntroductionThe ONAP Operations Manager (OOM) is responsible for life-cycle management of the ONAP platform itself; components such as MSO, SDNC, etc. It is not responsible for the management of services, VNFs or infrastructure instantiated by ONAP or used by ONAP to host such services or VNFs. OOM uses the open-source Kubernetes container management system as a means to manage the Docker containers that compose ONAP where the containers are hosted either directly on bare-metal servers or on VMs hosted by a 3rd party management system. OOM ensures that ONAP is easily deployable and maintainable throughout its life cycle while using hardware resources efficiently. In summary OOM provides the following capabilities:

  • Deployment - with built-in component dependency management (including multiple clusters, federated deployments across sites, and anti-affinity rules)
  • Configuration - unified configuration across all ONAP components
  • Monitoring - real-time health monitoring feeding to a Consul UI and Kubernetes
  • Heal- failed ONAP containers are recreated automatically
  • Clustering and Scaling - cluster ONAP services to enable seamless scaling 
  • Upgrade - change-out containers or configuration with little or no service impact
  • Deletion - cleanup individual containers or entire deployments

OOM supports a wide variety of cloud infrastructures to suit your individual requirements.

Table of Contents

Table of Contents

Image Added

Image Added

OOM Team

Committers and contributors can be found here: OOM Team

Contributing to OOM

Feedback: You can provide feedback on the onap-discuss list, sign up here: ONAP Discuss List

Bug reportsJira

Weekly Meeting Notes: OOM Weekly meeting notes

Contributions: Instructions on how to set up Gerrit is here: Configuring Gerrit.  Please join the onap-discuss list (OOM posts are tagged with oom) or attend OOM's weekly meetings for information on how you can help. 

Commit requirements: Commits on OOM are always welcome and will be reviewed with care by OOM committers. As OOM is an installer, we ask to have a specific (but very close to Commit Messages) way to create them. They must comply with following pattern:

[NAME_OF_COMPONENT|DOC|COMMON|GENERIC] Meaningful title (from OOM side)

at least one sentence explaining the change done in this patch, cause and consequences and possibly more of course

Issue-ID: AS_WE_ARE_FORCED_BUT_MEANINGLESS
Change-ID: xxx
Sign-off: xxx

Commit message will be the last part that will stay with our code so it must clearly explain the changes, the "why" and the consequences. If it change OOM behavior in any way, documentation must be also updated.

Merge requests which are not following this pattern will not be merged.

Please read the following pages and follow the guidelines for writing commit message contained therein.


Development Policies, Standards, and Coding

OOM Quick Start and Cloud Setup Guides

The official OOM Quick Start Guide is found at the onap.readthedocs.io site. If you need to setup a Kubernetes cloud to host your ONAP deployment you can find descriptions of how to do so for many cloud technologies in the OOM Cloud Setup Guide.

OOM User and Developer Guides

OOM uses the HelmKubernetes container management system to orchestrate the life cycle of the ONAP infrastructure components.  If you're a user of OOM you'll want to read the OOM User Guide. If you're an ONAP developer and would like to add a component to ONAP you'll want to read the OOM Developer Guide

Quick Start Guide

Once a kubernetes environment is available and the deployment artifacts have been customized for your location, ONAP is ready to be installed. 

In-order to be able to support multiple ONAP instances within a single kubernetes environment a configuration set is required.  The createConfig.sh script is used to do this.

Code Block
titlecreateConfig.sh
> ./createConfig.sh -n onapTrial

The bash script createAll.bash is used to create an ONAP deployment with kubernetes. It has two primary functions:

  • Creating the namespaces used to encapsulate the ONAP components, and
  • Creating the services, pods and containers within each of these namespaces that provide the core functionality of ONAP.
Code Block
titlecreateAll.bash
> ./createAll.bash -n onapTrial

Namespaces provide isolation between ONAP components as ONAP release 1.0 contains duplicate application (e.g. mariadb) and port usage. As such createAll.bash requires the user to enter a namespace prefix string that can be used to separate multiple deployments of onap. The result will be set of 10 namespaces (e.g. onapTrial-sdc, onapTrial-aai, onapTrial-mso, onapTrial-message-router, onapTrial-robot, onapTrial-vid, onapTrial-sdnc, onapTrial-portal, onapTrial-policy, onapTrial-appc) being created within the kubernetes environment.  A prerequisite pod config-init (pod-config-init.yaml) may editing to match you environment and deployment into the default namespace before running createAll.bash.

Demo Video

If you'd like to see the installation of ONAP by OOM take a look at this short video demonstration by Mike Elliott: OOM Demo Video

OOM Architecture and Technical Details

OOM uses the Kubernetes container management system to orchestrate the life cycle of the ONAP infrastructure components.  If you'd like to learn more about how this works or develop the deployment specifications for a project not already managed by OOM look here: OOM User Guide.

Amsterdam Release Planning

Beijing Release Planning

Casablanca Release Planning

Links to Further Information