Fixed CDR_IMAGE_VERSION in portal script
[demo.git] / README.md
index 5046394..945e3d3 100644 (file)
--- a/README.md
+++ b/README.md
@@ -413,7 +413,7 @@ To create the VNF template in CDT, the following steps are required:
  - Click "Reference Data" Tab
  - Click "Save All to APPC"
 
-Finally, log into the APPC controller container and set the VNF password in /opt/onap/appc/data/properties/appc_southbound.properties to admin.
+Finally, log into the APPC controller container and set the VNF password (ConfigScaleOut.password) in /opt/onap/appc/data/properties/appc_southbound.properties to admin. Note that in an ONAP instance created with OOM, APPC may use redundancy to make the controller resilient to failures. For Beijing, CDT only updates one replica of APPC. As such, in a multi-replica environment, the property file should be copied over to the other replicas. If redundancy is used, APPC has 3 replicas. CDT typically updates APPC-0 only, so the property file should be copied over to APPC-1 and APPC-2. This will be addressed in future ONAP releases.
 
 To trigger the scale out workflow, the user/network operator can log into VID from the ONAP Portal (demo/demo123456! as username/password), select "VNF Changes" and then the "New (+)" button. The user/network operator needs to fill in the "VNF Change Form" by selecting Subscriber, Service Type, NF Role, Model Version, VNF, Scale Out from the Workflow drop down window, and APPC from the Controller drop down window. After clicking "Next", in the following window the user/network operator has to select the VF Module to scale by clicking on the VNF and then on the appropriate VF Module checkbox. Finally, by clicking on the "Schedule" button, the scale out use case will run as described above.
 
@@ -450,3 +450,39 @@ Each VNF has a MANIFEST.json file associated with the HEAT templates. During VNF
     zip ZIP_FILE_NAME.zip *
     
 For information about VNF onboarding via the SDC portal, please refer to the wiki page: https://wiki.onap.org/display/DW/Design
+
+NF Change Management use case
+---
+
+For the Beijing release, we focused on in-place software upgrades, with vendor-specific details encapsulated in Ansible scripts provided by NF vendors. In-place software upgrades use direct communication between the controller (SDNC or APPC) and the NF instance to trigger the software upgrade, with the upgrade executing on the instance without relinquishing any of the physical resources. Both L1 - L3 and L4+ NFs are supported in the ONAP release via SDN-C and APP-C respectively. 
+The change management workflow is defined as a composition of building blocks that include locking and unlocking the NF instance, executing health checks, and executing the software upgrade. 
+
+ - The CM workflow for the in-place software upgrade is defined and executed by the service orchestrator (SO). 
+ - A&AI is used to lock/unlock the NF instance 
+ - The pre/post health checks and software upgrade execution are implemented in App-C (L4+ NFs) and SDN-C (L1-L3 NFs) by leveraging Ansible services to communicate with the NF instances. 
+ - The user (or, operator) interfaces with the CM workflow using ONAP's VID. SO communicates with A&AI using a REST API and with the controllers SDNC/APPC via DMaaP. 
+
+We setup the use case demonstration for the software upgrade on the virtual gateway (vGW) as part of the vCPE use case in ONAP's Beijing release.
+The main script for invoking SO in-place software upgrade workflow is in [demo.git]/vnfs/vCPE/scripts/inPlaceSoftwareUpgrade\_vGW.txt . The workflow can be tested without VID by using this script.
+To execute the script, the user/operator would login to the SO container and copy/paste the script. One would have to install vim to edit the script and curl to execute commands within the script:
+
+ - apt-get update 
+ - apt-get install vim 
+ - apt-get install curl 
+
+Check in VID for the available instances - service ID and instance ID - and replace those IDs in the script. Since the use case is for vGW, the controller type is SDNC.
+
+Next, the user/operator would login to the SDNC container and appropriately configure the Ansible playbooks:
+
+ - Add the ssh key of the vGW on the Ansible server
+ - Update VNF IP in DG config
+ -- docker exec -it sdnc_controller_container bash 
+ - Change the following line in /opt/onap/sdnc/data/properties/lcm-dg.properties with IP of VNF:
+ -- ansible.nodelist=['10.12.5.85']
+ - Update VNF IP in Ansible Server
+ -- docker exec -ti sdnc_ansible_container /bin/bash
+ -- Add VNF IP in /opt/onap/sdnc/Playbooks/Ansible_inventory
+ - Update the Playbooks /opt/onap/sdnc/Playbooks
+ -- ansible_upgradesw@0.00.yml
+ -- ansible_precheck@0.00.yml
+ -- ansible_postcheck@0.00.yml