| 1 | Introduction |
2 | Prerequisites |
| 2.1 | Hardware and Software |
3 | Onboarding |
4 | Procedures |
| 4.1 | Instantiate VNF |
| 4.2 | Scale VNF |
| 4.3 | Terminate VNF |
5 | Troubleshooting |
Reference List | |
1 Introduction
This document describes how to manage the lifecycle of a vIPWorks that is deployed as a Virtual Network Function (VNF) by using the VNF Lifecycle Manager (LCM) application.
The VNF-LCM application is web-based application, it provides the capability to automate use cases of the lifecycle of a VNF.
VNF life cycle procedures are realized by executing ordered sequences of steps, called Workflows. Each workflow must be provided with VNF-specific input parameters during execution.
VNF life cycle procedure can be performed in two types:
- Small stack: VNF life cycle procedure without ECM.
- Full stack:
- VNF life cycle procedure trigger from ECM.
- VNF life cycle procedure trigger from LCM with ECM involved.
For detailed information, refer to IPWorks VNF Life Cycle Management (Workflow) - Full Stack
The following use cases are supported for IPWorks:
- Instantiation
- Scale-out
- Scale-in
- Termination
- Note:
- Scale-out and Scale-in are NOT supported if IPWorks is upgraded and originally deployed by VNF-LCM.
Each VNF lifecycle use case is realized as a workflow that can be independently executed by using the VNF LCM application. A workflow is an ordered sequence of steps to realize a specific use case. A workflow instance is created when a workflow is started.
2 Prerequisites
This section describes the prerequisites that must be fulfilled to manage the IPWorks VNF life cycle by workflow.
2.1 Hardware and Software
The following hardware (virtual and physical) and software are required:
- IPworks workflow package (RPM).
- CEE as Virtual Infrastructure Managers (VIMs) is used. VIM must be configured in VNF-LCM.
- VNF-LCM (with version 18.16 IP1, media version 4.9.22 or above)
is available using either Operations Support System for Radio and
Core (OSS-RC) or Ericsson Network Manager (ENM).
- Note:
- The VIM configuration in VNF-LCM can be checked with the command "vnflcm vim list". For detailed information, refer to VNF-Lifecycle Manager System Administration Guide, Reference [2], in the OSS-RC documentation.
3 Onboarding
This section describes how to prepare for workflow-based VNF operations using VNF-LCM.
- Install IPWorks workflows package.
- Log on to VNF-LCM services VM as cloud-user and switch
to root user.
$ssh cloud-user@<VNF-LCM services VM>
[cloud-user@vnflaf-services ~]$ su -
- Uninstall the existing workflow. (Optional)
[root@vnflaf-services ~]# wfmgr bundle uninstall --name=<Name> --version=<Version>
Use command "wfmgr bundle list" to view the package name and version.
- Note:
- Before the uninstallation, make sure the configuration files under /vnflcm-ext/current/vnf_package_repo/ have been backed up.
- Install package.
[root@vnflaf-services ~]# wfmgr bundle install --package=<The path of the workflow package name>
- Verify that the installation is successful.
[root@vnflaf-services ~]# wfmgr bundle list
For example:
Name | Version | Package ---------+---------+------------------------------------------- vIPWorks | 3.1.2 | ERICvIPWorks_CXP9040851-3.1.2-1.noarch.rpm
- Log on to VNF-LCM services VM as cloud-user and switch
to root user.
- Check SSH key pair.
- Check if the key pair id_rsa and id_rsa.pub exist.
[root@vnflaf-services ~]# ls /home/jboss_user/.ssh/
If it exists, skip step b.
- Generate SSH key pair.
[root@vnflaf-services ~]# su jboss_user
[jboss_user@vnflaf-services root]$ ssh-keygen -t rsa
# Generating public/private rsa key pair. # Enter file in which to save the key (/home/jboss_user/.ssh/id_rsa): [Press enter] # Enter passphrase (empty for no passphrase): [Press enter] # Enter same passphrase again: [Press enter] Your identification has been saved in /home/jboss_user/.ssh/id_rsa. Your public key has been saved in /home/jboss_user/.ssh/id_rsa.pub.
[jboss_user@vnflaf-services root]$ exit
- Note:
- Encrypted private keys are not supported, that is, keep passphrase empty.
- Check if the key pair id_rsa and id_rsa.pub exist.
4 Procedures
These sections describe how to perform LCM operations.
Do not execute a workflow instance on a VNF while another one is in progress, as it can cause unexpected behavior. Terminate the ongoing procedure before starting a new one.
VNF-LCM procedures utilize workflow instances. Figure 1 shows an example of a workflow instance, where workflow progress can be tracked in the Workflow Diagram view. The Workflow Diagram only represents stages of the various procedures. Operations that are performed in the Task view.
4.1 Instantiate VNF
This section describes how to instantiate a VNF using VNF-LCM.
- Prepare the required configuration files.
[root@vnflaf-services ~]# cp /home/cloud-user/main.yaml /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version> [root@vnflaf-services ~]# cp /home/cloud-user/ipw_scaling_group.yaml /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>/Resources/HotFiles [root@vnflaf-services ~]# cp /home/cloud-user/env.yaml /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>/configurations/<Instance configuration folder> [root@vnflaf-services ~]# cp /home/jboss_user/.ssh/id_rsa.pub /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>/configurations/<Instance configuration folder> [root@vnflaf-services ~]# cp /home/jboss_user/.ssh/id_rsa.pub /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>/Resources/UserConfigurationFiles
- Generate the wrapper file VNFD_Wrapper_vIPWorks.json.
- Make sure config.yaml, and yaml2json.py are in the correct folders under /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>.
- vIPWorks_<Version>/Resources/EnvironmentFiles/config.yaml
- vIPWorks_<Version>/Resources/LcmScripts/yaml2json.py
- Log on to LCM, and go to /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>/Resources/LcmScripts.
- Run the script yaml2json.py.
> python yaml2json.py -o ../VnfdWrapperFiles/VNFD_Wrapper_vIPWorks.json
VNFD_Wrapper_vIPWorks.json will be generated in /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>/Resources/VnfdWrapperFiles/.
- Make sure config.yaml, and yaml2json.py are in the correct folders under /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>.
- Verify the structure of the vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version> directory is as follow:
<vnfId> †‡‡ configurations € ƒ‡‡ instance1_config € ƒ‡‡ env.yaml € ƒ‡‡ id_rsa.pub ƒ‡‡ Resources †‡‡ EnvironmentFiles € ƒ‡‡ config.yaml †‡‡ HotFiles € ƒ‡‡ ipw_scaling_group.yaml †‡‡ LcmScripts € †‡‡ post_instantiation.py € †‡‡ pre_instantiation.py € †‡‡ pre_termination.py € †‡‡ ipwcommon.py € †‡‡ pre_scale.py € †‡‡ post_scale.py € ƒ‡‡ yaml2json.py †‡‡ UserConfigurationFiles € ƒ‡‡ id_rsa.pub †‡‡ VnfdWrapperFiles/ € ƒ‡‡ VNFD_Wrapper_vIPWorks.json †‡‡ main.yaml - Remove nfvo configuration from
LCM-VIM.
- Check if the nfvo configuration exists.
[root@vnflaf-services ~]# vnflcm nfvo list
- If nfvo exists, delete it.
[root@vnflaf-services ~]# vnflcm nfvo delete --baseurl <baseurl>
- Note:
- baseurl can be get from Step_a.
- Check if the nfvo configuration exists.
- To perform LCM operations, start a web browser from a
host with connectivity to the VNF-LCM machine. For example:
http://<VNF-LCM services IP>/index.html#workflows
- On the VNF-LCM Workflows page, select Instantiate vIPWorks VNF, and click Start a New Instance.
- On the Start a Workflow page, fill out the Instance Name field, and click Submit.
- Select the newly created workflow from the Instance Activity panel.
- On the Workflow Instance page, add VNF Instance Name and VNF instance description. Choose a VNF description
ID under Select VNF descriptor ID. Then click Submit.
- Note:
- On the Get Instance Configuration page,
select a VNF configuration to instantiate, and click Submit.
- Note:
- The Select Configuration for the VNF instance field lists all VNF configurations available for instantiation in the /vnflcm-ext/current/vnf_package_repo/vIPWorks_<Version>/configurations/ folder.
- Add parameters
in ENM, and click Submit. Skip this step if you did NOT checked Add Network Element in ENM/
OSS-RC when adding VNF Instance Name.
Followings are the mandatory parameters:
Parameter
Description
Network Element Type
VNF type. For example, "vIPWorks".
Network Element Username
VNF user name. For example, "root".
Network Element Password
VNF password. For example, "rootroot".
Node Ip Address
The value of MIP_OAM_IP. For example, "10.134.142.70".
NETCONF Port
830 is recommended.
- Click Refresh.
- On the Select VIM page, select a Vim, and click Submit.
- On the Select Tenant page, select a tenant,
and click Submit.
- Note:
- It will take a few minutes to complete. You can click Refresh to check the status of the task.
- Add subtenant if there are subtenants within the tenant. Choose the subtenant you need and click Submit. If no subtenant, this page will not be showed.
- Add the HostName of the server, UserName of the server, Password of the server, and Port no of the server, then click Submit. Skip this step if you did NOT checked Add Network Element in ENM/ OSS-RC when adding VNF Instance Name
- Change the password for the <EMERGENCY_USER> user.
$ssh <EMERGENCY_USER>@<SC-1_IP_Address>
This <EMERGENCY_USER> user is used for graceful termination and scale operations. The default value of <EMERGENCY_USER> is emergency. The default password is emergency.
After logging on the system for the first time, there is a prompt to have the user change the password.
For more information about the parameter <EMERGENCY_USER>, refer to the table "IPWorks VNF Deployment Parameter for HEAT Stack" in IPWorks Deployment Guide, Reference [3].
4.2 Scale VNF
This section describes how to scale-out/in a VNF using VNF-LCM.
Continue with this procedure only if the VNF to be scaled is already instantiated by VNF-LCM.
- On the VNF-LCM Workflows page, select Scale vIPWorks VNF, and click Start a New Instance.
- In the prompt window, fill out the Instance Name field, and click Continue.
- Select the newly created workflow from the Instance Activity panel.
- Select one scaling method from Task panel, and click Submit.
- If Scale-Out is chosen, fill
out the user data in Task panel, and click Submit.
- Note:
-
- The Availability zones for scaling separated by commas field is a list of zones which is corresponded to all the scaled VMs. For example, the first element in the list is for <VNFNAME>_Scale_0, the second is for <VNFNAME>_Scale_1, and so on. For how to find the available zone for VMs, refer to the nova command nova availability-zone-list and nova host-describe to check.
- If the total number of scaled-out VMs is more than the number of availability zone(s), the rest of VMs will be assigned to any zone(s) automatically.
Take an example to clarify how to scale out the VM for multiple times:
In the following example, the VMs are scaled out for 2 times, 2 VMs are scaled out for each time, then the added 4 VMs are assigned to 4 zones in sequence.
- First scale-out:
Number of additional VMs: 2
Availability zones: nova:compute-0-2.domain.tld,nova:compute-0-3.domain.tld
- Second scale-out:
Number of additional VMs: 2
Availability zones: nova:compute-0-2.domain.tld,nova:compute-0-3.domain.tld,nova:compute-0-4.domain.tld,nova:compute-0-5.domain.tld
If the zones provided are not enough, the rest of VMs are assigned automatically.
- Note:
- It will take a few minutes to complete. You can click Refresh to check the status of the task.
- If Scale-In is chosen, fill out the user data in Task panel, and click Submit.
- It will take a few minutes to complete. Click Refresh to check the status of the task.
4.3 Terminate VNF
This section describes how to terminate a VNF using VNF-LCM.
Continue with this procedure only if the VNF to be terminated is already instantiated by VNF-LCM.
- On the VNF-LCM Workflows page, select Terminate VNF, and click Start a New Instance.
- On the Start a Workflow page, fill out the Instance Name field, and click Submit.
- Select the newly created workflow from the Instance Activity panel.
- On the Workflow Instance page, select
the VNF that is to be terminated, select termination type, and click Submit.
- Note:
- It will take a few minutes to complete. You can click Refresh to check the status of the task.
The following options are available as termination types:
Graceful
The VMs in the cluster are gracefully locked: the VNF instance gradually stops processing traffic, but there still might be a minor traffic loss. The VNF is terminated after the expiration of the graceful termination period.
Forceful
The VNF is terminated immediately, all ongoing traffic is lost. This option must be confirmed on the next screen, as it stops all traffic.
Graceful termination timeout (sec)
The graceful termination timeout value defines the time length from applying graceful termination to the termination of the VNF. Ongoing traffic still happens during this period. The default value is -1, which means the VNF is terminated only after all VMs stopped processing traffic.
- Terminate
external network stack.
The external network stack was generated in deployment. For detailed information about external network stack, refer to IPWorks Deployment Guide.
- Log on to Atlas and list all stacks.
atlasadm@atlas:~ # openstack stack list +--------------------------------------+------------------+-----------------+----------------------+----------------------+ | ID | Stack Name | Stack Status | Creation Time | Updated Time | +--------------------------------------+------------------+-----------------+----------------------+----------------------+ | 171dd7ab-d29b-4df0-b29b-4e5f9b264fc4 | ipw_41 | UPDATE_COMPLETE | 2018-12-10T07:34:48Z | 2018-12-10T09:46:42Z | | 53031877-1a83-41ce-b7e3-a58a7320019f | ipw_41-net | CREATE_COMPLETE | 2018-12-10T07:10:19Z | None | +--------------------------------------+------------------+-----------------+----------------------+----------------------+
- Delete network stack.
atlasadm@atlas:~ # openstack stack delete <stack ID>
For example:
atlasadm@atlas:~ # openstack stack delete 53031877-1a83-41ce-b7e3-a58a7320019f
- Log on to Atlas and list all stacks.
5 Troubleshooting
If the workflow execution is unsuccessful, refer to the section IPWorks Workflows Problems in IPWorks Troubleshooting Guideline to investigate and resolve the possible issues.
The log from VNF-LCM is located in VNF-LCM: /ericsson/3pp/jboss/standalone/log/server.log.

Contents















