This page is used for the ONAP R2+ Resource IM drafting and discussion.
Table of Content Zone | ||||||
---|---|---|---|---|---|---|
| ||||||
|
SourcesReferences:
- AAI: aai_schema_v11
- ECOMP IM UML documentation: ONAP Resource 2017-11-08.docx
- SDC: SDC current ECOMP model
- ETSI: IFA007, IFA008, IFA011, IFA015
Class Diagrams Discussion
This section illustrates the core IM design related to VNF resource from different sources.
Run Time Model (VNF Instance)
...
IFA015, VNF Classes Mapping
Michela Bevilacqua: How do we map VNFInfo, InstantiatedVnfInfo and connected Info classes present in IFA015 to ONAP IM?
Xu Yang: In my opinion, the VnfInfo, InstantiatedVnfInfo, etc. can be mapped to attributes of the corresponding resource instance objects.
Design Time Model
1) ONAP Resource Model UML
High Level Diagram
...
VNFDesc - VNFCDesc
...
3) SDC IM (normative and heat types)
(omit several types for simplicity)
4) Proposed ONAP R2+ Design Time Model
Resource General View Diagram
- Resource model includes design time model (ResourceDesc) and run time model (ResourceInstance). Based on one ResourceDesc, zero or more ResourceInstance(s) can be instantiated.
- “Resource” is a generalization of many objects, for example, VNF, PNF, entitlement, etc. In the above diagram, only VNF, PNF and ServiceVirtualLink (virtual link between NFs) are shown. More specifically,
- VnfDesc is derived from ResourceDesc, VnfInstance is derived from ResourceInstance. Based on one VnfDesc, zero or more VnfInstance(s) can be instantiated.
- PnfDesc is derived from ResourceDesc, PnfInstance is derived from ResourceInstance. One PnfDesc is used to describe one PnfInstance.
- SrvVlDesc is derived from ResourceDesc, SrvVlInstance is derived from ResourceInstance. Based on one SrvVlDesc, zero or more SrvVlInstance(s) can be instantiated.
- VnfDesc can be composed of one or more VnfcDesc(s) and zero or more VnfVlDesc(s). Correspondingly, VnfInstance can be composed of zero or more VnfcInstance(s) and zero or more VlInstance(s). It should be noted that a VnfInstance comprises zero VnfcInstance is a special case that the VnfInstance object is created but not instantiated.
- Based on one VnfVlDesc, zero or more VlInstance(s) can be instantiated. And Based on one VnfcDesc, zero or more VnfcInstance(s) can be instantiated.
VnfDesc General View Diagram
NOTE: This diagram is a proposed model for the VnfDesc, mainly inspired by the model from ETSI IFA015. Not all elements in the VnfDesc are depicted.
- VnfcDesc is composed of one or more DeploymentFlavor(s), one or more VnfcDesc(s), one or more VnfExtCpDesc(s) and zero or more VnfVlDesc(s).
- DeploymentFlavor references VnfcDesc and VnfVlDesc.
- VnfcDesc is composed of one VirtualComputeDesc, one or more VirtualStorageDesc(s), zero or more SwImageDesc(s) and one or more VnfcCpDesc(s).
- A VirtualStorageDesc can reference a SwImageDesc.
- A VnfExtCpDesc references to a VnfcCpDesc.
- VnfcCpDesc can reference a VnfVlDesc.
Attribute Comparison
This section compares the different IM design from different sources.
VNFC Run Time Model
...
Xu Yang: Need specification/reference for the value of this attribute? Xu Yang: Should the attribute name aligned to "vnfc"?
James Forsyth: No, in a network function we should not care if it's physical or virtual
...
Xu Yang: Should the attribute name aligned to "vnfc"?
James Forsyth No, in a network function we should not care if it's physical or virtual
...
Xu Yang: need further clarification on how this attribute is used
James Forsyth: Service assurance systems use this status in their logic to determine the provisioning status. Values such as: PROVISIONED, PREPROVISIONED, CAPPED might be stored in this attribute
...
Xu Yang: Is it the same as vnfcState (i.e., start or stop)?
James Forsyth: Used for lifecycle management. We don't know what vnfcState is.
Xu Yang: vnfcState describes the state of a VNFC instance, possible values are: STARTED, STOPPED. STARTED means the VNFC instance is up and running, and STOPPED means the VNFC instance has been shut down (but not terminated/deleted). Similar to the VM power on/off concept.
...
Xu Yang: Is this attribute mandatory? and applicable for all kinds of VNFCs?
James Forsyth: Not mandatory and this field should be deprecated in ONAP
...
Pamela Dragosh: DCAE monitors this flag. If set it does not "observe" alarms/traps/etc. during control loop.
...
Xu Yang: used by DCAE?
James Forsyth: There are closed loop actions that DCAE might have policies for, and operations can turn off those actions with this flag
Pamela Dragosh: Yes actually Policy has the rules that check for this. DCAE does not. DCAE does however check the in-maint flag.
...
Xu Yang: need further clarification on how this attribute is used
James Forsyth: In some applications, a two or more VMs or VNFCs is referred to by a name, and group-notation represents the name. Might want to use instance-group to replace this over time.
...
Xu Yang: Is it used internally in AAI? can be omitted in the general model.
James Forsyth: It's used internally in AAI to enforce concurrency control, other systems use it to pass to AAI on updates and delete operations. It can be omitted from the general model
...
VNFC Design Time Model
...
Xu Yang: Should the attribute name aligned to "vdu"?
...
Xu Yang: not fully aligned, need to analysis which information need to be exposed
...
Xu Yang: aligned with AAI model
...
Describes network connectivity between a VNFC instance (based on this Vdu) and an internal Virtual Link (VL).
...
Describes CPU, Memory and acceleration requirements of the Virtualisation Container realising this Vdu.
...
Describes storage requirements for a VirtualStorage instance attached to the virtualisation container created from virtualComputeDesc defined for this Vdu.
...
The key indicates the boot index (lowest index defines highest boot priority). The Value references a descriptor from which a valid boot device is created e.g. VirtualStorageDesc from which a VirtualStorage instance is created.
...
Describes constraints on the NFVI for the VNFC instance(s) created from this Vdu.
...
Defines the virtualised resources monitoring parameters on VDU level.
...
Describes the configurable properties of all VNFC instances based on this VDU.
...
Specifies affinity or anti-affinity rules applicable between the virtualisation containers (e.g. virtual machines) to be created based on this VDU.
...
Identifier(s) of the affinity or anti-affinity group(s) the VDU belongs to.
VNF Run Time Model
...
Xu Yang: use case for alternative name?
James Forsyth: Customer want aliases, so this is an alias for a VNF
...
Xu Yang: Is there any reference/specification for the value of this attribute?
James Forsyth: This attribute should be deprecated, it was used prior to SDC modelling
...
Xu Yang: deprecated?
James Forsyth:
This attribute should be deprecated, it was used prior to SDC modelling
...
Xu Yang: Need clarification, similar to vnfc instance model.
James Forsyth: Service assurance systems use this status in their logic to determine the provisioning status. Values such as: PROVISIONED, PREPROVISIONED, CAPPED might be stored in this attribute
...
Xu Yang: Need clarification on how this attribute is used.
James Forsyth: Used for lifecycle management.
Xu Yang: Are the valid values "in-service-path" and "out-of-service-path"? Don't understand what do these values mean, in use or not in use by a service?
...
Xu Yang: deprecated?
James Forsyth Yes
...
Xu Yang: Please clarify the usage of this attribute.
James Forsyth: Deprecated
...
Xu Yang: only used by SO?
James Forsyth: Used by anyone who wants to check it, set by SO
Xu Yang: could you elaborate more on the valid values and their meaning?
...
Xu Yang: only used by SO?
James Forsyth: Not being used anymore, deprecated.
...
Xu Yang: only used by VCE?
James Forsyth: Predates SDC modelling, deprecated
...
Xu Yang: Need clarification on how this attribute is used.
James Forsyth: indicates who manages a specific resource, whether it's the service provider or a customer
...
Xu Yang: Is this attribute mandatory? and applicable for all kinds of VNFs? (same question as VNFC instance model)
James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF
...
Xu Yang: same as above
James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF
...
Xu Yang: same as above
James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF
...
Xu Yang: same as above
James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF
...
Xu Yang: only used by uCPE?
James Forsyth: Yes
...
Xu Yang: only used by uCPE?
James Forsyth: Yes
...
Xu Yang: only used by uCPE?
James Forsyth: Yes
...
Xu Yang: only used by uCPE?
James Forsyth: Yes
...
Xu Yang: only used by uCPE?
James Forsyth: Yes
...
Xu Yang: only used by uCPE?
James Forsyth: Yes
...
Xu Yang: Is it used internally in AAI? can be omitted in the general model.
James Forsyth: It's used internally in AAI to enforce concurrency control, other systems use it to pass to AAI on updates and delete operations
...
Xu Yang: deprecated?
James Forsyth: Yes
...
Xu Yang: deprecated?
James Forsyth Yes
...
Xu Yang: deprecated?
James Forsyth Yes
...
Xu Yang: deprecated?
James Forsyth Yes
...
Xu Yang: deprecated?
James Forsyth Yes
...
Xu Yang: It seems to be used internally in AAI, need clarification on the usage of this attribute.
James Forsyth Deprecated, use model-version-id
...
Xu Yang: Is it used internally in AAI? Can be omitted in general model
James Forsyth It's never been populated, yes can be omitted
...
Xu Yang: Is it used internally in AAI? Can be omitted in general model
James Forsyth It's never been populated, yes can be omitted
...
Xu Yang: Please clarify the usage of this attribute.
James Forsyth Has to do with routing, not applicable for all VNFs
...
Xu Yang: What's the difference between vnf-type and nf-type?
James Forsyth - we are getting rid of vnf-type and replacing with nf-type, nf-function, and nf-role
...
Xu Yang: what controller?
James Forsyth: Not sure if it's being populated
...
Xu Yang: Is this attribute mandatory? and applicable for all kinds of VNFs?
James Forsyth There should be an edge to a network that has a gateway assigned to it, so this attribute should be deprecated
...
Xu Yang: same as above
James Forsyth There should be an edge to a network that has a gateway assigned to it, so this attribute should be deprecated
...
Xu Yang: only used by VCE?
James Forsyth Not sure
...
Xu Yang: Is the description correct?
James Forsyth - The edge rules has the exhaustive list of possible relationships for generic-vnf
...
relationship with l-interface, availability-zone, lag-interface, l3-network, pserver, vserver, service-instance, vf-module, volume-group, vnfc and logical-link
...
"Y" indicates operator-supplied VNF instance target deployment node required. Present prompt to operator: "Enter target node for deployment of this VNF instance"
...
"Y" indicates operator-supplied VNF name required. Present prompt to operator: "Enter the name for this VNF instance"
...
Software version of the VNF. This is changed when there is any change to the software that is included in the VNF
Package.
...
Name to identify the VNF Product. Invariant for the VNF Product lifetime.
...
Identifier of the specific VNF Package on which the VNF is based.
...
Possible values: NOT_INSTANTIATED (VNF instance is terminated or not instantiated, and the identifier of the VNF instance exists), INSTANTIATED (VNF instance is instantiated).
...
Information specific to an instantiated VNF instance. Shall be present if the VNF is in INSTANTIATED instantiation state.
...
Additional VNF-specific metadata describing the VNF instance.
...
VNF-specific attributes that affect the lifecycle management of this VNF instance by the VNFM, or the lifecycle management scripts.
VNF Design Time Model
...
Human readable name for the VNF Product. Can change during the VNF Product lifetime.
...
Xu Yang: need clarfication on how this attribute is used.
...
Software version of the VNF. This is changed when there is any change to the
software that is included in the VNF Package.
...
Identifies VNFM(s) compatible with the VNF described in this version of the
VNFD.
...
Information about localization languages of the VNF (includes e.g. strings in the
VNFD).
...
Defines descriptors of virtual compute resources to be used by the VNF.
...
Defines descriptors of virtual storage resources to be used by the VNF.
...
Represents the type of network connectivity mandated by the VNF provider between two or more CPs which includes at least one internal CP.
...
Describes external interface(s) exposed by this VNF enabling connection with a VL.
...
Describes specific DF(s) of a VNF with specific requirements for capacity and
performance.
...
Describes the configurable properties of the VNF (e.g. related to auto scaling and
auto healing).
...
Describes the modifiable attributes of the VNF.
...
Includes a list of events and corresponding management scripts performed for the VNF.
...
Describes the associated elements (i.e. VDUs and/or VLs) of a VNFD for a certain purpose during VNF lifecycle management.
...
Xu Yang: Indicators are vendor-specified information which can indicate the VNF behaviour.
...
Declares the VNF indicators that are supported by this VNF.
...
Rule that determines when a scaling action needs to be triggered on a VNF
instance e.g. based on certain VNF indicator values or VNF indicator value
changes or a combination of VNF indicator value(s) and monitoring parameter(s).
...
PNF Run Time Model
...
PNF Design Time Model
...
Network Run Time Model
...
Network Design Time Model
ExternalVirtualLink Design Time Mode
...
is the resource instance referred to the run-time resource instance? If it is in the run-time, why is it in the design time?
...
Identifier of the resource instance (uuid of the specific use of the resource model in this service). This identifier is regenerated whenever a user makes a change on the resource instance.
...
Metadata of resources (VFs, VFCs, PNF) will include new field resourceVendorModelNumber. The value for this field is the part number defined by the vendor, e.g. “MX960”.
...
ExternalVirtualLink Run Time Model
...
ETSI IFA013
(VirtualLink)
...
Content:
Child pages (Children Display) |
---|