ARC AAI Component Description - New Delhi-R14

Page Status:  updated for New Delhi -  Apr 1, 2024 
Component Status: Approved

Last Reviewed on:

Certified by: @Byung-Woo Jun 

AAI (Available and Active Inventory):

1. High Level Component Definition and Architectural Relationships 





The AAI (Available and active inventory) function provides real-time views of the resource and services in managed by and their relationships.  It provides

  • Realtime views of the managed resources and services and their relationships

  • The relevance of the managed resources and services to the ONAP components.

  • It is a registry of the active, available and assigned assets.

  • It maintains a multidimensional relationship amongst the managed services and resources. 

  • It provides interfaces for canned and ad-hoc complex network topology queries

2. API definitions

AAI provides the following interfaces:

Interface Name

Interface Definition

 Interface Capabilities

Version

Status

API Spec (Swagger)

Interface Name

Interface Definition

 Interface Capabilities

Version

Status

API Spec (Swagger)

AAIE-1

Inventory Service Interface. CRUD & Queries

  An interface to create, update, retrieve, query, delete the service, resources and relationship inventory information for:

  • Cloud infrastructure (including cloud infrastructure regions and availability zones, cloud infrastructure resources such as servers, storage, VLANs, cloud network technologies,...)

  • Paths and connectors

  • Business Customers and business customer relationship to managed assets

  • Service Instances (including the relationship to used resources)

  • Resource instances (including allotted resources) (virtual and physical, including VNFs, PNFs, Switches, VNF modules)

  • External systems (systems that ONAP connects to)

  • Images

  • Networks

  • Infrastructure tenants

  • Relationships

  • Interfaces

  • IP addresses

  • Configurations

  • Licenses

  • Site resources

AAI provides multiple interfaces to use canned queries, dynamic queries (DSL), and CRUD operations (Resources)

v27



AAI REST API Documentation - Kohn

 AAIE-2

AAI Graphical User Interfaces 

Provides the capability to view the inventory 







Note:   xxxI interface is a Component internal interface.  xxxxE interface is a component external interface

The current API documents can be found at:

AAI consumes the following Interfaces:

Interface Name

Purpose Reason For Use

API Spec (Swagger)

Interface Name

Purpose Reason For Use

API Spec (Swagger)

SDCE-6

To receive the service and resource artifacts from SDC.

N/A

Interface Details

AAI REST API Documentation - Kohn



3. Component Description:

A more detailed figure and description of the component.

For Above: 

The above red boxes indicate everything no longer deployed in Jakarta, being in maintenance mode.

Release Artifacts

Release Components Name

Components Name

Components Repository name

Maven Group ID

Components Description

Components Name

Components Repository name

Maven Group ID

Components Description

aai-common

aai/aai-common

org.onap.aai.aai-common

This holds the model, annotations and common modules used across the Resources and Traversal micro services

data-router

aai/data-router

org.onap.aai.data-router

AAI Micro Service used to route/persist AAI event data for consumption by the UI

logging-service

aai/logging-service

org.onap.aai.logging-service

AAI common logging library

model-loader

aai/model-loader

org.onap.aai.model-loader

Loads SDC Models into A&AI

resources

aai/resources

org.onap.aai.resources

AAI Resources Micro Service providing CRUD REST APIs for inventory resources

rest-client

aai/rest-client

org.onap.aai.rest-client

Library for making REST calls

router-core

aai/router-core

org.onap.aai.router-core

Library containing the core camel components for the data router

search-data-service

aai/search-data-service

org.onap.aai.search-data-service

Service for persisting data to a search database

sparky-be

aai/sparky-be

org.onap.aai.sparky-be

AAI user interface back end

sparky-fe

aai/sparky-fe

org.onap.aai.sparky-fe

AAI user interface front end

test-config

aai/test-config

org.onap.aai.test-config

Repository containing test configuration for use in continuous integration

traversal

aai/traversal

org.onap.aai.traversal

AAI Traversal Micro Service providing REST APIs for traversal/search of inventory resources

babel

aai/babel

org.onap.aai.babel

AAI Microservice to generate AAI model XML from SDC TOSCA CSAR artifacts

esr-server

aai/esr-server

org.onap.aai.esr-server

ESR backend, mainly include the function of external system reachable check and data pretreatment

esr-gui

aai/esr-gui

org.onap.aai.esr-gui

External system management ui

event-client

aai/event-client

org.onap.aai.event-client

Library to manage interactions with an event bus

graphadmin

aai/graphadmin

org.onap.aai.graphadmin

Microservice with various functions for graph management

cacher

aai/cacher

org.onap.aai.cacher

The Response Caching Microservice (Cacher) is built to deliver multiple mechanisms of making API calls and populating the responses into a JSON datastore

validation

aai/validation

org.onap.aai.validation

Microservice used to invoke validation mechanism

schema-service

aai/schema-service

org.onap.aai.schema-service

Microservice to provide centralized run-time schema information for AAI's microservice

graphgraph

aai/graphgraph

org.onap.aai.graphgraph

Microservice used to provide view of AAI model, schema and edge rules

oom

aai/oom

org.onap.aai.oom

AAI's helm chart repo, is a submodule of the oom project, but will be brought back into the main project in the Guilin release.  This will need to remain open for as long as Frankfurt and El Alto are supported and then can be locked.

spike

aai/spike

org.onap.aai.spike

Microservice used to generate events describing changes to the graph data (deprecated)

tabular-data-service

aai/tabular-data-service

org.onap.aai.tabular-data-service

Microservice which serves as an abstraction layer to a tabular data store (deprecated)

gap

aai/gap

org.onap.aai.gap

A get and publish microservice  which extracts entities from A&AI and publishes them to an event topic (deprecated)

eis

aai/eis

org.onap.aai.eis

Microservice used to manage entity identities across systems (deprecated)

chameleon

aai/chameleon

org.onap.aai.chameleon

Abstraction service for historical database (deprecated)

gallifrey

aai/gallifrey

org.onap.aai.gallifrey

Transformation service between AAI-modelled data, operations and gallifrey representation (deprecated)

enricher

aai/enricher

org.onap.aai.enricher

Enables complementing AT&T data with federated data from additional sources (deprecated)

aai-service

aai/aai-service

org.onap.aai.service

AAI REST based services (deprecated)

aai-config

aai/aai-config

org.onap.aai.aai-config

AAI Chef cookbooks

aai-data

aai/aai-data

org.onap.aai.aai-data

AAI Chef environment files (deprecated)

gizmo

aai/gizmo

org.onap.aai.gizmo

CRUD Rest API endpoint for resources and relationships, delivering atomic interactions with the graph for improved scalability. (deprecated)

champ

aai/champ

org.onap.aai.champ

Abstraction from underlying graph storage systems that A&AI would interface with.(deprecated)

4. known system limitations

5. Used Models

AAI uses the following models:

  • Inventory Model

6. System Deployment Architecture

See component section.



7. New Capabilities / Key Updates in this Release

This release, AAI adds the following Capabilities:

  • Bulk PM API fix

  • New remote debugging feature

  • Remove DMaaP MR depedency

  • Support new JanusGraph version (TBD)

8. References

  1. AAI REST API Documentation - Kohn