Allotted Resources are portions of one service which can be allotted to be used as resources by another. The distinguishing factor that makes a Resource allotted is simply the requirement for a "providing service" derived from onap.nodes.Service which has an AllottedResourceProvider constrained by a valid source type which is the allotted resource's node type. There is no longer a need for a specific based type for Allotted Resources.
This permits allotted network functions to be chosen during abstraction resolution as long as filtering criteria are matched.
- Each providing service should declare this capability and populate the “valid_source_types” with the allotted resource node types it can produce. Since “valid_source_types” is a list, providing services may produce multiple different allotted resources. Given this is explicitly declared, the orchestrator can validate that a service exists to provide the allotted resource.
- Allotted resource concrete types will always map to a single providing service type, so there may be no explicit need for unique capability types/properties.
- Allotted Resources will declare a requirement for this capability. Due to N:1 nature of allotted resources to providing services, the requirement can directly specify the providing service type (i.e., node filtering is not required). This will be a “dangling” requirement, since the actual providing service instance will be chosen at run-time (by SNIRO/OOF)
- The existence of an AllottedResourceProvider requirement is sufficient to identify an allotted resource. They do not need to be derived from some root “allotted_resource” type.
We also define a relationship type for the connection between allotted resources and their providing services. This relationship must be defined on the requirement for an allotted resource provider (in the allotted resource node type). At this time, there are no specific attributes defined for this relationship.
Code Block | ||||
---|---|---|---|---|
| ||||
onap.capabilities.AllottedResourceProvider: derived_from: tosca.capabilities.Root description: Capability to produce allotted resources valid_source_types: [] |
...