Gary Wu | cd47a01 | 2018-11-30 07:18:36 -0800 | [diff] [blame] | 1 | .. This work is licensed under a Creative Commons Attribution 4.0 |
| 2 | International License. http://creativecommons.org/licenses/by/4.0 |
| 3 | |
| 4 | .. _docs_5g_pnf_software_upgrade: |
| 5 | |
Yaoguang Wang | 8a15648 | 2018-11-30 09:21:22 +0800 | [diff] [blame] | 6 | 5G PNF Software Upgrade |
| 7 | ---------------------------- |
| 8 | |
| 9 | Description |
| 10 | ~~~~~~~~~~~ |
| 11 | The 5G PNF Software upgrade use case shows how users/network operators can modify the software running on an existing PNF. This use case is one aspect of Software Management. This could be used to update the PNF software to a newer or older version of software. |
| 12 | |
| 13 | The Casablanca 5G PNF Software Upgrade Use Case Wiki Page can be found here: https://wiki.onap.org/display/DW/5G+-+PNF+Software+Update |
| 14 | |
| 15 | How to Use |
| 16 | ~~~~~~~~~~ |
| 17 | Upgrading PNF (instance) software requires the user/network operator to trigger the upgrade operation from the UI, e.g. VID or UUI. In Cacablanca, users need use ONAP Controllers GUI to trigger the LCM opeations, like pre-check, post-check and upgrade. After receiving the API requests, the ONAP controllers will communicate to the external controller(EC) through south-bound adaptors, which is Ansible in R3. |
| 18 | |
| 19 | Note that, both APPC and SDNC in R3 supported Ansible. Taking SDNC and Prechecking as an example, the steps are as follows: |
| 20 | |
| 21 | 1) In ansible server container, prepare the ssh connection conditions to the external controller, both ssh key file and ansible inventory configuration; |
| 22 | |
| 23 | 2) In sdnc controller container, update the dg configuration file: lcm-dg.properties. |
| 24 | For example: |
| 25 | :: |
| 26 | lcm.pnf.upgrade-pre-check.playbookname=ansible_huawei_precheck |
| 27 | lcm.pnf.upgrade-post-check.playbookname=ansible_huawei_postcheck |
| 28 | lcm.pnf.upgrade-software.playbookname=ansible_huawei_upgrade |
| 29 | |
| 30 | 3) Login controller UI, access the pre-check LCM operation and send request. |
| 31 | Post upgrade-pre-check with the following request body: |
| 32 | :: |
| 33 | { |
| 34 | "input": { |
| 35 | "common-header": { |
| 36 | "timestamp": "2018-10-10T09:40:04.244Z", |
| 37 | "api-ver": "2.00", |
| 38 | "originator-id": "664be3d2-6c12-4f4b-a3e7-c349acced203", |
| 39 | "request-id":"664be3d2-6c12-4f4b-a3e7-c349acced203", |
| 40 | "sub-request-id": "1", |
| 41 | "flags": { |
| 42 | "force" : "TRUE", |
| 43 | "ttl" : 60000 |
| 44 | } |
| 45 | }, |
| 46 | "action": "UpgradePreCheck", |
| 47 | "action-identifiers": { |
| 48 | "vnf-id":"5gDU0001" |
| 49 | }, |
| 50 | "payload": "{\"pnf-flag\":\"true\", \"pnf-name\": \"5gDU0001\",\"pnfId\": \"5gDU0001\", \"ipaddress-v4-oam\": \"EC_IP_address\",\"oldSwVersion\": \"v1\", \"targetSwVersion\": \"v2\", \"ruleName\": \"r001\", \"Id\": \"10\", \"additionalData\":\"{}\"}"}} |
| 51 | |
| 52 | 4) The HTTP API response code 200 and LCM retured code 400 (See APPC return code design specification) indicate success, otherwise failed. |
| 53 | |
| 54 | Test Status and Plans |
| 55 | ~~~~~~~~~~~~~~~~~~~~~ |
| 56 | To see information on the status of the test see: https://wiki.onap.org/display/DW/5G+-+PNF+Software+Update+Test+Status |
| 57 | |
| 58 | Known Issues and Resolutions |
| 59 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 60 | None |
| 61 | |