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.
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.
See also:
Allotted Resource Model explains the allotted resource concept in general.
TIDM onap.relationships.AllottedBy
A capability derived of this type, when exposed by a service, indicates that a "slice" of this service can be used as a resource inside another service.
A requirement for this capability type specified an abstract resource node suggests that the orchestrator will resolve this abstraction by taking a slice of an already deployed provider service.
To assist the orchestrator in finding the best match, the designer is supposed to specify the expected type of the provided resource in the valid_source_types construct.
Definition
Code Block | ||||
---|---|---|---|---|
| ||||
onap.capabilities.AllottedResourceProvider:
derived_from: tosca.capabilities.Root
description: Capability to produce allotted resources
valid_source_types: [] |
Examples
Code Block | ||||
---|---|---|---|---|
| ||||
capability_types:
vendorYYY.capabilities.SunshineDatabaseAsAServiceProvider:
derived_from: onap.capabilities.AllottedResourceProvider
valid_source_types: [vendorYYY.nodes.SunshineDatabase] |