Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


4.2.1 changes fix some issues around VipCP and supporting OsContainer based VNFs

Changes from v4.1.1 ETSI IFA011 v3.3.1 & v4.1.1 Changes to ONAP Resource Model.

View file
nameONAP ETSI-Alignment Resource IM-v4.2.1.pptx
height250

New Classes/Types:

  1. New Class OsContainerDesc which describes the member properties of a set of co-located container compute resources when these are realizing a VDU

    The osContainerDesc  element(s) are listed in the VNF Descriptor and referenced by the VDU element(s).  Each VDU may be made up of group of containers, often called a "pod".

    Attribute

    Qualifier

    Cardinality

    Content

    Description

    osContainerDescId

    M

    1

    Identifier

    Unique identifier of this OsContainerDesc in the VNFD.

    requestedCpuResources

    M

    0..1

    Integer

    Number of CPU resources requested for the container (e.g. in milli-CPU-s)

    requestedMemoryResources

    M

    0..1

    Number

    Amount of memory resources requested for the container (e.g. in MB).

    requestedEphemeralStorageResources

    M

    0..1

    Number

    Size of ephemeral storage resources requested for the container (e.g. in GB).

    extendedResourceRequests

    M

    0..N

    Not specified

    An array of key-value pairs of extended resources required by the container.

    See note.

    cpuResourceLimit

    M

    0..1

    Integer

    Number of CPU resources the container can maximally use (e.g. in milli-CPU).

    memoryResourceLimit

    M

    0..1

    Number

    Amount of memory resources the container can maximum use (e.g. in MB).

    ephemeralStorageResourceLimit

    M

    0..1

    Number

    Size of ephemeral storage resources the container can maximum use (e.g. in GB).

    swImageDesc

    M

    1

    Identifier (Reference to SwImageDesc)

    Describes the software image realizing this OS container.

    bootData

    M

    0..1

    Not specified

    Contains a string or a URL to a file contained in the VNF package used to customize a container resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent.

    virtualStorageDesc

    M

    0..N

    Identifier (Reference to VirtualStorageDesc)

    Links to virtualStorageDesc-s of the Vdu. The storages represented by the linked VirtualStorageDesc-s are attached to the OS Container as volumes. Shall be present in case the OS container requires storage resources.

    monitoringParameters

    M

    0..N

    MonitoringParameter

    Specifies the virtualised resource related performance metrics on the OsContainerDesc level to be tracked by the VNFM. MonitoringParameter is defined in clause 7.1.11.3.

    NOTE:     Extended resources are to describe any type of resource provided by the container infrastructure. One example implementation of extended resources are “Extended Resources” in case the container infrastructure service is a Kubernetes® instance.

    New Class MciopProfile which describes properties of the Managed Container Infrastructure Object Package (MCIOP) which are used during deployment of containerized workloads based on a MCIOP, associated to a VNF deployment flavour.   An MCIOP is a hierarchical aggregate of information objects for OS container management and orchestration. Multiple MCIOPs can be included in a VNF Package.  The MCIOP is expected to be realized by a Helm chart.

    Each VnfDf in the VNF Descriptor would list the appropriate mciopProfiles.

    Attribute

    Qualifier

    Cardinality

    Content

    Description

    mciopId

    M

    1

    Identifier

    Identifies the MCIOP in the VNF package.

    deploymentOrder

    M

    0..1

    Integer

    Indicates the order in which this MCIOP shall be deployed in relation to other MCIOPs. A lower value specifies an earlier deployment.

    affinityOrAntiAffinityGroupId

    M

    0..N

    Identifier (Reference to AffinityOrAntiAffinityGroup)

    References the affinity or anti-affinity group(s) the MCIOP belongs to.

    See note.

    associatedVdu

    M

    0..N

    Identifier (Reference to Vdu)

    List of VDUs which are associated to this MCIOP and which are deployed using this MCIOP.

    NOTE: Each identifier references an affinity or anti-affinity group which expresses affinity or anti-affinity relationships between the containerized workloads to be created using this MCIOP and the containerized workloads to be created using other MCIOP(s) in the same group.

    New Class  VirtualCpd.  New datatypes AdditionalServiceData and ServicePortData 

    VirtualCpd - A type of Cpd that describes a requirement to create a virtual connection point allowing the access to a number of VNFC instances (based on their respective VDUs).

    Attribute

    Qualifier

    Cardinality

    Content

    Description

    vdu

    M

    1..N

    Identifier (Reference to Vdu)

    References the VDU(s) which implement this service. 

    additionalServiceData

    M

    0..N

    AdditionalServiceData

    Additional service identification data of the VirtualCp exposed to NFV-MANO.

    (inherited attributes)

    All attributes inherited from Cpd.
    See note.

    NOTE: If this VirtualCp represents a load balancing virtual IP address of a VNFC realized by one or a set of OS containers and the IP address is configurable in the declarative descriptor of the corresponding MCIO, the attribute iPAddressAssignment shall be set to value=true in the L3AddressData.

    AdditionalServiceData

    Attribute

    Qualifier

    Cardinality

    Content

    Description

    portData

    M

    1..N

    ServicePortData

    Service port numbers exposed by the VirtualCp.

    serviceData

    M

    0..1

    Not specified

    Service matching information exposed by the VirtualCp.

    See note.

    NOTE:     This attribute shall only be present if additional information is needed to identify the service termination within the VNF, such as for example a url path information in an HTTP request required to allow a single VirtualCp IP address to be used for several HTTP based services that use the same portnumber.

    ServicePortData

    Attribute

    Qualifier

    Cardinality

    Content

    Description

    name

    M

    1

    String

    The name of the port exposed by the VirtualCp.

    protocol

    M

    1

    Enum

    The L4 protocol for this port exposed by the VirtualCp.

    VALUES:

    ·       TCP

    ·       UDP

    ·       SCTP

    port

    M

    1

    Integer

    The L4 port number exposed by the VirtualCp.

    portConfigurable

    M

    1

    Boolean

    Specifies whether the port attribute value is allowed to be configurable.

Other changes:

  1. New property vnfd::osContainerDesc of type OsContainerDesc with cardinality 0..N which defines descriptors of container compute resources to be used by the VNF when the VDUs of the VNF are realized by a set of OS Containers sharing the same host and same networking namespace.  Only one of virtualComputeDesc or osContanerDesc may be present in the vnfd
  2. New property vnfd::virtualCpd which describes a virtual connection point(s) allowing to access a set of VNFC instances (based on their respective VDUs).
  3. New property VnfExtCpd::virtualCpd which references the Virtual CPD which is used to describe a virtual connection point allowing to access a set of VNFC instances (based on their respective VDUs). 
  4. New property vdu::osContainerDesc of type identifier (Reference to osContainerDesc) with cardinality 0..N which describes CPU, memory requirements and limits, and software images of the OS Containers realizing this Vdu corresponding to OS Containers sharing the same host and same network namespace. Each unique identifier is referenced only once within one VDU.
  5. Modification of VduCpd::vnictype to include several new types (BRIDGE, IPVLAN, LOOPBACK, MACVLAN, PTP, VLAN, HOST-DEVICE)
  6. Modification to the cardinality of SwImageDesc::diskFormat, SwImageDesc::minDisk to allow cardinality of 0..N
  7. New property VndDf::mciopProfile of type mciopProfile with cardinality 0..N which describes additional instantiation data for the MCIOPs used in this deployment flavour. This attribute shall be present if the DF references containerized workloads based on a MCIOP.
  8. New property VirtualStorageDesc::volumeTemplate of type Boolean with cardinality 0..1 which indicates whether the virtual storage descriptor shall be used as template, i.e. if the virtual storage resource shall be instantiated per VNFC instance. If the value is true (default), a persistent virtual storage resource shall be instantiated for each VNFC instance that is based on a VDU referring to this virtual storage descriptor. If the value is false, a single persistent virtual storage resource shall be instantiated with a lifetime independent of the lifetime of individual VNFC instances based on a VDU referring to this virtual storage descriptortype VipCpProfile

Attribute Name

Type

Mult.

Access

Stereotypes

Description

vipCpdId

Identifier

1

RW

OpenModelAttribute

·  isInvariant: false

·  valueRange:  no range constraint

·  support:  MANDATORY

 Uniquely references a VIP CPD.


minNumberOfInstances

Integer

1

RW

OpenModelAttribute

·  isInvariant: false

·  valueRange:  no range constraint

·  support:  MANDATORY

 Minimum number of instances of the VIP CP based on the referenced VIP CPD that is permitted to exist for this flavour. Shall be zero or greater.


maxNumberOfInstances

Integer

1

RW

OpenModelAttribute

·  isInvariant: false

·  valueRange:  no range constraint

·  support:  MANDATORY

 Maximum number of instances of the VIP CP based on the referenced VIP CPD that is permitted to exist for this flavour. Shall be greater than zero and not less than the value of "minNumberOfInstances".


2.New type VipCpLevel

Attribute Name

Type

Mult.

Access

Stereotypes

Description

vipCpdId

Identifier

1

RW

OpenModelAttribute

·  isInvariant: false

·  valueRange:  no range constraint

·  support:  MANDATORY

 Uniquely references a VIP CPD.

numberOfInstances

Integer

1

RW

OpenModelAttribute

·  isInvariant: false

·  valueRange:  no range constraint

·  support:  MANDATORY

 Number of VIP CP instances based on the referenced VipCpd to deploy for an instantiation level or for a scaling delta. Shall be zero or greater.

3. New type LcmCoordinationActionMapping

Attribute Name

Type

Mult.

Access

Stereotypes

Description

vnfLcmOperation

invalid

1

RW

OpenModelAttribute

·  isInvariant: false

·  valueRange:  no range constraint

·  support:  MANDATORY

 Identifies the specific VNF LCM operation. VALUES: • INSTANTIATE • SCALE • SCALE_TO_LEVEL • CHANGE_FLAVOUR • TERMINATE • HEAL • OPERATE • CHANGE_EXT_CONN • MODIFY_INFO • CREATE_SNAPSHOT • REVERT_TO_SNAPSHOT Note: The value "CHANGE_VNFPKG" is part of this value set as the coordination actions for the "ChangeCurrrentVnfPkg" are modelled separately in the "VnfPackageChangeInfo" information element.

coordinationActionName

Identifier

1

RW

OpenModelAttribute

·  isInvariant: false

·  valueRange:  no range constraint

·  support:  MANDATORY


Other changes:

  1. New property Vnfd::vnfdExtInvariantId of type Identifier -Identifies a VNFD in a version independent manner. This attribute is invariant across versions of the VNFD that fulfill certain conditions related to the external connectivity and management of the VNF. Different versions of a VNFD have different vnfdIds but can have the same vnfdExtInvariantId. Different versions of the VNFD with the same vnfdExtInvariantId shall expose:
    • same external connectivity, i.e. same number of vnfExtCpds and same identifiers

    • same VNFD attributes used in an NSD when referring to this VNFD:

      • VNF deployment flavours, VNF instantiation levels: in both cases the identifiers and the number of them shall be the same, but the content of e.g. a particular deployment flavour can change
      • VNF indicators: same identifiers and possible values
      • ScaleInfo: same scalingAspects identifiers and same levels per scalingAspect

    This condition implies that VNFDs with the same vnfdExtInvariantId preserve external invariancy. Therefore, fulfilling this condition allows to use a different version of a VNFD in an NS instance without modification of the NSD on which the NS instance is based. The use of a different version is ultimately under the control of the service provider and it should consider if the NSD fulfils the requirements of the VnfExtCpds (e.g. bitrate, IP version, etc.).

  2. New property Vdu::logicalNode of type LogicalNodeRequirement - The logical node requirements.
  3. New property Vdu::requestAdditionalCapabilities of type RequestedAdditionalCapabilityData - Specifies requirements for additional capabilities. These can be for a range of purposes. One example is acceleration related capabilities.
  4. New property Vdu::mcioConstraintParams of type Enum - The parameter names for constraints expected to be assigned to MCIOs realizing this Vdu. The value specifies the standardized semantical context of the MCIO constraints and the parameter names for the MCIO constraints in the MCIO declarative descriptor. The mcioConstraintParams attribute shall have one of the following values, expressing the associated semantical context.
    • affinityNfviPop

    • affinityZone

    • affinityZoneGroup

    • affinityNfviNode

    • affinityCisNode

    • antiAffinityNfviPop

    • antiAffinityZone

    • antiAffinityZoneGroup

    • antiAffinityNfviNode

    • antiAffinityCisNode

    • localAffinityNfviPop

    • localAffinityZone

    • localAffinityZoneGroup

    • localAffinityNfviNode

    • localAffinityCisNode

    • localAntiAffinityNfviPop

    • localAntiAffinityZone

    • localAntiAffinityZoneGroup

    • localAntiAffinityNfviNode

    • localAntiAffinityCisNode

    • nodeAdditionalCapabilitySsd

    • nodeAdditionalCapabilityDpdk

    • nodeAdditionalCapabilitySriov

    • nodeAdditionalCapabilityGpu

    • nodeAdditionalCapabilityFpga

    • nodeAdditionalCapabilityCpuPin

    • nodeCapabilityLogicalNuma

    • nodePool

  5. New property VnfDf::vipCpProfile of type VipCpProfile - Defines the minimum and maximum number of VIP CP instances created from each of the VipCpds used in this flavour. Shall be present if the deployment flavour can contain VIP CP instances.
  6. New property VnfDf::supportedCoordinationActions of type LcmCoordinationActionMapping - References applicable LCM coordination actions that can be invoked during each of the listed VNF LCM operations.
  7. New property InstantiationLevel::vipCpLevel of type VipCpLevel - Indicates the number of VIP CP instances based on a particular VipCpd to be part of this level. If a particular VipCpd is defined with minNumberOfInstances= maxNumberOfInstances=1 in the vipCpProfile of the DF, that vipCpd may be omitted from the "vipCpLevel" attribute, which shall be interpreted that one related VIP CP instance is part of this level.
  8. Changed VirtualStorageDesc::volumeTemplate property name to VirtualStorageDesc::perVnfcInstance
  9. New property ScalingDelta::vipCpDelta of type VipCpLevel - Number of VIP CP instances based on a particular VipCpd to be created or removed.
  10. New property VipCpd::intVirtualLinkDesc of type Identifier - Reference of the internal VLD which this VipCpd connects to.
  11. New property VipCpd::dedicatedIpAddress of type Boolean - If set to true, it indicates that the VIP address shall be different from the addresses allocated to all of the VduCp instances associated to it. If set to false, the VIP address shall be the same as one of the VduCp instances associated to it.

GenDoc Output:

View file
nameVnfModel-2021-0109-0717-105307111450.docx
height250150