Resource Manager API Architecture
The Resource Manager API is responsible for defining the interactions between the Stratoss™ Lifecycle Manager (LM) and the Resource Managers (RM) used to manage resources within virtual (or physical) infrastructures.
High Level Overview
There are four groups of interface endpoints referenced within the Resource Manager API. These groups are responsible for the management or retrieval of different entities from the Resource Managers.
The following diagram shows the high-level functional architecture referenced in this interface specification.
API Interaction Principles
All of the message descriptions (detailed in section 2) are in JSON format and should be submitted with the HTTP content-type header of “application/json”.
The REST endpoints can be secured using HTTPS, but there is no current provision for further authentication across the interface. Future changes could add support for HTTP basic authentication or the use of tokens (such as JWT, OAuth, etc…).
All of the REST endpoints should be accessible from the same root URL (e.g. http://localhost:8080/api/configuration
and http://localhost:8080/api/types
)
Interface Interaction Patterns
This section outlines the various potential interaction patterns with how Stratoss LM intends to call the Resource Manager APIs.
Resource Manager Onboarding
When a new Resource Manager is being onboarded into Stratoss LM, the following calls will be made.
Process Creation
When a new transition process is being created within Stratoss LM the following calls may be made to a Resource Manager.
Resource Transitions (Synchronous)
As part of an assembly transition, Stratoss LM may call out to a Resource Manager to transition or perform an operation on a Resource. This is the interaction pattern for this scenario when the Resource Manager does not support asynchronous response messages.
Resource Transitions (Asynchronous)
As part of an assembly transition, Stratoss LM may call out to a Resource Manager to transition or perform an operation on a Resource. This is the interaction pattern for this scenario when the Resource Manager supports asynchronous response messages.
NOTE: Stratoss LM versions up to and including R2.0 do not support asynchronous responses from a Resource Manager. However, all Resource Managers should support this aspect of the RM API so that as soon as support for asynchronous responses is added to Stratoss LM it can be used immediately without the need to update existing Resource Manager implementations.