Versions Compared

Key

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

...

This project targets a logically centralized reference point for service and resource details serving other ONAP components and non-ONAP systems to enable fulfillment, closed loop, reporting, and other operational use cases. The existing sources of truth do not provide a cross domain view and are not designed to serve this information to multiple clients.


Scope:

  • Inventory for services and resources (core capability to be delivered in R1)

      • a central registry to create a global view of inventory and network topology

      • receives updates from various inventory masters distributed throughout the ONAP infrastructure, and persists just enough to maintain the global view.

      • As transactions occur, AAI persists asset attributes and relationships into the federated view based on configurable metadata definitions for each activity that determine what is relevant to the AAI inventory.

      • Provides standard APIs to enable queries from various clients regarding inventory and topology. Queries can be supported for a specific asset or a collection of assets. The AAI global view of relationships is necessary for forming aggregate views of detailed inventory across the distributed master data sources. 

      • metadata-driven, new resources and services can be added quickly with Service Design and Creation (SDC) catalog definitions, using the AAI model loader
  • Move to Active Open Source Graph Database  (R1 candidate)

      • OpenECOMP AAI is today delivered on TitanDB in ONAP
      • TitanDB has no active Open Source community. No community updates for over 1 year.
      • ONAP AAI needs to move away from alignment to Titan There is risk in aligning AAI to TitanDB due to lack of support, maintenance and ongoing development.
      • Main scope for this feature is technical evaluation, selection, implementation of open source graph database options.
        • Janus good candidate (http://janusgraph.org/)
        • Janus supports Tinkerpop Abstraction implemented today in AAI.
        • Janus is an evolution of TitanDB (fork)
      • For support of Active-Active, Cassandra back-end is needed (rather than HBASE
  • )
  • Extend Model-driven AAI Use cases (R1 candidate)

    • AAI needs to dynamically operationalize new and updated models at run-time, with minimal downtime and no coding, so that ONAP is always on, and that latest service and resource models can be delivered by ONAP quickly, and without release boundary. 
    • To do this, AAI must update its internal model, external API and behavior at run-time to respond to change to service and resource models, including schema changes.
    • OpenECOMP AAI today delivers a model loader capability that ingests native A&A models and generates the API. 
    • This capability needs to be extended to support:
      • Retrieve the common model
    artefact
      • artifact(s) (TOSCA assumed)
     
  • Move forward the AAI model-driven story, driven by 3 use-case requirements
  • For Resource, service and schema change.
  •  Includes definition of (model-driven) API
  • Model evolution  - as updates are made to schema, make changes to existing instance data.
      •  for schema and for model
      • Translate the common model artifact(s) to AAI native artifact(s)
      • Ingest and operationalize the new models - making appropriate changes to data stores, APIs, configurations
      • Operationalization should include an internal 2 phase commit to ensure that relevant AAI services are successfully updated
      • Operationalization should include an external 2 phase commit across all relevant ONAP components to  ensure they are successfully updated.
      • Decomposiing AAI model/schema  artefacts - today's OXM is a monolith, a more granular approach will better enable extensibility and support  logical subdivision of modls
    • First priority is the aspects of this behavior required for the 3 ONAP R1 use-cases
    Decomposing OXM into multiple OXM files to support:
  • Extensibility of Schema
  • Logical subdivision of modeling


-


  • Track Change through Time (R2+ candidate) 
    • Tracking the Service, Resource changes across time
    • Support for point in time service/resource detail, e.g. for assurance 
  • AAI Reconciliation from Network/Cloud. (dependences on Multi VIM project- assume R2 earliest)

    • Need to refresh from VIM
      • data integrity checks and reconciliation 
      • event based updates from VIM/SO/Controller
    • Different VIMs have different levels of detail.
    • MSO has this UC also.
    • Variety of different options here (VIM/SO/Controller).

...

  • Specify any interface/API specification proposed,
    • Updated REST API for AAI aligned with updated model as per the 3 use cases
    • Updated API to support query of  time series data
  • Identity a list of features and functionality will be developed.
  • Identify what is in or out of scope. During the development phase, it helps reduce discussion.
    • Scalable, HS AAI
  • This could be covered by an ONAP level requirement for HA
  • Scaling may be ONAP Controller domain
  • add/modify necessary models in A&AI to support VoLTE usecase

...