Page Status: Copied from R6 - Mar, 22, 2020
Component Status: Pending PTL Updates and ArchCom Review
Last Reviewed on:
Certified by:
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 multidimentional 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) |
---|---|---|---|---|---|
AAIE-1 | Inventory Service Interface. CRUD & Queries | An interface to create, update, retrieve, query, delete the service, resources and relationship inventory information for:
AAI provides multiple interfaces to use canned queries, dynamic queries (DSL), and CRUD operations (Resources) | v20 | ||
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) |
---|---|---|
SDCE-6 | To receive the service and resource artifacts from SDC. | N/A No exposed Interface |
3. Component Description:
A more detailed figure and description of the component.
For Above:
Grey is deprecated (according to Resources and Repositories)
Blue are configured in oom.
The rest are green.
Taken from AAI Microservices Diagram
4. known system limitations
- Eventually consistent database (CAP Theorem - Performance over Consistency) - see Warning! AAI REST API Not Safe With Concurrent Access (i.e. more than 1 REST client)
- Basic issue is when running multiple instances and calls are made to the same objects concurrently, there runs the risk of creating duplicates or ghost vertices, see https://docs.janusgraph.org/advanced-topics/eventual-consistency/ for more
- We have provided a sticky config in HAProxy, to keep clients operating on the same instance for X mins and data grooming (via GraphAdmin) to clean up bad data
5. Used Models
AAI uses the following models:
- Inventory Model
6. System Deployment Architecture
FFS
7. New Capabilities in this Release
This release, AAI adds the following Capabilities:
- No new platform functionality in Guilin
- Use Cases supported: AAI R7 Guilin Release: Functional Use Cases