Flexible designer and orchestrator
Traffic migration
https://docs.onap.org/en/casablanca/submodules/integration.git/docs/docs_vFWDT.html
5G RAN PNF In-place software upgrade
https://git.onap.org/integration/tree/docs/docs_5G_PNF_Software_Upgrade.rst?h=casablanca
5G - PNF Software Update
5G - PNF Software Update Test Status
Change schedule optimizer
https://docs.onap.org/en/casablanca/submodules/optf/cmso.git/docs/index.html
M4 is GREEN for all Change Management Functionalities.
For Casablanca For Casablance release, we propose the following functionalities.
SDC | SO | SDNC | APPC | CCSDK [Ansible playbooks] | OOF | A&AI | Policy | DCAE | Test Case | Status | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Flexible designer/orchestrator | Amdocs | AT&T
Lead: Elena Kuleshov ( ) | vGW in-place software upgrade |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Traffic management | AT&T
Lead: Ruchira Agarwal | Orange
Lead: Lukasz Rajewski | Orange, Intel
Lead: Lukasz Rajewski
Lead: Eric Multanen | vFW migrate traffic and vGW quiesce/resume traffic |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5G PNF in-place software upgrade | AT&T
Lead: Ruchira Agarwal | China Mobile, Huawei
Lead: Yaoguang Wang | 5G PNF in-place software upgrade (emulator)
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Change schedule optimization | AT&T
Lead: Jerry Flood | trigger vGW in-place software upgrade at scheduled time |
|
API Freeze | M3 | 23-Aug-18 |
Code Freeze | M4 | 20-Sep-18 |
Integration | RC0 | 11-Oct-18 |
RC1 | 25-Oct-18 |
1) 1) Flexible workflow designer and orchestrator
Status | ||||||
---|---|---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
- Impacted components: SDC, SO, and VID (nice-to-have)
- Contributors: AT&T, Amdocs, Huawei (?)
- Functionalities
- Catalog in SDC for meta-data about the building blocks – completed by Amdocs
- Designer/editor in SDC for creating workflow – committed to develop by Amdocs
- Convert already existing building blocks/activities to be workflow designer ready
- Move workflow out of service model to independent artifact – priority nice to have
- Distribution of workflow to SO – preferably with workflow as independent artifact
- Deployment of workflow in SO
- User interface (VID) to select workflow and input parameters for execution
- Execute workflow in SO
- Rainy day handling for unsuccessful workflow steps
- Visualize the execution results on VID dashboard
- Ability to cancel workflow execution (VID)
Flow Designer Orchestration High Level Diagram
Run-time support of User Designed Workflows
2) Traffic migration building block
Status | ||||||
---|---|---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
- Impacted components: SDNC, APPC, VFC, SO
- Contributors: AT&T, Orange, Intel
- Functionalities
- Common API definition for traffic migration
- Traffic to one or multiple (V)NFs is distributed by a Traffic Distribution/Balancing Entity
- For Casablanca, we will focus on the LCM action necessary for traffic migration. For Dublin and beyond, we will create a workflow within SO for traffic migration
- New LCM action to control traffic distribution (to achieve traffic migration) - will also have to update CDT Design tool
- DistributeTraffic LCM action (Alternative is ConfigModify LCM action if PTLs recommend to push DistributeTraffic LCM to Dublin)
- Anchor point ID (VNF ID in action identifier)
- Traffic distribution weights for all nodes covered by the anchor point that require changes - this will be in the payload section in the form of "ConfigFileName" The config file (json) would be stored in the Ansible docker.
- The playbook would read a Traffic Distribution Configuration file associated with the DistribConfigName value sent by the Controller
- If we want to test/try various traffic distributions (many tests), we could have many Traffic Distribution Configuration files, each with it own DistribConfigName.
The Playbook could also include a step to take a backup of the Traffic Distribution/Balancing Entity current traffic distrib/configuration and save it locally at some dir path. If the new traffic distribution action is rejected/failed then the playbook can restore previous traffic distribution/config. The Playbook can offer lots of flexibility and it is up to the entity SME to decide what he/she wants to do upon a DistributeTraffic action request.
- Mechanisms for traffic migration - implemented by controllerUse case across different VNF types – vGW/vCPE, vFW, vLB, vDNS, vVOLTE (will need to pick/prioritize)
- Assessment report on commonalities/differences across VNF types – e.g., IP based redirection, DNS based or load balancer
- Incorporate recipe for traffic migration as part of in-place software upgrade workflow – quiesece/resume traffic are part of the SO workflow Develop recipe (using Ansible, NETCONF or REST) for traffic migration depending on the protocol used to communicate with the VNF
- Integration/testing
- For Casablanca, we will demonstrate traffic migration across 2 vFWs using traffic source as the anchor point
- Ansible playbook for adjusting the traffic weight on the traffic source (anchor point)
- Traffic weight before migration: 100,0 and traffic weight after migration: to 0,100
- Second test case would be traffic migration (quiesece / resume) on vGW/vCPE
Execution flow:
Gliffy Diagram | ||||
---|---|---|---|---|
|
User → DMAAP → SDNC/APPC → Ansible → VNF(s)
Design flow:
User uploads Ansible playbook into CCSDK
View file | ||||
---|---|---|---|---|
|
View file | ||||
---|---|---|---|---|
|
For the LCM action :
If the payload contains pnf-flag and it is set to true then that indicates request for PNF.
If it is set to false, then the request is for VNF, and we will use vnf-id in input and nf-naming-code in payload.
nf-naming-code = vgw for example.
SDNC will look up nf-naming-code in AAI if not passed in payload.
For PNF, we will use the following in payload: pnf-name and ipaddress-v4-oam
3) 5G RAN PNF Software upgradeupgrade
Status | ||||||
---|---|---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
- Impacted components: APPC, SO, SDC, A&AI, Ansible/EMSDNC, Ansible (CCSDK)
- Contributors: AT&T, China Mobile, Huawei
- Functionalities
Leverage in-place software upgrade Beijing use case (minor changes) to demonstrate application to 5G RAN PNFs
- Health check (pre/post)
- Software download, installation and activation
- Roll-back for unsuccessful execution Manual processing / intervention for failures/roll-back issues
Complete generic building blocks for flexible upgrade workflow design
Enhance precheck and postcheck steps with vendor specific rules
External controller would receive instructions from Ansible SDNC
PNF ID, Expected Software Version, Controller Type, EC type, Rule Name and corresponding parameters can be specified at run time
Update A&AI entry with new PNF software version, as ‘active version’
Support Batch software upgrade operations (stretch goal)
- More details: 5G - PNF Software Update
4) Change Management Scheduler
Status | ||||||
---|---|---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
- Impacted components: OOF, VID
- Contributors: AT&T
- Functionalities
Schedule a VNF instance at specific time to execute the change management workflow- Discover schedule based on the change management constraints
- Constraints
- Time-based - e.g., execute the change activity during the maintenance window and weekdays
- Concurrency of how many NF instances to change at a time - this is concurrency within a single user request
- NF conflicts (if time permits) - avoid work scheduled at the same time on the same NF instance
- Input
- List of NF instances - request details as depicted in the Beijing script
- Start/end times
- Expected duration
- Constraint/policy
- Type of change (workflow name)
- Concurrency value
- Output
- Schedule - time and instance at which the workflow would be executed
Integration/Testing plan
Use Beijing vGW in-place software upgrade to demo execution at a specific timebased on the schedule output by OOF
Gliffy Diagram | ||||
---|---|---|---|---|
|
...
View file | ||||
---|---|---|---|---|
|
View file | ||||
---|---|---|---|---|
|