Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

New name for "VDU"

ETSI & ONAP Info Models: VDU is a deployment unit; includes a piece of application logic (VFC) and requirements for infrastructure resources

Data Model: a narrower definition of VDU; it is very infrastructure-oriented, all that application has been shifted to the VFC resource. So maybe we find another name for this infrastructure-level resource in the Data Model. What would it be: Container? Hosting? anything else?

After the renaming, IM VDU --> ONAP VFC+"Container"



VDU is a special resource that represents an infrastructure-level unit of execution environment, carrying the following functions:

  • ability to host a piece of application-level logic (VNFC)
  • specifies an image to launch from
  • concentrates the requirements for infrastructure resources: CPU, memory, IO, storage, networking


ONAP Data Model Normatives
node_types:
  # the very base of the hierarchy of VDU types
  onap.nodes.VDU:
    derived_from: onap.nodes.Resource
    artifacts:
      vdu_image:
        type: tosca.artifacts.Deployment
        description: an image used to launch the VDU
    interfaces:
      Standard:
        start: 
          implementation: vdu_image
    capabilities:
      host:
        type: tosca.capabilities.Container  # the TOSCA Specs type is good enough
        occurrences: [0..UNBOUNDED]
    requirements:
      - cpu:
          capability: onap.capabilities.infrastructure.CPU:
          occurrences: [0..1]
      - memory:
          capability: onap.capabilities.infrastructure.Memory:
          occurrences: [0..UNBOUNDED]
      - storage:
          capability: onap.capabilities.infrastructure.Storage:
          occurrences: [0..UNBOUNDED]
      - io:
          capability: onap.capabilities.infrastructure.IO:
          occurrences: [0..UNBOUNDED]
      - nic:
          capability: onap.capabilities.infrastructure.NIC:
          occurrences: [0..UNBOUNDED]

Please note that VDU is derived from Resource, and thus inherits a requirement for a host. This way we are able to model the situations when a container is hosted by another container, for example a docker container running on a specific VM.



To create a reusable VDU customization, create a sub-type:

Sample VDU sub-type - more details
  # a more concrete VDU type
  onap.nodes.sample.MyVDU:
    derived_from: onap.nodes.VDU
    artifacts:
      vdu_image:
        type: tosca.artifacts.Deployment.Image.VM.ISO
        file: http://the.url.of/the.image.iso
    interfaces:
      Standard:
        start: 
          implementation: image
    capabilities:
      host:
        type: onap.capabilities.Container
    requirements:
      - cpu:
          capability: onap.capabilities.infrastructure.CPU:
          occurrences: [0..UNBOUNDED]
      - memory:
          capability: onap.capabilities.infrastructure.Memory:
          occurrences: [0..UNBOUNDED]
      - storage:
          capability: onap.capabilities.infrastructure.Storage:
          occurrences: [0..UNBOUNDED]
      - io:
          capability: onap.capabilities.infrastructure.IO:
          occurrences: [0..UNBOUNDED]
      - nic:
          capability: onap.capabilities.infrastructure.NIC:
          occurrences: [0..UNBOUNDED]


A VDU node in a VNF topology:

VDU node
node_templates:
  vdu_123:
    type: onap.nodes.sample.MyVDU
    capabilities:
      host:  # just saying...
    requirements:
      - memory:
          node_filter:
            capabilities:
              - onap.capabilities.infrastructure.Memory:
                  properties:
                    - mem_size: {greater_or_equal: 2MB}
      
      - cpu:
          node_filter:
            capabilities:
              - onap.capabilities.infrastructure.hpa.CPU:
                  properties:
                    - schema_selector:
                        constraints:  # fixed value for this vendor
                          - equal_to: Intel64 
                    - schema_version:
                        constraints:
                          - greater_or_equal: 2.0
                    - custom_features:
                        constraints:
                          - schema: http://json.schema.url



VFCs meet VDUs:

VFCs meet VDUs
node_templates:
  vdu_123:
    type: onap.nodes.VDU
    capabilities:
      host:
        #....
  
  vfc_1:
    type: onap.nodes.Resource
    requirements:
      - host:
          node: vdu_123
          capability: host
          
  vfc_2:
    type: onap.nodes.Resource
    requirements:
      - host:
          node: vdu_123
          capability: host




See also: Hardware Platform Requirements


  • No labels