Deployment Flavour as VNF Capability: Alt1_r3 May 31, 2017 Thinh Nguyenphu, Nokia [email protected] History: R1: based on each DF (different topology) would be represented in its own Service Template. And, All the common attributes of VNFD should be described in as properties within VNFD capability type. R2: update slide 7 R3: including examples 1 © Nokia 2017 Overview: VNF Node Type: tosca.nodes.nfv.VNF: (DF & VNFD as a VNF capabilities) VNF topology template: substtution_mappings: tosca.nodes.nfv.VNF capabilities: vnf_common: deployment_flavour requirements: virtual_link VNF tosca.nodes.nfv.VNF req VL interfaces node templates: tosca.nodes.nfv.VNF.Header tosca.nodes.nfv.VDU.Compute tosca.nodes.nfv.VDU.VirtualStorage tosca.nodes.nfv.VduCpd tosca.nodes.nfv.VL tosca.nodes.nfv.ExtCpd cap: vnf: deployment_flavour: Node Type Service template Note: tosca.nodes.nfv.VNF.Header is not a manageable entity, and DependOn relationship is required. 2 © Nokia 2017 tosca.nodes.nfv.VNF: derived_from: tosca.nodes.Root capabilities: vnf_common: type: tosca.capabilities.nfv.VNFD deployment_flavour: type: tosca.capabilities.nfv.VnfDeploymentFlavour #monitoring_parameter: # modeled as ad hoc capabilities in VNF node template requirements: - virtual_link: capability: tosca.capabilities.nfv.VirtualLinkable relationship: tosca.relationships.nfv.VirtualLinksTo node: tosca.nodes.nfv.VL occurrences: [ 0, UNBOUNDED ] # still under discussion: #interfaces: # Basic: # not to collide with Standard on tosca.nodes.Root # type: tosca.interfaces.nfv.vnf.lifecycle.Basic # Healable: # type: tosca.interfaces.nfv.vnf.lifecycle.Healable # Scalable: # type: tosca.interfaces.nfv.vnf.lifecycle.Scalable # Custom: # type: tosca.interfaces.nfv.vnf.lifecycle.Custom tosca.capabilities.nfv.VNFD: tosca.capabilities.nfv.VNFD: derived_from: tosca. capabilities.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 3 © Nokia 2017 tosca.capabilities.nfv.VnfDeploymentFlavour: 4 © Nokia 2017 tosca.capabilities.nfv.VnfDeploymentFlavour: derived_from: tosca.capabilities.Root properties: flavour_id: type: string # Identifier description: type: string required: true vdu_profile: type: map # key: VDU id entry_schema: type: tosca.datatypes.nfv.VduProfile required: true vl_profile: type: map # key: VL id entry_schema: type: map # key: VlFlavour id entry_schema: type: tosca.datatypes.nfv.VlProfile required: false instantiation_levels: type: map entry_schema: type: tosca.datatypes.nfv.InstantiationLevel required: true default_instantiation_level_id: type: string # Identifier required: true #supported_operations: # modeled as operations lcm_operations_configuration: type: tosca.datatypes.nfv.VnfLcmOperationsConfiguration required: false # true in IFA011, but all members are false #affinity_or_anti_affinity_groups: # modeled as policies #monitoring_parameters: # modeled as ad hoc capabilities in VNF node template scaling_aspects: type: map # key: aspectId entry_schema: type: tosca.datatypes.nfv.ScalingAspect required: false Using enhance substitution_mappings grammar (capabilities) Service template (VNF): top level VNF (abstract) VNF req req VNFDeploymentFlavour req req req property property interface interface req cap: DF cap: DF deployment_flavour cap: DF deployment_flavour (DF = Deployment Flavour) VNFDeploymentFlavour #1 req req VNFDeploymentFlavour #xyz req req req CP1 Note: substitution_mappings gramma enhancement in Simple YAML v1.2: Properties in substitution_mappings In-place capabilities in substitution_mappings Interfaces in substitution_mappings Indexed access of requirements in substitution_mappings req CP1 req CP2 cap: DF CP2 flavour_id: … VDU1 req cap: DF flavour_id: … VDU2 … … … … VDU3 … Service template (DF): lower level, only represent DF Overview: Without enhanced substitution_mappings grammar .. topology_template: substitution_mappings: node_type: tosca.nodes.nfv.VNF capabilities: vnf_common: [ header, vnf_common ] deployment_flavour: [ df, deployment_flavour ] requirements: - virtual_link: [ df, virtual_link] node_templates: header: type: tosca.nodes.nfv.VNF.Header capabilities: vnf_common: properties: descriptor_id: .. descriptor_version: .. provider: .. .. df: type: tosca.nodes.nfv.VnfDeploymentFlavour Service template (VNF): top level 6 © Nokia 2017 .. topology_template: substitution_mappings: type: tosca.nodes.nfv.VnfDeploymentFlavour .. capabilities: deployment_flavour: [ header, deployment_flavour ] requirements: - virtual_link: [ ecp, external_virtual_link ] .. node_templates: header: type: tosca.nodes.nfv.VNF.Header capabilities: deployment_flavour: type: tosca.capabilities.nfv.VnfDeploymentFlavour properties: flavour_id: aspects: .. vdu: type: tosca.nodes.nfv.VDU.Compute .. ecp: type: tosca.nodes.nfv.ECP # external connection point .. .. Service template (DF): lower level, only represent DF Using enhance substitution_mappings grammar (properties, capabilities) 7 © Nokia 2017 Overview: Using enhance substitution_mappings grammar (capabilities) 1/2 VNF topology template: substtution_mappings: type: tosca.nodes.nfv.VnfDeploymentFlavour properties: capabilities: deployment_flavour requirements: virtual_link DF tosca.nodes.nfv.VnfDe ploymentFlavour req VL interfaces properties cap: node templates: tosca.nodes.nfv.VDU.Compute tosca.nodes.nfv.VDU.VirtualStorage tosca.nodes.nfv.VduCpd tosca.nodes.nfv.VL tosca.nodes.nfv.ExtCpd deployment_flavour: Node Type Service template Note: substitution_mappings gramma enhancement in Simple YAML v1.2: • Properties in substitution_mappings • In-place capabilities in substitution_mappings • Interfaces in substitution_mappings • Indexed access of requirements in substitution_mappings 8 © Nokia 2017 tosca.nodes.nfv.VnfDeploymentFlavour: derived_from: tosca.nodes.Root capabilities: vnf_common: type: tosca.capabilities.nfv.VNFD deployment_flavour: type: tosca.capabilities.nfv.VnfDeploymentFlavour #monitoring_parameter: # modeled as ad hoc capabilities in VNF node template requirements: - virtual_link: capability: tosca.capabilities.nfv.VirtualLinkable relationship: tosca.relationships.nfv.VirtualLinksTo node: tosca.nodes.nfv.VL occurrences: [ 0, UNBOUNDED ] # still under discussion: #interfaces: # Basic: # not to collide with Standard on tosca.nodes.Root # type: tosca.interfaces.nfv.vnf.lifecycle.Basic # Healable: # type: tosca.interfaces.nfv.vnf.lifecycle.Healable # Scalable: # type: tosca.interfaces.nfv.vnf.lifecycle.Scalable # Custom: # type: tosca.interfaces.nfv.vnf.lifecycle.Custom Overview: Using enhanced substitution_mappings grammar (capabilities) 2/2 .. .. topology_template: substitution_mappings: node_type: tosca.nodes.nfv.VNF capabilities: vnf_common: properties: descriptor_id: .. descriptor_version: .. provider: .. .. deployment_flavour: [ df, deployment_flavour ] requirements: - virtual_link: [ df, virtual_link] topology_template: substitution_mappings: type: tosca.nodes.nfv.VnfDeploymentFlavour .. capabilities: deployment_flavour: properties: flavour_id: aspects: .. requirements: - virtual_link: [ ecp, external_virtual_link ] .. node_templates: df: type: tosca.nodes.nfv.VnfDeploymentFlavour node_templates: vdu: type: tosca.nodes.nfv.VDU.Compute .. ecp: type: tosca.nodes.nfv.ECP # external connection point .. .. Service template (VNF): top level 9 © Nokia 2017 Service template (DF): lower level, only represent DF
© Copyright 2026 Paperzz