From dee1b83f84fe0ebd964aa56c7785678353bb7ad2 Mon Sep 17 00:00:00 2001 From: rameshiyer27 Date: Thu, 12 Nov 2020 13:35:27 +0000 Subject: PNF Software Upgrade documentation Issue-ID: INT-1740 Signed-off-by: zrrmmua Change-Id: I63d47c122a3322703b4b8adf63aa255d8d66c0d6 --- ..._5G_PNF_Software_Upgrade_With_Schema_Update.rst | 106 +++++++++++++++++++++ docs/files/softwareUpgrade/OnboardingCsar.png | Bin 0 -> 247900 bytes docs/files/softwareUpgrade/SchemaUpdate.png | Bin 0 -> 31529 bytes docs/files/softwareUpgrade/ServiceLevelUpgrade.png | Bin 0 -> 106771 bytes .../files/softwareUpgrade/ServiceLevelWorkflow.png | Bin 0 -> 75772 bytes docs/files/softwareUpgrade/WorkflowView.png | Bin 0 -> 47692 bytes docs/functional-requirements.csv | 1 + docs/schema-update-apis.csv | 49 ++++++++++ 8 files changed, 156 insertions(+) create mode 100644 docs/docs_5G_PNF_Software_Upgrade_With_Schema_Update.rst create mode 100644 docs/files/softwareUpgrade/OnboardingCsar.png create mode 100644 docs/files/softwareUpgrade/SchemaUpdate.png create mode 100644 docs/files/softwareUpgrade/ServiceLevelUpgrade.png create mode 100644 docs/files/softwareUpgrade/ServiceLevelWorkflow.png create mode 100644 docs/files/softwareUpgrade/WorkflowView.png create mode 100644 docs/schema-update-apis.csv diff --git a/docs/docs_5G_PNF_Software_Upgrade_With_Schema_Update.rst b/docs/docs_5G_PNF_Software_Upgrade_With_Schema_Update.rst new file mode 100644 index 000000000..840ff1a4f --- /dev/null +++ b/docs/docs_5G_PNF_Software_Upgrade_With_Schema_Update.rst @@ -0,0 +1,106 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 + +.. _docs_5g_pnf_software_upgrade_with_schema_update: + + +Support xNF Software Upgrade in association to schema updates +------------------------------------------------------------- + +Description +~~~~~~~~~~~ + +A schema update in relation to a xNF software upgrades is a routine for network upgrade to support new xNF features, improve efficiency or increase xNF capacity on the field, and to eliminate bugs. This use case provides to ONAP an advantage in orchestrating and managing the Life Cycle of a Network Services in-line with business and service objectives. Deployment and orchestration of new services over CNFs, VNFs and PNFs in a model and software driven way simplifies the network management. Enables operators and service providers to manage the Life Cycle of a Network Service. Assuring continuity of operation of services is crucial for production and carrier grade environments. The actualization or upgrades of software and in consequence required changes in the service model is a natural part of service instance life cycle. Without the support of ONAP service update with schema change, service life cycle management by ONAP can be very difficult which can impact the quality and continuity of services. + + +Current Status in Guilin +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +xNF Software Upgrade with xNF artifacts updating in Release G +------------------------------------------------------------- + +The following is the xNF software upgrade procedure with schema update. + +.. image:: files/softwareUpgrade/SchemaUpdate.png + +1. A vendor shall provide + a. a new VNF/PNF package with updated artifacts, and + b. the new VNF/ PNF software image to the operator. +2. At receiving of the new package, the operator shall + a. onboard the new package and create a new resource template or update the existing resource template (PNF or VNF) + b. update the existing service template with the new or updated resource template + c. distribute the updated service template to run time. +3. At run time, the operator shall, based on the updated service template, + a. upgrade a service instance and its resource instances, and + b. update the AAI entry accordingly + +The above procedure is based on the following conditions: + +* When updating a service template at design time, the resource instance name and network topology shall be unchanged. + +* A service template must be upgradable from any previous versions, including that any new resource template of a given resource instance (within the service template) must be upgradeable from any previous resource template versions. + +* At run time, resource upgrade sequence is not sensitive in service instance upgrading procedure. + +Function limitations in Release G +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +* The operator shall know the possible/feasible resource upgrade path based on vendor provided information. + +* When operator updating a service template, the updated service template must be upgradable from any previous versions: + - Within the service template, the resource instance name and network topology are unchanged. + - The new resource template of a given resource instance (within the service template) must be upgradeable from any previous resource template versions. +Note: This is to avoid adding possible upgrade paths info and upgrade sequence info into SDC model + +Update a xNF resource template from a new onboarding package +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +When updating a resource template from a new VSP casr, the new onboarded descriptor and the new onboarded artifacts will be transformed into the new version of the resource csar. The current resource name and invariantUUID will be remained. + +As an alternative, a resource csar can be updated manually using SDC GUI. + +.. image:: files/softwareUpgrade/OnboardingCsar.png + +The update path (green path in above picture) is supported in the current SDC implementation. However, there are bugs which need to be fixed. + +Service level LCM workflow in SO +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: files/softwareUpgrade/ServiceLevelWorkflow.png + +A generic SO workflow is created which can be used to upgrade one service instance based on the updated service template. This service level workflow is network function type independent. When upgrade one resource instance, the subsequent resource level upgrade workflow is selected based on the network function type. It contains following main steps: + +* Service Level Preparation + - Creating resource template instance upgrade list by comparing the service templates + - Select a resource level health check workflow based on the resource type + - Execute the selected resource level health check workflow on all resource instances within the service +* Service Level Upgrade + - Select a resource level upgrade workflow based on the resource type + - Execute the selected resource level upgrade workflow on each upgrading resource instances + - Update the software version, model-invariant-id and model-version-id of the resource template in the A&AI entry at end of each Resource level upgrade workflow +* Service Level Update + - Update the model-version-id of the service template in the A&AI entry +* Service Level postCheck + - Select a resource level health check workflow based on the resource type + - Execute the selected resource level health check workflow on all resource instances within the service + +The following is an example of the service level workflow with PNF upgrade sub-workflow is called at Service Level Upgrade step: + +.. image:: files/softwareUpgrade/ServiceLevelUpgrade.png + +Workflow view +~~~~~~~~~~~~~ + +.. image:: files/softwareUpgrade/WorkflowView.png + +SO APIs +~~~~~~~ +.. csv-table:: use case table + :file: schema-update-apis.csv + :widths: 60,20,20 + :header-rows: 1 + +Reference +~~~~~~~~~~~ + +`PNF Software Upgrade with Schema Update Wiki Page `_ diff --git a/docs/files/softwareUpgrade/OnboardingCsar.png b/docs/files/softwareUpgrade/OnboardingCsar.png new file mode 100644 index 000000000..0a5ba2bfd Binary files /dev/null and b/docs/files/softwareUpgrade/OnboardingCsar.png differ diff --git a/docs/files/softwareUpgrade/SchemaUpdate.png b/docs/files/softwareUpgrade/SchemaUpdate.png new file mode 100644 index 000000000..25884bdcb Binary files /dev/null and b/docs/files/softwareUpgrade/SchemaUpdate.png differ diff --git a/docs/files/softwareUpgrade/ServiceLevelUpgrade.png b/docs/files/softwareUpgrade/ServiceLevelUpgrade.png new file mode 100644 index 000000000..86d856765 Binary files /dev/null and b/docs/files/softwareUpgrade/ServiceLevelUpgrade.png differ diff --git a/docs/files/softwareUpgrade/ServiceLevelWorkflow.png b/docs/files/softwareUpgrade/ServiceLevelWorkflow.png new file mode 100644 index 000000000..ea37d1603 Binary files /dev/null and b/docs/files/softwareUpgrade/ServiceLevelWorkflow.png differ diff --git a/docs/files/softwareUpgrade/WorkflowView.png b/docs/files/softwareUpgrade/WorkflowView.png new file mode 100644 index 000000000..79a28f1db Binary files /dev/null and b/docs/files/softwareUpgrade/WorkflowView.png differ diff --git a/docs/functional-requirements.csv b/docs/functional-requirements.csv index 086e7958a..e06df187b 100644 --- a/docs/functional-requirements.csv +++ b/docs/functional-requirements.csv @@ -2,6 +2,7 @@ Functional requirement,Link,Contacts PNF Software Upgrade using direct Netconf Yang interface with PNF,:ref:`official doc `,R.Gumma R.Tyagi PNF Software Upgrade with EM with Ansible,:ref:`official doc `, Y.Wang E.Wang PNF Software Upgrade with EM with Netconf, :ref:`official doc `, Y.Wang E.Wang +PNF Software Upgrade in association to schema updates, :ref:`official doc `, Zu Qiang VSP Compliance and Validation Check within SDC,`wiki page `__,P.Balan Enable PNF software version at onboarding,`wiki page `__,A.Schmid xNF communication security enhancements, `wiki page `__,M.Przybysz diff --git a/docs/schema-update-apis.csv b/docs/schema-update-apis.csv new file mode 100644 index 000000000..391615363 --- /dev/null +++ b/docs/schema-update-apis.csv @@ -0,0 +1,49 @@ +API,Service level workflow retrieving API,Service level workflow execution API +Name,RetrieveServiceLevelWorkflow,ExecuteServiceLevelWorkflow +Type,Get,Post +URL,/onap/so/infra/workflowSpecifications/v1/workflows?resourceTarget=service,/onap/so/infra/instanceManagement/v1/serviceInstances/{serviceInstanceId}/workflows/{workflow_UUID} +Request,"Headers: application/json + +Path parameters: resourceTarget=service + +Body={ + +} + + + +","Headers: application/json + +Path parameters: serviceInstances; workflow_UUID + +Body={ + + ""modelInfo"":{ #targetServiceModelVersionId + + ""modelType"":""service"", + + ""modelInvariantUuid"":""fe41489e-1563-46a3-b90a-1db629e4375b"", + + ""modelVersionId"" : ""cd4decf6-4f27-4775-9561-0e683ed43635"", + + ""modelVersion"":""1.0"" + + } + +}" +Response,"200​ – Successful retrieval of workflows + +400 - Bad Request + +500 - Internal Server Error + + + + +","202​ - Request has been accepted for processing + +400 - Bad Request + +500 - Internal Server Error" +,, +,, -- cgit 1.2.3-korg