HPA Requirements
HPA requirements describe VNF component-specific dependencies on the underlying hardware platform capabilities. HPA requirements are specified as part of the VNF descriptor (VNFD) templates, created during VNF packaging and containing all information needed for initial instantiation and subsequent operation of a given VNF. HPA requirements are expressed as arrays of tuples, where each tuple fully defines a single HPA requirement.
Each requirement tuple has the following format:
(<version-spec>, <hardware-architecture>, <capability-name>, <capability-value>, <need-level>)
where the tuple elements are defined as follows:
<version> | A unique quote delimited string identifier representing the version of the tuple format. |
<hardware-architecture> | A unique quote delimited string identifier representing the hardware platform architecture associated with the capability. A value of "*" (star) indicates that the given capability is hardware vendor agnostic. |
<requirement-name> | A unique quote delimited string identifier representing the name of the capability. |
<requirement-value> | A unique quote delimited string identifier representing the value/settings of the capabiity. |
<need-level> | A quote delimited string constant stating whether the capability is mandatory or optional. Has one of two possible values - "mandatory" or "optional". |
HPA Capabilities
HPA capabilities describe the underlying compute, storage and network hardware platform capabilities. HPA capabilities are obtained from each on-boarded VIM and are persisted as part of the AAI inventory database. HPA capabilities are expressed as arrays of tuples, where each tuple fully defines a single HPA capability.
Each requirement tuple has the following format:
(<version-spec>, <hardware-architecture>, <capability-name>, <capability-value>)
where the tuple elements are defined as follows:
<version> | A unique quote delimited string identifier representing the version of the tuple format. |
<hardware-architecture> | A unique quote delimited string identifier representing the hardware platform architecture associated with the capability. A value of "*" (star) indicates that the given capability is hardware vendor agnostic. |
<requirement-name> | A unique quote delimited string identifier representing the name of the capability. |
<requirement-value> | A unique quote delimited string identifier representing the value/settings of the capability. |
Requirement/Capability Matchmaking
During network service and VNF instantiation, required capabilities, specified in the VNFD, are matched against the capabilities of available compute resources. If all "mandatory" capabilities have been matched, the instantiation continues. If one or more mandatory capabilities have not been matched, the instantiation fails.
NOTE - The names of required and available capabilities are the same. The values of required capabilities express a subset of the available capability values.