diff options
Diffstat (limited to 'docs/refspec/open-o/vnfd')
-rwxr-xr-x | docs/refspec/open-o/vnfd/README.md | 27 | ||||
-rw-r--r-- | docs/refspec/open-o/vnfd/tosca-simple-nfv-1.1.yaml | 429 | ||||
-rw-r--r-- | docs/refspec/open-o/vnfd/tosca_definition_1.0.yaml | 892 | ||||
-rw-r--r-- | docs/refspec/open-o/vnfd/vNAT.yaml | 140 | ||||
-rw-r--r-- | docs/refspec/open-o/vnfd/vnfd-template.rst | 39 |
5 files changed, 39 insertions, 1488 deletions
diff --git a/docs/refspec/open-o/vnfd/README.md b/docs/refspec/open-o/vnfd/README.md deleted file mode 100755 index c3b60c8..0000000 --- a/docs/refspec/open-o/vnfd/README.md +++ /dev/null @@ -1,27 +0,0 @@ -# -# Copyright 2017 ZTE Corporation. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -1.nfv vnfd type definiton include three layer profile definitions. - - A.simple tosca profle : tosca_definition_1.0.yaml - refer:http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/os/TOSCA-Simple-Profile-YAML-v1.0-os.docx - - B.tosca nfv profile : tosca-simple-nfv-1.1.yaml - refer: draft-tosca-nfv-v1.0-wd04-rev06.doc - - C.openo extension profile: In the future - -2.nfv vnfd service template should import the profiles above.
\ No newline at end of file diff --git a/docs/refspec/open-o/vnfd/tosca-simple-nfv-1.1.yaml b/docs/refspec/open-o/vnfd/tosca-simple-nfv-1.1.yaml deleted file mode 100644 index 679b917..0000000 --- a/docs/refspec/open-o/vnfd/tosca-simple-nfv-1.1.yaml +++ /dev/null @@ -1,429 +0,0 @@ -# -# Copyright (c) 2017 ZTE All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# - -data_types: - - tosca.datatypes.nfv.L3AddressData: - derived_from: tosca.datatypes.Root - properties: - ip_address_assignment: - type: boolean - required: true - floating_ip_activated: - type: boolean - required: true - ip_address_type: - type: string - required: false - constraints: - - valid_values: [ipv4, ipv6] - number_of_ip_address: - type: integer - required: false - - tosca.datatypes.nfv.AddressData: - derived_from: tosca.datatypes.Root - properties: - address_type: - type: string - required: true - constraints: - - valid_values: [mac_address, ip_address] - #l2_address_data: - # type: tosca.datatypes.nfv.L2AddressData # empty in "GS NFV IFA011 V0.7.3" - # required: false - l3_address_data: - type: tosca.datatypes.nfv.L3AddressData - required: false - - tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements: - derived_from: tosca.datatypes.Root - properties: - name: - type: string - required: false - description: - type: string - required: false - support_mandatory: - type: boolean - required: true - requirement: - type: map # not specified - required: true - entry_schema: - type: string - - tosca.datatypes.nfv.ConnectivityType: - derived_from: tosca.datatypes.Root - properties: - layer_protocol: - type: string - required: yes - constraints: - - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ] - flow_pattern: - type: string - required: false - #line tree mesh - - tosca.datatypes.nfv.RequestedAdditionalCapability: - derived_from: tosca.datatypes.Root - properties: - #name: - # key of containing map - support_mandatory: - type: boolean - required: true - min_requested_additional_capability_version: - type: string - required: false - preferred_requested_additional_capability_version: - type: string - required: false - requested_additional_capability_name: - type: string - required: true - target_performance_parameters: - type: map - entry_schema: - type: string - required: true - - tosca.datatypes.nfv.VirtualMemory: - derived_from: tosca.datatypes.Root - properties: - virtual_mem_size: - type: scalar-unit.size # Number - required: true - virtual_mem_oversubscription_policy: - type: string - required: false - numa_enabled: - type: boolean - required: false - - tosca.datatypes.nfv.VirtualCpu: - derived_from: tosca.datatypes.Root - properties: - cpu_architecture: - type: string - required: false - num_virtual_cpu: - type: integer - required: true - virtual_cpu_clock: - type: scalar-unit.frequency - required: false - virtual_cpu_oversubscription_policy: - type: string - required: false - virtual_cpu_pinning: - type: tosca.datatypes.nfv.VirtualCpuPinning - required: false - - tosca.datatypes.nfv.VirtualCpuPinning: - derived_from: tosca.datatypes.Root - properties: - cpu_pinning_policy: - type: string # CpuPinningPolicy - constraints: - - valid_values: [ static, dynamic ] - required: false - cpu_pinning_map: - type: map - entry_schema: - type: string - required: false - - tosca.datatypes.nfv.VnfcConfigurableProperties: - derived_from: tosca.datatypes.Root - properties: - additional_vnfc_configurable_properties: - type: map - entry_schema: - type: string - required: false - -node_types: - tosca.nodes.nfv.VDU.Compute: - derived_from: tosca.nodes.Compute - properties: - name: - type: string - required: true - description: - type: string - required: true - boot_order: - type: list # explicit index (boot index) not necessary, contrary to IFA011 - entry_schema: - type: string - required: false - nfvi_constraints: - type: list - entry_schema: - type: string - required: false - configurable_properties: - type: map - entry_schema: - type: tosca.datatypes.nfv.VnfcConfigurableProperties - required: true - #attributes: - # private_address: - # status: deprecated - # public_address: - # status: deprecated - # networks: - # status: deprecated - # ports: - # status: deprecated - capabilities: - virtual_compute: - type: tosca.capabilities.nfv.VirtualCompute - virtual_binding: - type: tosca.capabilities.nfv.VirtualBindable - #monitoring_parameter: - # modeled as ad hoc (named) capabilities in VDU node template - # for example: - #capabilities: - # cpu_load: tosca.capabilities.nfv.Metric - # memory_usage: tosca.capabilities.nfv.Metric - #host: #Editor note: FFS. How this capabilities should be used in NFV Profile - # type: tosca.capabilities.Container - # valid_source_types: [tosca.nodes.SoftwareComponent] - # occurrences: [0,UNBOUNDED] #note: [0,0] - #endpoint: - # occurrences: [0,0] - #os: - # occurrences: [0,0] - scalable: #Editor note: FFS. How this capabilities should be used in NFV Profile - type: tosca.capabilities.Scalable - #binding: - # occurrences: [0,UNBOUND] - requirements: - - virtual_storage: - capability: tosca.capabilities.nfv.VirtualStorage - relationship: tosca.relationships.nfv.VDU.AttachedTo - node: tosca.nodes.nfv.VDU.VirtualStorage - #occurences: [ 0, UNBOUNDED ] - # - local_storage: #For NFV Profile, this requirement is deprecated. - # occurrences: [0,0] - #artifacts: - # - sw_image: - #file: - # type: tosca.artifacts.nfv.SwImage - - tosca.nodes.nfv.VDU.VirtualStorage: - derived_from: tosca.nodes.Root - properties: - #id: - # node name - type_of_storage: - type: string - required: true - size_of_storage: - type: scalar-unit.size - required: true - rdma_enabled: - type: boolean - required: false - capabilities: - virtual_storage: - type: tosca.capabilities.nfv.VirtualStorage - #artifacts: - # - sw_image: - # file: - # type: tosca.artifacts.Deployment.Image - - tosca.nodes.nfv.Cpd: - derived_from: tosca.nodes.Root - properties: - layer_protocol: - type: string - constraints: - - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ] - 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 - address_data: - type: list - entry_schema: - type: tosca.datatypes.nfv.AddressData - required: false - - tosca.nodes.nfv.VduCpd: - derived_from: tosca.nodes.nfv.Cpd - properties: - bitrate_requirement: - type: integer - required: false - virtual_network_interface_requirements: - type: list - entry_schema: - type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements - required: false - requirements: - - virtual_link: - capability: tosca.capabilities.nfv.VirtualLinkable - relationship: tosca.relationships.nfv.VirtualLinksTo - node: tosca.nodes.nfv.VnfVirtualLinkDesc - - virtual_binding: - capability: tosca.capabilities.nfv.VirtualBindable - relationship: tosca.relationships.nfv.VirtualBindsTo - node: tosca.nodes.nfv.VDU.Compute #tosca.nodes.nfv.VDU - - tosca.nodes.nfv.VnfVirtualLinkDesc: - derived_from: tosca.nodes.Root - properties: - connectivity_type: - type: tosca.datatypes.nfv.ConnectivityType - required: true - description: - type: string - required: false - test_access: - type: list - entry_schema: - type: string - required: false - vl_flavours: - type: map - entry_schema: - type: string #tosca.datatypes.nfv.VlFlavour - required: true - capabilities: - #monitoring_parameters: - # modeled as ad hoc (named) capabilities in node template - virtual_linkable: - type: tosca.capabilities.nfv.VirtualLinkable - - tosca.nodes.nfv.VNF: - description: >- - The NFV VNF Node Type represents a Virtual Network Function as defined by [ETSI GS NFV-MAN 001 v1.1.1]. It is the default - type that all other VNF Node Types derive from. This allows for all VNF nodes to have a consistent set of features for - modeling and management (e.g., consistent definitions for requirements, capabilities and lifecycle interfaces). - derived_from: tosca.nodes.Root - properties: - id: - description: >- - ID of this VNF. - type: string - vendor: - description: >- - Name of the vendor who generate this VNF. - type: string - version: - description: >- - Version of the software for this VNF. - type: string - requirements: - - virtual_link: - capability: tosca.capabilities.nfv.VirtualLinkable - relationship: tosca.relationships.nfv.VirtualLinksTo - -capability_types: - - tosca.capabilities.nfv.Metric: - derived_from: tosca.capabilities.Endpoint - - tosca.capabilities.nfv.VirtualStorage: #new - derived_from: tosca.capabilities.Root - - tosca.capabilities.nfv.VirtualBindable: #new - derived_from: tosca.capabilities.Node - - tosca.capabilities.nfv.VirtualLinkable: #new - derived_from: tosca.capabilities.Node - - - tosca.capabilities.nfv.VirtualCompute: - derived_from: tosca.capabilities.Root - properties: - requested_additional_capabilities: - type: map - entry_schema: - type: tosca.datatypes.nfv.RequestedAdditionalCapability - required: false - virtual_memory: - type: tosca.datatypes.nfv.VirtualMemory - required: true - virtual_cpu: - type: tosca.datatypes.nfv.VirtualCpu - required: true - -artifact_types: - - tosca.artifacts.nfv.SwImage: - derived_from: tosca.artifacts.Deployment.Image - properties: # or metadata - #id: - # node name - name: - type: string - required: true - version: - type: string - required: true - checksum: - type: string - required: true - container_format: - type: string - required: true - disk_format: - type: string - required: true - min_disk: - type: scalar-unit.size # Number - required: true - min_ram: - type: scalar-unit.size # Number - required: false - size: - type: scalar-unit.size # Number - required: true - sw_image: - type: string - required: true - operating_system: - type: string - required: false - supported_virtualisation_environments: - type: list - entry_schema: - type: string - required: false - -relationship_types: - - tosca.relationships.nfv.VirtualBindsTo: - derived_from: tosca.relationships.DependsOn - valid_target_types: [ tosca.capabilities.nfv.VirtualBindable] - - tosca.relationships.nfv.VDU.AttachedTo: - derived_from: tosca.relationships.AttachesTo - - tosca.relationships.nfv.VirtualLinksTo: - derived_from: tosca.relationships.DependsOn - valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable ] diff --git a/docs/refspec/open-o/vnfd/tosca_definition_1.0.yaml b/docs/refspec/open-o/vnfd/tosca_definition_1.0.yaml deleted file mode 100644 index 2b87bc4..0000000 --- a/docs/refspec/open-o/vnfd/tosca_definition_1.0.yaml +++ /dev/null @@ -1,892 +0,0 @@ -# -# Copyright 2017 ZTE Corporation. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -tosca_definitions_version: tosca_simple_yaml_1_0 - -node_types: - tosca.nodes.Root: - description: > - The TOSCA root node all other TOSCA base node types derive from. - attributes: - tosca_id: - type: string - tosca_name: - type: string - state: - type: string - capabilities: - feature: - type: tosca.capabilities.Node - requirements: - - dependency: - capability: tosca.capabilities.Node - node: tosca.nodes.Root - relationship: tosca.relationships.DependsOn - occurrences: [ 0, UNBOUNDED ] - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - - tosca.nodes.Compute: - derived_from: tosca.nodes.Root - attributes: - private_address: - type: string - public_address: - type: string - networks: - type: map - entry_schema: - type: tosca.datatypes.network.NetworkInfo - ports: - type: map - entry_schema: - type: tosca.datatypes.network.PortInfo - capabilities: - host: - type: tosca.capabilities.Container - binding: - type: tosca.capabilities.network.Bindable - os: - type: tosca.capabilities.OperatingSystem - scalable: - type: tosca.capabilities.Scalable - requirements: - - local_storage: - capability: tosca.capabilities.Attachment - node: tosca.nodes.BlockStorage - relationship: tosca.relationships.AttachesTo - occurrences: [0, UNBOUNDED] - - tosca.nodes.SoftwareComponent: - derived_from: tosca.nodes.Root - properties: - # domain-specific software component version - component_version: - type: version - required: false - description: > - Software component version. - admin_credential: - type: tosca.datatypes.Credential - required: false - requirements: - - host: - capability: tosca.capabilities.Container - node: tosca.nodes.Compute - relationship: tosca.relationships.HostedOn - - tosca.nodes.DBMS: - derived_from: tosca.nodes.SoftwareComponent - properties: - port: - required: false - type: integer - description: > - The port the DBMS service will listen to for data and requests. - root_password: - required: false - type: string - description: > - The root password for the DBMS service. - capabilities: - host: - type: tosca.capabilities.Container - valid_source_types: [tosca.nodes.Database] - - tosca.nodes.Database: - derived_from: tosca.nodes.Root - properties: - user: - required: false - type: string - description: > - User account name for DB administration - port: - required: false - type: integer - description: > - The port the database service will use to listen for incoming data and requests. - name: - required: false - type: string - description: > - The name of the database. - password: - required: false - type: string - description: > - The password for the DB user account - requirements: - - host: - capability: tosca.capabilities.Container - node: tosca.nodes.DBMS - relationship: tosca.relationships.HostedOn - capabilities: - database_endpoint: - type: tosca.capabilities.Endpoint.Database - - tosca.nodes.WebServer: - derived_from: tosca.nodes.SoftwareComponent - capabilities: - data_endpoint: - type: tosca.capabilities.Endpoint - admin_endpoint: - type: tosca.capabilities.Endpoint.Admin - host: - type: tosca.capabilities.Container - valid_source_types: [tosca.nodes.WebApplication] - - tosca.nodes.WebApplication: - derived_from: tosca.nodes.Root - properties: - context_root: - type: string - required: false - requirements: - - host: - capability: tosca.capabilities.Container - node: tosca.nodes.WebServer - relationship: tosca.relationships.HostedOn - capabilities: - app_endpoint: - type: tosca.capabilities.Endpoint - - tosca.nodes.BlockStorage: - derived_from: tosca.nodes.Root - properties: - size: - type: scalar-unit.size - constraints: - - greater_or_equal: 1 MB - volume_id: - type: string - required: false - snapshot_id: - type: string - required: false - attributes: - volume_id: - type: string - capabilities: - attachment: - type: tosca.capabilities.Attachment - - tosca.nodes.network.Network: - derived_from: tosca.nodes.Root - description: > - The TOSCA Network node represents a simple, logical network service. - properties: - ip_version: - type: integer - required: false - default: 4 - constraints: - - valid_values: [ 4, 6 ] - description: > - The IP version of the requested network. Valid values are 4 for ipv4 - or 6 for ipv6. - cidr: - type: string - required: false - description: > - The cidr block of the requested network. - start_ip: - type: string - required: false - description: > - The IP address to be used as the start of a pool of addresses within - the full IP range derived from the cidr block. - end_ip: - type: string - required: false - description: > - The IP address to be used as the end of a pool of addresses within - the full IP range derived from the cidr block. - gateway_ip: - type: string - required: false - description: > - The gateway IP address. - network_name: - type: string - required: false - description: > - An identifier that represents an existing Network instance in the - underlying cloud infrastructure or can be used as the name of the - newly created network. If network_name is provided and no other - properties are provided (with exception of network_id), then an - existing network instance will be used. If network_name is provided - alongside with more properties then a new network with this name will - be created. - network_id: - type: string - required: false - description: > - An identifier that represents an existing Network instance in the - underlying cloud infrastructure. This property is mutually exclusive - with all other properties except network_name. This can be used alone - or together with network_name to identify an existing network. - segmentation_id: - type: string - required: false - description: > - A segmentation identifier in the underlying cloud infrastructure. - E.g. VLAN ID, GRE tunnel ID, etc.. - network_type: - type: string - required: false - description: > - It specifies the nature of the physical network in the underlying - cloud infrastructure. Examples are flat, vlan, gre or vxlan. - For flat and vlan types, physical_network should be provided too. - physical_network: - type: string - required: false - description: > - It identifies the physical network on top of which the network is - implemented, e.g. physnet1. This property is required if network_type - is flat or vlan. - dhcp_enabled: - type: boolean - required: false - default: true - description: > - Indicates should DHCP service be enabled on the network or not. - capabilities: - link: - type: tosca.capabilities.network.Linkable - - tosca.nodes.network.Port: - derived_from: tosca.nodes.Root - description: > - The TOSCA Port node represents a logical entity that associates between - Compute and Network normative types. The Port node type effectively - represents a single virtual NIC on the Compute node instance. - properties: - ip_address: - type: string - required: false - description: > - Allow the user to set a static IP. - order: - type: integer - required: false - default: 0 - constraints: - - greater_or_equal: 0 - description: > - The order of the NIC on the compute instance (e.g. eth2). - is_default: - type: boolean - required: false - default: false - description: > - If is_default=true this port will be used for the default gateway - route. Only one port that is associated to single compute node can - set as is_default=true. - ip_range_start: - type: string - required: false - description: > - Defines the starting IP of a range to be allocated for the compute - instances that are associated with this Port. - ip_range_end: - type: string - required: false - description: > - Defines the ending IP of a range to be allocated for the compute - instances that are associated with this Port. - attributes: - ip_address: - type: string - requirements: - - binding: - description: > - Binding requirement expresses the relationship between Port and - Compute nodes. Effectively it indicates that the Port will be - attached to specific Compute node instance - capability: tosca.capabilities.network.Bindable - relationship: tosca.relationships.network.BindsTo - node: tosca.nodes.Compute - - link: - description: > - Link requirement expresses the relationship between Port and Network - nodes. It indicates which network this port will connect to. - capability: tosca.capabilities.network.Linkable - relationship: tosca.relationships.network.LinksTo - node: tosca.nodes.network.Network - - tosca.nodes.ObjectStorage: - derived_from: tosca.nodes.Root - description: > - The TOSCA ObjectStorage node represents storage that provides the ability - to store data as objects (or BLOBs of data) without consideration for the - underlying filesystem or devices - properties: - name: - type: string - required: true - description: > - The logical name of the object store (or container). - size: - type: scalar-unit.size - required: false - constraints: - - greater_or_equal: 0 GB - description: > - The requested initial storage size. - maxsize: - type: scalar-unit.size - required: false - constraints: - - greater_or_equal: 0 GB - description: > - The requested maximum storage size. - capabilities: - storage_endpoint: - type: tosca.capabilities.Endpoint - - tosca.nodes.LoadBalancer: - derived_from: tosca.nodes.Root - properties: - algorithm: - type: string - required: false - status: experimental - capabilities: - client: - type: tosca.capabilities.Endpoint.Public - occurrences: [0, UNBOUNDED] - description: the Floating (IP) client’s on the public network can connect to - requirements: - - application: - capability: tosca.capabilities.Endpoint - relationship: tosca.relationships.RoutesTo - occurrences: [0, UNBOUNDED] - description: Connection to one or more load balanced applications - - tosca.nodes.Container.Application: - derived_from: tosca.nodes.Root - requirements: - - host: - capability: tosca.capabilities.Container - node: tosca.nodes.Container.Runtime - relationship: tosca.relationships.HostedOn - - tosca.nodes.Container.Runtime: - derived_from: tosca.nodes.SoftwareComponent - capabilities: - host: - type: tosca.capabilities.Container - scalable: - type: tosca.capabilities.Scalable - - tosca.nodes.Container.Application.Docker: - derived_from: tosca.nodes.Container.Application - requirements: - - host: - capability: tosca.capabilities.Container.Docker - -relationship_types: - tosca.relationships.Root: - description: > - The TOSCA root Relationship Type all other TOSCA base Relationship Types - derive from. - attributes: - tosca_id: - type: string - tosca_name: - type: string - interfaces: - Configure: - type: tosca.interfaces.relationship.Configure - - tosca.relationships.DependsOn: - derived_from: tosca.relationships.Root - - tosca.relationships.HostedOn: - derived_from: tosca.relationships.Root - valid_target_types: [ tosca.capabilities.Container ] - - tosca.relationships.ConnectsTo: - derived_from: tosca.relationships.Root - valid_target_types: [ tosca.capabilities.Endpoint ] - credential: - type: tosca.datatypes.Credential - required: false - - tosca.relationships.AttachesTo: - derived_from: tosca.relationships.Root - valid_target_types: [ tosca.capabilities.Attachment ] - properties: - location: - required: true - type: string - constraints: - - min_length: 1 - device: - required: false - type: string - - tosca.relationships.RoutesTo: - derived_from: tosca.relationships.ConnectsTo - valid_target_types: [ tosca.capabilities.Endpoint ] - - tosca.relationships.network.LinksTo: - derived_from: tosca.relationships.DependsOn - valid_target_types: [ tosca.capabilities.network.Linkable ] - - tosca.relationships.network.BindsTo: - derived_from: tosca.relationships.DependsOn - valid_target_types: [ tosca.capabilities.network.Bindable ] - -capability_types: - tosca.capabilities.Root: - description: > - The TOSCA root Capability Type all other TOSCA base Capability Types - derive from. - - tosca.capabilities.Node: - derived_from: tosca.capabilities.Root - - tosca.capabilities.Container: - derived_from: tosca.capabilities.Root - properties: - num_cpus: - required: false - type: integer - constraints: - - greater_or_equal: 1 - cpu_frequency: - required: false - type: scalar-unit.frequency - constraints: - - greater_or_equal: 0.1 GHz - disk_size: - required: false - type: scalar-unit.size - constraints: - - greater_or_equal: 0 MB - mem_size: - required: false - type: scalar-unit.size - constraints: - - greater_or_equal: 0 MB - - tosca.capabilities.Endpoint: - derived_from: tosca.capabilities.Root - properties: - protocol: - type: string - required: true - default: tcp - port: - type: tosca.datatypes.network.PortDef - required: false - secure: - type: boolean - required: false - default: false - url_path: - type: string - required: false - port_name: - type: string - required: false - network_name: - type: string - required: false - initiator: - type: string - required: false - default: source - constraints: - - valid_values: [source, target, peer] - ports: - type: map - required: false - constraints: - - min_length: 1 - entry_schema: - type: tosca.datatypes.network.PortSpec - attributes: - ip_address: - type: string - - tosca.capabilities.Endpoint.Admin: - derived_from: tosca.capabilities.Endpoint - properties: - secure: - type: boolean - default: true - constraints: - - equal: true - - tosca.capabilities.Endpoint.Public: - derived_from: tosca.capabilities.Endpoint - properties: - network_name: - type: string - default: PUBLIC - constraints: - - equal: PUBLIC - floating: - description: > - Indicates that the public address should be allocated from a pool of - floating IPs that are associated with the network. - type: boolean - default: false - status: experimental - dns_name: - description: The optional name to register with DNS - type: string - required: false - status: experimental - - tosca.capabilities.Scalable: - derived_from: tosca.capabilities.Root - properties: - min_instances: - type: integer - required: true - default: 1 - description: > - This property is used to indicate the minimum number of instances - that should be created for the associated TOSCA Node Template by - a TOSCA orchestrator. - max_instances: - type: integer - required: true - default: 1 - description: > - This property is used to indicate the maximum number of instances - that should be created for the associated TOSCA Node Template by - a TOSCA orchestrator. - default_instances: - type: integer - required: false - description: > - An optional property that indicates the requested default number - of instances that should be the starting number of instances a - TOSCA orchestrator should attempt to allocate. - The value for this property MUST be in the range between the values - set for min_instances and max_instances properties. - - tosca.capabilities.Endpoint.Database: - derived_from: tosca.capabilities.Endpoint - - tosca.capabilities.Attachment: - derived_from: tosca.capabilities.Root - - tosca.capabilities.network.Linkable: - derived_from: tosca.capabilities.Root - description: > - A node type that includes the Linkable capability indicates that it can - be pointed by tosca.relationships.network.LinksTo relationship type, which - represents an association relationship between Port and Network node types. - - tosca.capabilities.network.Bindable: - derived_from: tosca.capabilities.Root - description: > - A node type that includes the Bindable capability indicates that it can - be pointed by tosca.relationships.network.BindsTo relationship type, which - represents a network association relationship between Port and Compute node - types. - - tosca.capabilities.OperatingSystem: - derived_from: tosca.capabilities.Root - properties: - architecture: - required: false - type: string - description: > - The host Operating System (OS) architecture. - type: - required: false - type: string - description: > - The host Operating System (OS) type. - distribution: - required: false - type: string - description: > - The host Operating System (OS) distribution. Examples of valid values - for an “type” of “Linux” would include: - debian, fedora, rhel and ubuntu. - version: - required: false - type: version - description: > - The host Operating System version. - - tosca.capabilities.Container.Docker: - derived_from: tosca.capabilities.Container - properties: - version: - type: list - required: false - entry_schema: - type: version - description: > - The Docker version capability. - publish_all: - type: boolean - default: false - required: false - description: > - Indicates that all ports (ranges) listed in the dockerfile - using the EXPOSE keyword be published. - publish_ports: - type: list - entry_schema: - type: PortSpec - required: false - description: > - List of ports mappings from source (Docker container) - to target (host) ports to publish. - expose_ports: - type: list - entry_schema: - type: PortSpec - required: false - description: > - List of ports mappings from source (Docker container) to expose - to other Docker containers (not accessible outside host). - volumes: - type: list - entry_schema: - type: string - required: false - description: > - The dockerfile VOLUME command which is used to enable access - from the Docker container to a directory on the host machine. - host_id: - type: string - required: false - description: > - The optional identifier of an existing host resource - that should be used to run this container on. - volume_id: - type: string - required: false - description: > - The optional identifier of an existing storage volume (resource) - that should be used to create the container's mount point(s) on. - -interface_types: - tosca.interfaces.node.lifecycle.Standard: - create: - description: Standard lifecycle create operation. - configure: - description: Standard lifecycle configure operation. - start: - description: Standard lifecycle start operation. - stop: - description: Standard lifecycle stop operation. - delete: - description: Standard lifecycle delete operation. - - tosca.interfaces.relationship.Configure: - pre_configure_source: - description: Operation to pre-configure the source endpoint. - pre_configure_target: - description: Operation to pre-configure the target endpoint. - post_configure_source: - description: Operation to post-configure the source endpoint. - post_configure_target: - description: Operation to post-configure the target endpoint. - add_target: - description: Operation to add a target node. - remove_target: - description: Operation to remove a target node. - add_source: - description: Operation to notify the target node of a source node which - is now available via a relationship. - target_changed: - description: Operation to notify source some property or attribute of the - target changed - -data_types: - tosca.datatypes.Root: - description: > - The TOSCA root Data Type all other TOSCA base Data Types derive from - - tosca.datatypes.network.NetworkInfo: - derived_from: tosca.datatypes.Root - properties: - network_name: - type: string - network_id: - type: string - addresses: - type: list - entry_schema: - type: string - - tosca.datatypes.network.PortInfo: - derived_from: tosca.datatypes.Root - properties: - port_name: - type: string - port_id: - type: string - network_id: - type: string - mac_address: - type: string - addresses: - type: list - entry_schema: - type: string - - tosca.datatypes.network.PortDef: - derived_from: tosca.datatypes.Root - type: integer - constraints: - - in_range: [ 1, 65535 ] - - tosca.datatypes.network.PortSpec: - derived_from: tosca.datatypes.Root - properties: - protocol: - type: string - required: true - default: tcp - constraints: - - valid_values: [ udp, tcp, igmp ] - target: - type: PortDef - required: false - target_range: - type: range - required: false - constraints: - - in_range: [ 1, 65535 ] - source: - type: PortDef - required: false - source_range: - type: range - required: false - constraints: - - in_range: [ 1, 65535 ] - - tosca.datatypes.Credential: - derived_from: tosca.datatypes.Root - properties: - protocol: - type: string - required: false - token_type: - type: string - default: password - required: true - token: - type: string - required: true - keys: - type: map - entry_schema: - type: string - required: false - user: - type: string - required: false - -artifact_types: - tosca.artifacts.Root: - description: > - The TOSCA Artifact Type all other TOSCA Artifact Types derive from - properties: - version: version - - tosca.artifacts.File: - derived_from: tosca.artifacts.Root - - tosca.artifacts.Deployment: - derived_from: tosca.artifacts.Root - description: TOSCA base type for deployment artifacts - - tosca.artifacts.Deployment.Image: - derived_from: tosca.artifacts.Deployment - - tosca.artifacts.Deployment.Image.VM: - derived_from: tosca.artifacts.Deployment.Image - - tosca.artifacts.Implementation: - derived_from: tosca.artifacts.Root - description: TOSCA base type for implementation artifacts - - tosca.artifacts.Implementation.Bash: - derived_from: tosca.artifacts.Implementation - description: Script artifact for the Unix Bash shell - mime_type: application/x-sh - file_ext: [ sh ] - - tosca.artifacts.Implementation.Python: - derived_from: tosca.artifacts.Implementation - description: Artifact for the interpreted Python language - mime_type: application/x-python - file_ext: [ py ] - - tosca.artifacts.Deployment.Image.Container.Docker: - derived_from: tosca.artifacts.Deployment.Image - description: Docker container image - - tosca.artifacts.Deployment.Image.VM.ISO: - derived_from: tosca.artifacts.Deployment.Image - description: Virtual Machine (VM) image in ISO disk format - mime_type: application/octet-stream - file_ext: [ iso ] - - tosca.artifacts.Deployment.Image.VM.QCOW2: - derived_from: tosca.artifacts.Deployment.Image - description: Virtual Machine (VM) image in QCOW v2 standard disk format - mime_type: application/octet-stream - file_ext: [ qcow2 ] - -policy_types: - tosca.policies.Root: - description: The TOSCA Policy Type all other TOSCA Policy Types derive from. - - tosca.policies.Placement: - derived_from: tosca.policies.Root - description: The TOSCA Policy Type definition that is used to govern - placement of TOSCA nodes or groups of nodes. - - tosca.policies.Scaling: - derived_from: tosca.policies.Root - description: The TOSCA Policy Type definition that is used to govern - scaling of TOSCA nodes or groups of nodes. - - tosca.policies.Update: - derived_from: tosca.policies.Root - description: The TOSCA Policy Type definition that is used to govern - update of TOSCA nodes or groups of nodes. - - tosca.policies.Performance: - derived_from: tosca.policies.Root - description: The TOSCA Policy Type definition that is used to declare - performance requirements for TOSCA nodes or groups of nodes. - -group_types: - tosca.groups.Root: - description: The TOSCA Group Type all other TOSCA Group Types derive from - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - diff --git a/docs/refspec/open-o/vnfd/vNAT.yaml b/docs/refspec/open-o/vnfd/vNAT.yaml deleted file mode 100644 index afb717c..0000000 --- a/docs/refspec/open-o/vnfd/vNAT.yaml +++ /dev/null @@ -1,140 +0,0 @@ -#
-# Copyright 2017 ZTE Corporation.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-
-metadata:
- vnfProvider: intel
- vnfProductName: openNAT
- vnfSoftwareVersion: 1.0.0
- vnfdVersion: 1.0.0
- vnfProductInfoName: openNAT
- vnfProductInfoDescription: openNAT
- localizationLanguage: [english, chinese]
- defaultLocalizationLanguage: english
- vnfdId: openNAT-1.0
- vnfmInfo: GVNFM
-
-imports:
- - defintions/tosca-simple-nfv-1.1.yaml
- - defintions/tosca-simple-1.0.yaml
-
-node_types:
- tosca.nodes.nfv.VNF.vOpenNAT:
- derived_from: tosca.nodes.nfv.VNF
- requirements:
- - sriov_plane:
- capability: tosca.capabilities.nfv.VirtualLinkable
- node: tosca.nodes.nfv.VnfVirtualLinkDesc
- relationship: tosca.relationships.nfv.VirtualLinksTo
-
-topology_template:
-
- substitution_mappings:
- node_type: tosca.nodes.nfv.VNF.vOpenNAT
- requirements:
- sriov_plane: [SRIOV_Port, virtual_link]
-
- node_templates:
- vdu_vNat:
- type: tosca.nodes.nfv.VDU.Compute
- properties:
- name: vNat
- description: the virtual machine of vNat
- boot_order:
- - vNAT_Storage
- configurable_properties:
- test:
- additional_vnfc_configurable_properties:
- aaa: "1"
-
- capabilities:
- virtual_compute:
- properties:
- virtual_cpu:
- cpu_architecture: X86
- num_virtual_cpu: 6
- virtual_memory:
- virtual_mem_size: 2 GB
- numa_enabled: true
- requested_additional_capabilities:
- numa:
- support_mandatory: true
- requested_additional_capability_name: numa
- target_performance_parameters:
- hw:numa_nodes: "2"
- hw:numa_cpus.0: "0,1"
- hw:numa_mem.0: "1024"
- hw:numa_cpus.1: "2,3,4,5"
- hw:numa_mem.1: "1024"
-
- # hyper_threading:
- # support_mandatory: true
- # requested_additional_capability_name: hyper_threading
- # target_performance_parameters:
- # hw:cpu_sockets : "2"
- # hw:cpu_threads : "2"
- # hw:cpu_cores : "2"
- # hw:cpu_threads_policy: "isolate"
-
- ovs_dpdk:
- support_mandatory: true
- requested_additional_capability_name: ovs_dpdk
- target_performance_parameters:
- sw:ovs_dpdk: "true"
- requirements:
- - virtual_storage:
- node: vNAT_Storage
- relationship:
- properties:
- location: /mnt/volume_0
-
- artifacts:
- vNatVNFImage:
- file: /swimages/xenial-snat.qcow2
- type: tosca.artifacts.nfv.SwImage
- properties:
- name: vNatVNFImage
- version: "1.0"
- checksum: "5000"
- container_format: bare
- disk_format: qcow2
- min_disk: 10 GB
- min_ram: 1 GB
- size: 10 GB
- sw_image: /swimages/xenial-snat.qcow2
- operating_system: ubuntu
-
- vNAT_Storage:
- type: tosca.nodes.nfv.VDU.VirtualStorage
- properties:
- type_of_storage: volume
- size_of_storage: 10 GB
- rdma_enabled: false
-
- SRIOV_Port:
- type: tosca.nodes.nfv.VduCpd
- properties:
- virtual_network_interface_requirements:
- - name: sriov
- description: sriov
- support_mandatory: false
- requirement:
- SRIOV: "true"
- layer_protocol: ipv4
- description: sriov port
- requirements:
- - virtual_binding: vdu_vNat
diff --git a/docs/refspec/open-o/vnfd/vnfd-template.rst b/docs/refspec/open-o/vnfd/vnfd-template.rst new file mode 100644 index 0000000..a5f5a1e --- /dev/null +++ b/docs/refspec/open-o/vnfd/vnfd-template.rst @@ -0,0 +1,39 @@ +.. contents:: + :depth: 3 +.. + +======================================================================== + +Copyright 2017 ZTE Corporation. + +Licensed under the Apache License, Version 2.0 (the "License"); + +you may not use this file except in compliance with the License. + +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software + +distributed under the License is distributed on an "AS IS" BASIS, + +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + +See the License for the specific language governing permissions and + +limitations under the License. + +======================================================================== + +1.nfv vnfd type definiton include three layer profile definitions. + + A.simple tosca profle : tosca_definition_1.0.yaml + refer: http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/os/TOSCA-Simple-Profile-YAML-v1.0-os.docx + + B.tosca nfv profile : tosca-simple-nfv-1.1.yaml + refer: draft-tosca-nfv-v1.0-wd04-rev06.doc + + C.openo extension profile: In the future + +2.nfv vnfd service template should import the profiles above. |