summaryrefslogtreecommitdiffstats
path: root/docs/Chapter5/Tosca/ONAP Tosca VNF Descriptor.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/Chapter5/Tosca/ONAP Tosca VNF Descriptor.rst')
-rw-r--r--docs/Chapter5/Tosca/ONAP Tosca VNF Descriptor.rst252
1 files changed, 252 insertions, 0 deletions
diff --git a/docs/Chapter5/Tosca/ONAP Tosca VNF Descriptor.rst b/docs/Chapter5/Tosca/ONAP Tosca VNF Descriptor.rst
new file mode 100644
index 0000000..d3c234d
--- /dev/null
+++ b/docs/Chapter5/Tosca/ONAP Tosca VNF Descriptor.rst
@@ -0,0 +1,252 @@
+.. Modifications Copyright © 2017-2018 AT&T Intellectual Property.
+
+.. Licensed under the Creative Commons License, Attribution 4.0 Intl.
+ (the "License"); you may not use this documentation except in compliance
+ with the License. You may obtain a copy of the License at
+
+.. https://creativecommons.org/licenses/by/4.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 VNF Descriptor
+--------------------
+
+General
+^^^^^^^
+
+.. req::
+ :id: R-35854
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ The VNF Descriptor (VNFD) provided by VNF vendor **MUST** comply with
+ TOSCA/YAML based Service template for VNF descriptor specified in
+ ETSI NFV-SOL001.
+
+ **Note**: As the ETSI NFV-SOL001 is work in progress the below tables
+ summarizes the TOSCA definitions agreed to be part of current version
+ of NFV profile and that VNFD MUST comply with in ONAP Release 2+
+ Requirements.
+
+
+.. req::
+ :id: R-65486
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+ :updated: dublin
+
+ The VNFD **MUST** comply with ETSI GS NFV-SOL001 specification endorsing
+ the above mentioned NFV Profile and maintaining the gaps with the
+ requirements specified in ETSI GS NFV-IFA011 standard.
+
+
+.. req::
+ :id: R-17852
+ :target: VNF
+ :keyword: MAY
+ :introduced: casablanca
+
+ The VNFD **MAY** include TOSCA/YAML definitions that are not part of
+ NFV Profile. If provided, these definitions MUST comply with TOSCA
+ Simple Profile in YAML v.1.2.
+
+.. req::
+ :id: R-46527
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ A VNFD is a deployment template which describes a VNF in terms of
+ deployment and operational behavior requirements. It contains
+ virtualized resources (nodes) requirements as well as connectivity
+ and interfaces requirements and **MUST** comply with info elements
+ specified in ETSI GS NFV-IFA 011. The main parts of the VNFD are
+ the following:
+
+ - VNF topology: it is modeled in a cloud agnostic way using virtualized
+ containers and their connectivity. Virtual Deployment Units (VDU)
+ describe the capabilities of the virtualized containers, such as
+ virtual CPU, RAM, disks; their connectivity is modeled with VDU
+ Connection Point Descriptors (VduCpd), Virtual Link Descriptors
+ (VnfVld) and VNF External Connection Point Descriptors
+ (VnfExternalCpd);
+
+ - VNF deployment aspects: they are described in one or more
+ deployment flavours, including configurable parameters, instantiation
+ levels, placement constraints (affinity / antiaffinity), minimum and
+ maximum VDU instance numbers. Horizontal scaling is modeled with
+ scaling aspects and the respective scaling levels in the deployment
+ flavours;
+
+ **Note**: The deployment aspects (deployment flavour etc.) are postponed
+ for future ONAP releases.
+
+ - VNF lifecycle management (LCM) operations: describes the LCM operations
+ supported per deployment flavour, and their input parameters;
+ Note, thatthe actual LCM implementation resides in a different layer,
+ namely referring to additional template artifacts.
+
+.. req::
+ :id: R-15837
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ The following table defines the major TOSCA Types specified in
+ ETSI NFV-SOL001 standard draft. The VNFD provided by a VNF vendor
+ **MUST** comply with the below definitions:
+
+
+.. csv-table:: **TOSCA Definition**
+ :file: TOSCA_descriptor.csv
+ :header-rows: 1
+ :align: center
+ :widths: auto
+
+Data Types
+^^^^^^^^^^
+
+.. req::
+ :id: R-54356
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ The below table includes the data types used by NFV node and is based
+ on TOSCA/YAML constructs specified in draft GS NFV-SOL 001. The node
+ data definitions/attributes used in VNFD **MUST** comply with the below
+ table.
+
+.. csv-table:: **NFV Data Types**
+ :file: NFV_data_type.csv
+ :header-rows: 1
+ :align: center
+ :widths: auto
+
+.. req::
+ :id: R-54876
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ The below table describes the data types used for LCM configuration
+ and is based on TOSCA constructs specified in draft GS NFV-SOL 001.
+ The LCM configuration data elements used in VNFD **MUST** comply
+ with the below table.
+
+.. csv-table:: **LCM Configuration**
+ :file: LCM_config.csv
+ :header-rows: 1
+ :align: center
+ :widths: auto
+
+Artifact Types
+^^^^^^^^^^^^^^
+
+No artifact type is currently supported in ONAP.
+
+Capability Types
+^^^^^^^^^^^^^^^^
+
+.. req::
+ :id: R-67895
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ The VNFD provided by VNF vendor may use the below described TOSCA
+ capabilities. An on-boarding entity (ONAP SDC) **MUST** support them.
+
+ **tosca.capabilities.nfv.VirtualBindable**
+
+ A node type that includes the VirtualBindable capability indicates
+ that it can be pointed by **tosca.relationships.nfv.VirtualBindsTo**
+ relationship type.
+
+ **tosca.capabilities.nfv.VirtualLinkable**
+
+ A node type that includes the VirtualLinkable capability indicates
+ that it can be pointed by **tosca.relationships.nfv.VirtualLinksTo**
+ relationship.
+
+ **tosca.capabilities.nfv.ExtVirtualLinkable**
+
+ A node type that includes the ExtVirtualLinkable capability
+ indicates that it can be pointed by
+ **tosca.relationships.nfv.VirtualLinksTo** relationship.
+
+ **Note**: This capability type is used in Casablanca how it does
+ not exist in the last SOL001 draft
+
+ **tosca.capabilities.nfv.VirtualCompute** and
+ **tosca.capabilities.nfv.VirtualStorage** includes flavours of VDU
+
+
+Relationship Types
+^^^^^^^^^^^^^^^^^^
+
+.. req::
+ :id: R-95321
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ The VNFD provided by VNF vendor may use the below described TOSCA
+ relationships. An on-boarding entity (ONAP SDC) **MUST** support them.
+
+ **tosca.relationships.nfv.VirtualBindsTo**
+
+ This relationship type represents an association relationship between
+ VDU and CP node types.
+
+ **tosca.relationships.nfv.VirtualLinksTo**
+
+ This relationship type represents an association relationship between
+ the VduCpd's and VirtualLinkDesc node types.
+
+
+Interface Types
+^^^^^^^^^^^^^^^
+
+.. req::
+ :id: R-32155
+ :target: VNF
+ :keyword: MUST
+ :introduced: casablanca
+
+ The VNFD provided by VNF vendor may use the below described TOSCA
+ interface types. An on-boarding entity (ONAP SDC) **MUST** support them.
+
+ **tosca.interfaces.nfv.vnf.lifecycle.Nfv** supports LCM operations
+
++--------------------------------------------------------------------+
+| +--------------------------------------------------------------+ |
+| | tosca\_definitions\_version: tosca\_simple\_yaml\_1\_0 | |
+| | | |
+| | description: VNFD TOSCA file demo | |
+| | | |
+| | imports: | |
+| | | |
+| | - TOSCA\_definition\_nfv\_1\_0.yaml | |
+| | | |
+| | - TOSCA\_definition\_nfv\_ext\_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 | |
+| +--------------------------------------------------------------+ |
++====================================================================+
++--------------------------------------------------------------------+
+