-
Story
-
Resolution: Done
-
Medium
-
None
-
None
-
VNFRQTS Sprint 10
VNF Requirements and Guidelines impacting the VNF package are described below.
A table collecting the VNF Package Requirements coordinated with the VNF SDK, SDC, Validation and Modeling project.
Step 1 identify from the list of Amsterdam requirements, those that are testable by VNF Package inspection https://wiki.onap.org/display/DW/VNF+Requirements+Testability
Step 2 from that list identify the requirements where information elements have been identified https://wiki.onap.org/pages/viewpage.action?pageId=16004636 ONAP R2+ Resource IM Clean version
step 3 from that list identify the requirements where the information elements have some range limits or naming conventions identified. - SOL001, SOL004
- Manifest file format
- Manifest file entries
- Tests, License directory, Change Log
The following VNF package requirements guide:
- VNF SDK project developing a tool allowing a VNF provider to create a VNF package compliant with ONAP VNF package model - see attached ppt.
- SDC project developing an entity for VNF package parsing, validation and on-boarding.
The VNF package requirements are arranged and numbered as in [https://wiki.onap.org/display/DW/VNF+Requirements+Testability] and mapped to the R2 Info Model and CASR where applicable.
Requirement # | Description |
R2 Resource IM Info Element and TOSCA/YAML VNF Package artifacts |
Beijing Release |
---|---|---|---|
R-01478 | The VNF Package MUST include documentation describing all parameters that are available to monitor the VNF after instantiation (includes all counters, OIDs, PM data, KPIs, etc.) that must be collected for reporting purposes | Monitoring Info Element (TBD) - SOL001 | Yes |
R-01556 | The VNF Package MUST include documentation describing the fault, performance, capacity events/alarms and other event records that are made available by the VNF | Monitoring Info Element (TBD) - SOL001 | Yes |
R-02454: | The VNF MUST support the existence of multiple major/minor versions of the VNF software and/or sub-components and interfaces that support both forward and backward compatibility to be transparent to the Service Provider usage | VNFD.vnfSoftwareVersion SwImageDesc.Version - SOL001 |
Yes |
R-03070: | The VNF MUST, by ONAP Policy, provide the ONAP addresses as data destinations for each VNF, and may be changed by Policy while the VNF is in operation. We expect the VNF to be capable of redirecting traffic to changed destinations with no loss of data, for example from one REST URL to another, or from one TCP host and port to another | A list of vnfExtCpd's with virtualNetworkInterfaceRequirements - SOL001 | Yes |
R-04298: | The VNF provider MUST provide their testing scripts to support testing. | CSAR including Tests directory as in SOL004 with testing scripts | |
R-07879: | The VNF Package MUST include all relevant playbooks to ONAP to be loaded on the Ansible Server. | CSAR including TBD directory with Ansible playbooks | |
R-09467: | The VNF MUST utilize only NCSP standard compute flavors | VirtualComputeDesc - SOL001 | Yes |
R-13390: | The VNF provider MUST provide cookbooks to be loaded on the appropriate Chef Server | CSAR including TBD directory with Chef cookbooks | |
R-16065: | The VNF provider MUST provide configurable parameters (if unable to conform to YANG model) including VNF attributes/parameters and valid values, dynamic attributes and cross parameter dependencies (e.g., customer provisioning data). | VDUDesc.configurable Properties - SOL001 | Yes |
R-16560: | The VNF MUST conduct a resiliency impact assessment for all inter/intra-connectivity points in the VNF to provide an overall resiliency rating for the VNF to be incorporated into the software design and development of the VNF | TBD | |
R-16777: | The VNF provider MUST provide a JSON file for each supported action for the VNF. The JSON file must contain key value pairs with all relevant values populated with sample data that illustrates its usage. The fields and their description are defined in Appendix B | CSAR including the TBD directory with JSON files for each action on VNF | |
R-18525: | The VNF provider MUST provide a JSON file for each supported action for the VNF. The JSON file must contain key value pairs with all relevant values populated with sample data that illustrates its usage. The fields and their description are defined in Appendix A | What is a difference from the above? | |
R-22888: | The VNF provider MUST provide documentation for the VNF Policy Description to manage the VNF runtime lifecycle. The document must include a description of how the policies (conditions and actions) are implemented in the VNF | TBD Policy scripts and TBD Policy constructs for LCM | |
R-23823: | The VNF Package MUST include appropriate credentials so that ONAP can interact with the Chef Server. | CSAR including credentials for Chef server in TBD directory and encrypted using TBD mechanism | |
R-25238: | The VNF PACKAGE MUST include validated YANG code using the open source pyang program | CSAR TBD directory for YANG code | |
R-26567: | The VNF Package MUST include a run list of roles/cookbooks/recipes, for each supported VNF action, that will perform the desired VNF action in its entirety as specified by ONAP (see Section 8.c, ONAP Controller APIs and Behavior, for list of VNF actions and requirements), when triggered by a chef-client run list in JSON file | CSAR TBD directories with scripts | |
R-26881: | The VNF provider MUST provide the binaries and images needed to instantiate the VNF (VNF and VNFC images). | CSAR includes TBD directory for SW images referred in SwImageDesc- SOL001 | Yes? |
R-27310: | The VNF Package MUST include all relevant Chef artifacts (roles/cookbooks/recipes) required to execute VNF actions requested by ONAP for loading on appropriate Chef Server. | CSAR TBD directories including all relevant Chef artifacts | |
R-27711: | The VNF provider MUST provide an XML file that contains a list of VNF error codes, descriptions of the error, and possible causes/corrective action | TBD | |
R-30278: | The VNF provider MUST provide a Resource/Device YANG model as a foundation for creating the YANG model for configuration. This will include VNF attributes/parameters and valid values/attributes configurable by policy | CSAR TBD directory for YANG device model | |
R-30654: | The VNF Package MUST have appropriate cookbooks that are designed to automatically ‘rollback’ to the original state in case of any errors for actions that change state of the VNF (e.g., configure). | VNFD.lifeCycleManagementScript that includes a list of events and corresponding management scripts performed for the VNF - SOL001 | Yes |
R-33280: | The VNF MUST NOT use any instance specific parameters in a playbook | How this can be tested | |
R-35851: | The VNF Package MUST include VNF topology that describes basic network and application connectivity internal and external to the VNF including Link type, KPIs, Bandwidth, latency, jitter, QoS (if applicable) for each interface. | VLink, CPD, VduCpd, VnfExtCpd, VnfVirtualLinkDesc, TBD Monitoring info element - SOL001 | Yes |
R-36280: | The VNF provider MUST provide documentation describing VNF Functional Capabilities that are utilized to operationalize the VNF and compose complex services | CSAR TBD directory for functuonal tests - SOL004 | |
R-37028: | The VNF MUST be composed of one “base” module. | What is it in terms of VNFD: basic Deployment Flavor? - SOL001 |
Yes? |
R-37692: | The VNFC MUST provide API versioning to allow for independent upgrades of VNFC | VDU with VduCpd's info elements and TBD reference to API's - SOL001 | |
R-40293: | The VNF MUST make available (or load on VNF Ansible Server) playbooks that conform to the ONAP requirement. | See above about Ansible scripts | |
R-40827: | The VNF provider MUST enumerate all of the open source licenses their VNF(s) incorporate. | CSAR License directory - SOL004 | Yes? |
R-41215: | The VNF MAY have zero to many “incremental” modules | VnfDf/VDU Profile - SOL001 | Yes |
R-43958: | The VNF Package MUST include documentation describing the tests that were conducted by the VNF provider and the test results. | ? + CSAR includes .../Tests directory with all testing - SOL004 |
|
R-46567: | The VNF Package MUST include configuration scripts for boot sequence and configuration. | CSAR includes configuration scripts in TBD directory that are also referred by VDU.injectFiles Describes the information (e.g. URL) about the scripts, config drive metadata, etc. which can be used during Vdu booting process. | |
R-48596: | The VNF Package MUST include documentation describing the characteristics for the VNF reliability and high availability. | TBD | |
R-56815: | The VNF Package MUST include documentation describing supported VNF scaling capabilities and capacity limits (e.g., number of users, bandwidth, throughput, concurrent calls). | relates to VNFD.configurableProperties describing the configurable properties of the VNF (e.g. related to auto scaling and auto healing). - SOL001 | |
R-58775: | The VNF provider MUST provide software components that can be packaged with/near the VNF, if needed, to simulate any functions or systems that connect to the VNF system under test. This component is necessary only if the existing testing environment does not have the necessary simulators | CSAR includes Test directory with all SW packages for testing - SOL004 | |
R-66070: | The VNF Package MUST include VNF Identification Data to uniquely identify the resource for a given VNF provider. The identification data must include: an identifier for the VNF, the name of the VNF as was given by the VNF provider, VNF description, VNF provider, and version. | Both CSAR Manifest file and VNFD should include this meta-data - SOL01, SOL004 | Yes |
R-AAAA1 | VNF History Log | Change Log - SOL004 | |
R-69565: | The VNF Package MUST include documentation describing VNF Management APIs. The document must include information and tools for: | TBD | |
R-72184: | The VNF MUST have routable FQDNs for all the endpoints (VMs) of a VNF that contain chef-clients which are used to register with the Chef Server. As part of invoking VNF actions, ONAP will trigger push jobs against FQDNs of endpoints for a VNF, if required. | TBD | |
R-73364: | The VNF MUST support at least two major versions of the VNF software and/or sub-components to co-exist within production environments at any time so that upgrades can be applied across multiple systems in a staggered manner. | CSAR includes at least two SW versions per VNFD/VDU SOL001 & SOL004 |
|
R-74763: | The VNF provider MUST provide an artifact per VNF that contains all of the VNF Event Records supported. The artifact should include reference to the specific release of the VNF Event Stream Common Event Data Model document it is based on. (e.g., VES Event Listener) | TBD Monitoring Info element + Event scripts in CSAR | |
R-77707: | The VNF provider MUST include a Manifest File that contains a list of all the components in the VNF package. | CSAR Manifest file - SOL004 | Yes |
R-77786: | The VNF Package MUST include all relevant cookbooks to be loaded on the ONAP Chef Server. | Overlap with above | |
R-78010: | The VNF MUST use the NCSP’s IDAM API for Identification, authentication and access control of customer or VNF application users. | CSAR includes API for controlled access (RBAC) to VNF | |
R-81777: | The VNF MUST be configured with initial address(es) to use at deployment time. After that the address(es) may be changed through ONAP-defined policies delivered from ONAP to the VNF using PUTs to a RESTful API, in the same way that other controls over data reporting will be controlled by policy. | CSAR includes Configuration scripts | |
R-84366: | The VNF Package MUST include documentation describing VNF Functional APIs that are utilized to build network and application services. This document describes the externally exposed functional inputs and outputs for the VNF, including interface format and protocols supported. | TBD | |
R-86758: | The VNF SHOULD provide an automated test suite to validate every new version of the software on the target environment(s). The tests should be of sufficient granularity to independently test various representative VNF use cases throughout its lifecycle. Operations might choose to invoke these tests either on a scheduled basis or on demand to support various operations functions including test, turn-up and troubleshooting. | CSAR includes .../Tests directory for tests scripts- SOL004 | |
R-96634: | The VNF provider MUST describe scaling capabilities to manage scaling characteristics of the VNF. | VNFD.configurableProperties describing scaling characteristics. VNFD.autoscale defines the rules for scaling based on specific VNF indications - not in SOL001 | Yes? |
R-97102: | The VNF Package MUST include VM requirements via a Heat template that provides the necessary data | VDUDesc. VirtualComputeDesc - virtual container - SOL001 | Yes |
R-98617: | The VNF provider MUST provide information regarding any dependency (e.g., affinity, anti-affinity) with other VNFs and resources. |
|
Yes? |
R-99771: | The VNF MUST provide all code/configuration files in a “Locked down” or hardened state or with documented recommendations for such hardening. All unnecessary services will be disabled. VNF provider default credentials, community strings and other such artifacts will be removed or disclosed so that they can be modified or removed during provisioning | TBD | |
R-XXXX1 | The VNF MUST have a corresponding environment file for a Cinder Volume Module. | TBD | |
R-XXXY1 | VNF Policy scripts - External (to VNF-D) Policy enforcement | Policy scripts | |
- is blocked by
-
VNFRQTS-177 Identify set of VNF requirements testable by inspecting the VNF Package
- Closed
-
VNFRQTS-178 identify set of VNF Requirements with Information Elements in the VNF Package
- Closed
- relates to
-
VNFRQTS-95 Updating the TOSCA YAML VNF Modeling Requirements based on agreed VNF package model
- Closed
-
VNFRQTS-27 VNF Requirements List published
- Closed