...
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
- 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. Decomposing OXM into multiple OXM files to support:
- Extensibility of Schema Logical subdivision of modeling
- 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
-
- 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
...