Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VDU.Compute |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.Vdu.Compute:
derived_from: tosca.nodes.Root
properties:
#id:
# node name
name: # align with the IM, please refer to https://wiki.onap.org/display/DW/Design+Time+Model+Clean+Version#DesignTimeModelCleanVersion-Class:VDU/VDUDesc
type: string
required: true
description:
type: string
required: true
boot_order:
type: map # explicit index (boot index) not necessary, contrary to IFA011. In the IM, it shoul be a array of KeyValuePair/NameValuePair
entry_schema:
type: string
required: false
nfvi_constraints:
type: map # Align with IM, it shoul be a array of KeyValuePair/NameValuePair
entry_schema:
type: string
required: false
configurable_properties:
type: map #In the IM, the multipilicity of VnfcConfigurableProperties is 1, not a map.
entry_schema:
type: tosca.datatypes.nfv.VnfcConfigurableProperties
required: true
vdu_profile:
type: tosca.datatypes.nfv.VduProfile
required: true
inject_files: #Aligned # Used for vCPE usecase Aligned with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: list tosca.datatypes.nfv.injectFile
entry_schemarequired:
false #Aligned with ONAP R2 IM. it should type: stringbe false.
#injectmeta_filesdata: is not enough, suggest#metadata attached to bethe aVM structure.or TBD.container
requiredtype: false map
#Aligned with ONAP R2 IM. it shouldentry_schema:
be false.
#attributes: NOT DEFINED IN ONAP IM and SOL001
#private_address:
type: string
# statusrequired: deprecatedfalse
#publicuser_addressdata:
#cloudinit userdata script #support
status: deprecated
type: #networks:string
# statusrequired: deprecatedfalse
#ports#attributes:
NOT DEFINED IN #ONAP IM status:and deprecatedSOL001
capabilities:
virtual#private_computeaddress:
# typestatus: tosca.capabilities.nfv.VirtualComputedeprecated
virtual#public_bindingaddress:
# typestatus: tosca.capabilities.nfv.VirtualBindabledeprecated
occurrences#networks:
[1, UNBOUND]
# monitoring_parameterstatus: deprecated
#ports:
# typestatus: tosca.capabilities.nfv.Metric # this is not a very clear data structure enough to be coded, suggest to be annotated.deprecated
capabilities:
virtual_compute:
type: tosca.capabilities.nfv.VirtualCompute
occurrencesvirtual_binding: [0,UNBOUND]
requirements:
- virtual_storage:type: tosca.capabilities.nfv.VirtualBindable
occurrences: capability: tosca.capabilities.nfv.VirtualStorage[1, UNBOUND]
monitoring_parameter: relationship: tosca.relationships.nfv.Vdu.AttachedTo
nodetype: tosca.nodescapabilities.nfv.VDU.VirtualStorage
Metric # this is not a very occurences: [ 0, UNBOUNDED ]
artifacts: clear data structure enough to be coded, suggest to be annotated.
occurrences: [0,UNBOUND]
requirements:
- swvirtual_imagestorage:
filecapability: tosca.capabilities.nfv.VirtualStorage
typerelationship: tosca.artifactsrelationships.nfv.SwImage | Code Block |
---|
|
language | xml |
---|
title | .Vdu.AttachedTo
node: tosca.nodes.nfv.VDU.VirtualStorage | linenumbers | true |
---|
collapse | true |
---|
tosca.nodes.nfv.Vdu.VirtualStorage:
derived_from: tosca.nodes.Root
properties:
#id:
# node name
occurences: [ 0, UNBOUNDED ]
artifacts:
type_of_storage- sw_image:
type: string
constraints:
- valid_values: [volume, object]
required: true
size_of_storage:
file:
type: tosca.artifacts.nfv.SwImage |
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VDU.VirtualStorage |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.Vdu.VirtualStorage:
derived_from: tosca.nodes.Root
properties:scalar-unit.size
required: true
vdu_storage_requirements#id:
# node name
type_of_storage: map
requiredtype: falsestring
rdma_enabledconstraints:
- type: booleanvalid_values: [volume, object, root, block]
required: false
true capabilities:
virtualsize_of_storage:
type: tosca.capabilities.nfv.VirtualStoragescalar-unit.size
artifacts:
required: true
vdu_storage_requirements:
- sw_imagetype: map
required: file:false
rdma_enabled:
type: boolean
required: false
typecapabilities: tosca.artifacts.Deployment.Image | Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.Cp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.Cp
virtual_storage:
derived_from type: tosca.capabilities.nodesnfv.Root VirtualStorage
artifacts: properties:
- layersw_protocolimage:
typefile:list
entry_schema:
constraints:
- valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
type: tosca.artifacts.Deployment.Image
#interfaces: # not needed for virtualstroage. it doesn't support cloudinit.
# cloudinit:
# required:true
role: #Name in ETSI NFV IFA011 v0.7.3 cpRole
type:string
constraints:
- valid_values: [ root, leaf ]
required:false
description:
type: string
required: false
protocol_data:
type: list
entry_schema:
type: tosca.datatypes.nfv.CpProtocolData
required:true
trunk_mode:
type: boolean
required: true
allowed_address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: tosca.datatypes.nfv.AddressData # In the IM, it is a array, but here it is not a array. TBD.
required: falsetype:tosca.interfaces.nfv.vdu.cloudinit |
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.Cp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.Cp:
derived_from: tosca.nodes.Root
properties:
layer_protocol:
type:list
entry_schema | Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VduCp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VduCp:
derived_from: tosca.nodes.nfv.Cp
properties:
bitrate_requirement:
type: integer
required:false
vnic_name: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: string
required:false
vnic_order: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: integer
required:false
vnic_type: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0
type: string
constraints:
- valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
required:false
virtual_network_interface_requirements:
type: list
entry_schema:
type: VirtualNetworkInterfaceRequirements
required:false
# order: #there is no this attribute in IM.
# type: integer
# required: false
# constraints:
# - greater_or_equal: 0
requirements:
- virtual_linkconstraints:
- capability: tosca.capabilities.nfv.VirtualLinkable
valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
relationship: tosca.relationships.nfv.VirtualLinksTorequired:true
role: #Name in ETSI NFV IFA011 node: tosca.nodes.nfv.VnfVirtualLinkDesc v0.7.3 cpRole
type:string
- virtual_bindingconstraints:
- capability: tosca.capabilities.nfv.VirtualBindable
valid_values: [ root, leaf ]
relationship: tosca.relationships.nfv.VirtualBindsTorequired:false
description:
node: tosca.nodes.nfv.Vdu.Compute | Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VnfExtCp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VnfExtCp:
derived_from: tosca.nodes.nfv.Cp
properties:type: string
required: false
virtual_network_interface_requirementsprotocol_data:
type: list
entry_schema:
type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirementsCpProtocolData
required: false
requirements:
- external_virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
true
trunk_mode:
type: boolean
required: true
allowed_address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0. relationship: tosca.relationships.nfv.VirtualLinksTo
node: tosca.nodes.nfv.VnfVirtualLink
- internal_virtual_link: #name in ETSI NFV IFA011 v0.7.3 intVirtualLinkDesc
capability: tosca.capabilities.nfv.VirtualLinkable
type: tosca.datatypes.nfv.AddressData # In the IM, it is a array, but here it is not a array. TBD.
relationship: tosca.relationships.nfv.VirtualLinksTo
node: required: false |
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VduCp |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VnfVirtualLinkVduCp:
occurrences: [ 0, 1 ] # 0 if re-exposing a VduCp
derived_from: tosca.nodes.nfv.Cp
properties:
bitrate_requirement:
type: integer
required:false
vnic_name: # 1 ifAligned connectingwith toONAP an internal VL | Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VnfVirtualLink |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VnfVirtualLink:
derived_from: tosca.nodes.Root
properties:
connectivity_type:
type: tosca.datatypes.nfv.ConnectivityType
required: true
description:R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: string
required:false
vnic_order: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0.
type: stringinteger
required: false
testvnic_accesstype:
# Aligned with ONAP R2 Im. type:not list
defined in IFA011 v2.4.1 and entry_schema:SOL001 v0.6.0
type: string
constraints:
required: false
- vlvalid_profilevalues:
[normal, macvtap, direct, baremetal, type: tosca.datatypes.nfv.VlProfiledirect-physical, virtio-forwarder]
required:false
true
capabilities:
virtual_network_interface_requirements:
monitoring_parametertype: list
# this is notentry_schema:
a very clear data structure enough to be coded, suggest to be annotated.
type: VirtualNetworkInterfaceRequirements
required:false
# typeorder: tosca.capabilities.nfv.Metric
#there occurrences: [0,UNBOUND]
virtual_linkable:is no this attribute in IM.
# type: tosca.capabilities.nfv.VirtualLinkableinteger
# required: false
# constraints:
# - greater_or_equal: 0
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
node: tosca.nodes.nfv.VnfVirtualLink
- virtual_binding:
capability: tosca.capabilities.nfv.VirtualBindable
relationship: tosca.relationships.nfv.VirtualBindsTo
node: tosca.nodes.nfv.Vdu.Compute |
Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VnfVirtualLink |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VnfVirtualLink:
derived_from: tosca.nodes.Root
properties:
connectivity_type:
type: tosca.datatypes.nfv.ConnectivityType
| Code Block |
---|
language | xml |
---|
title | tosca.nodes.nfv.VDU.Composition |
---|
linenumbers | true |
---|
collapse | true |
---|
| # this node type is no long valid or applicable
# for now, the entire node definition is mark-off.
# Agree TO BE REMOVED, we have not agreed VDUcomposition in ONAP IM, It is not defined in SOL001, same properties and capabilities defined # in VDU.COMPUTE
# tosca.nodes.nfv.VDU.Composition:
# derived_from: tosca.nodes.root
# properties:
# name:
# type: string
# required: true
# description:
# type: string
# required: true
# boot_order:
# type: list
# entry_schema:
# type: string
# required: false
# nfvi_constraints:
# type: list
# entry_schema:
# type: string
# required: falsetrue
# configurable_propertiesdescription:
# type: mapstring
# entry_schema:
#required: false
test_access:
type: tosca.datatypes.nfv.VnfcConfigurableProperties
#list
requiredentry_schema:
true
# capabilities:
# virtual_computetype: string
# typerequired: tosca.capabilities.nfv.VirtualCompute
#false
virtualvl_storageprofile:
# type: tosca.capabilitiesdatatypes.nfv.VirtualStorage
# occurrences: [0,UNBOUNDED]
# requirements:
#VlProfile
required: true
capabilities:
- virtualmonitoring_linkparameter:
# capability: tosca.capabilities.nfv.VirtualLinkable
# # this is not a very clear data structure enough to be coded, suggest to be annotated.
relationshiptype: tosca.relationshipscapabilities.nfv.VirtualLinksToMetric
# node: tosca.nodes.nfv.VnfVirtualLinkDescoccurrences: [0,UNBOUND]
virtual_linkable:
# occurrences: [1,UNBOUNDED] type: tosca.capabilities.nfv.VirtualLinkable |
Code Block |
---|
firstline | 1 |
---|
title | tosca.nodes.nfv.VNF |
---|
linenumbers | true |
---|
collapse | true |
---|
| tosca.nodes.nfv.VNF:
derived_from: tosca.nodes.Root
properties:
descriptor_id: # instead of vnfd_id
type: string # GUID
required: true
descriptor_version: # instead of vnfd_version
type: string
required: true
provider: # instead of vnf_provider
type: string
required: true
product_name: # instead of vnf_product_name
type: string
required: true
software_version: # instead of vnf_software_version
type: string
required: true
product_info_name: # instead of vnf_product_info_name
type: string
required: false
product_info_description: # instead of vnf_product_info_description
type: string
required: false
vnfm_info:
type: list
entry_schema:
type: string
required: true
localization_languages:
type: list
entry_schema:
type: string
required: false
default_localization_language:
type: string
required: false
configurable_properties:
type: tosca.datatypes.nfv.VnfConfigurableProperties
required: false
modifiable_attributes:
type: tosca.datatypes.nfv.VnfInfoModifiableAttributes
required: false # true in IFA011, but all of members are false. Align with the IM, it is false
flavour_id:
type: string
required: true
flavour_description:
type: string
required: true
capabilities:
# monitoring_parameter:
# modelled as ad hoc capabilities in the VNF node template
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
node: tosca.nodes.nfv.VnfVirtualLink
occurrences: [ 0, UNBOUNDED ]
interfaces:
Nfv:
type: tosca.interfaces.nfv.vnf.lifecycle.Nfv |
|