Configuring the VNF descriptor

Expand all | Collapse all

Specify the settings of the virtual network function in a VNF descriptor in YAML format, then add the VNF descriptor to the root directory of the VNF package. A VNF descriptor has the following structure:

Section/setting

Description

name

Name of the virtual network function.

description

Brief description of the virtual network function.

description_file

Name of the PDF file with the technical documentation or specification of the virtual network function. Optional parameter.

This file must be placed in the root directory of the VNF package. Users can view and download this file.

provider

Provider of the virtual network function.

version

Version of the virtual network function.

external_connections

External connection points of the virtual network function.

You can configure the specified external connection points of the virtual network function in the orchestrator web interface.

internal_connections

Internal connection points of VDUs that are part of the virtual network function.

This section is optional.

virtual_links

Virtual links for connecting internal connection points.

This section must be specified if you specified the internal_connections section.

images

VDU disk images.

You can deploy multiple VDUs using the same VDU disk image.

configurations

Scripts for performing actions at various stages of the virtual network function lifecycle, for example, during deployment.

flavours

Flavours of the virtual network function.

You can select one of the specified flavours in the orchestrator web interface.

scaling

Virtual network function scaling parameters.

This section is optional.

user_configurations

Orchestrator web interface inputs that are added to the settings area of the virtual network function.

This section is optional.

backups

Virtual network function backup tasks.

This section is optional.

VNF descriptor example

external_connections

The external_connections section has the following structure:

Section/setting

Description

- name

Name of the external connection point.

 

description

Brief description of the external connection point.

ip

IP address of the external connection point.

Enter a value in the XXX.XXX.XXX.XXX format, for example:

192.168.110.126

mask

Subnet mask of the external connection point.

Possible values:

  • Value in the XXX.XXX.XXX.XXX format, for example:

    192.168.110.126

    In this case, the IP address is assigned using DHCP via MAC-based reservation of an OpenStack port and cannot be changed.

  • AUTO — The IP address is assigned automatically using an external DHCP server or scripts. You can specify scripts in the configurations section.
  • MANUAL — The IP address must be specified manually in the orchestrator web interface, in the settings area of the virtual network function.

gw

IP address of the gateway of the external connection point.

Possible values:

  • Value in the XXX.XXX.XXX.XXX format, for example:

    192.168.110.126

    In this case, the IP address is assigned using DHCP via MAC-based reservation of an OpenStack port and cannot be changed.

  • AUTO — The IP address is assigned automatically using an external DHCP server or scripts. You can specify scripts in the configurations section.
  • MANUAL — The IP address must be specified manually in the orchestrator web interface, in the settings area of the virtual network function.

Optional parameter.

dns

IP address of the DNS server of the external connection point.

Possible values:

  • Value in the XXX.XXX.XXX.XXX format, for example:

    192.168.110.126

    In this case, the IP address is assigned using DHCP via MAC-based reservation of an OpenStack port and cannot be changed.

  • AUTO — The IP address is assigned automatically using an external DHCP server or scripts. You can specify scripts in the configurations section.
  • MANUAL — The IP address must be specified manually in the orchestrator web interface, in the settings area of the virtual network function.

Optional parameter.

group

The group to which the external connection point belongs.

This setting is required if multiple VDUs within the virtual network function use the same external connection point.

Example of this section

internal_connections

The internal_connections section has the following structure:

Section/setting

Description

- name

Name of the internal connection point.

 

description

Brief description of the internal connection point.

virtual_link_name

The virtual link name of the internal connection point.

You can specify virtual links in the virtual_links section.

ip

IP address of the internal connection point.

Possible values:

  • Value in the XXX.XXX.XXX.XXX format, for example:

    192.168.110.126

    In this case, the IP address is assigned using DHCP via MAC-based reservation of an OpenStack port and cannot be changed.

  • AUTO — The IP address is assigned automatically using an external DHCP server or scripts. You can specify scripts in the configurations section.
  • MANUAL — The IP address must be specified manually in the orchestrator web interface, in the settings area of the virtual network function.

mask

Subnet mask of the internal connection point.

Possible values:

  • Value in the XXX.XXX.XXX.XXX format, for example:

    192.168.110.126

    In this case, the IP address is assigned using DHCP via MAC-based reservation of an OpenStack port and cannot be changed.

  • AUTO — The IP address is assigned automatically using an external DHCP server or scripts. You can specify scripts in the configurations section.

gw

IP address of the gateway of the internal connection point.

Possible values:

  • Value in the XXX.XXX.XXX.XXX format, for example:

    192.168.110.126

    In this case, the IP address is assigned using DHCP via MAC-based reservation of an OpenStack port and cannot be changed.

  • AUTO — The IP address is assigned automatically using an external DHCP server or scripts. You can specify scripts in the configurations section.

Optional parameter.

dns

IP address of the DNS server of the internal connection point.

Possible values:

  • Value in the XXX.XXX.XXX.XXX format, for example:

    192.168.110.126

    In this case, the IP address is assigned using DHCP via MAC-based reservation of an OpenStack port and cannot be changed.

  • AUTO — The IP address is assigned automatically using an external DHCP server or scripts. You can specify scripts in the configurations section.

Optional parameter.

group

The group to which the internal connection point belongs.

This setting is required if multiple VDUs within the virtual network function use the same internal connection point.

Example of this section

virtual_links

The virtual_links section has the following structure:

Section/setting

Description

- name

Name of the virtual link.

 

cidr

IPv4 prefix of the virtual link.

Enter a value in the XXX.XXX.XXX.XXX/XX format, for example:

192.168.2.0/24

ip_version

Version of IP addresses in the subnet.

Possible values:

  • v4
  • v6

Example of this section

images

The images section has the following structure:

Section/setting

Description

- name

Name of the VDU disk image.

 

container_format

Container format of the VDU disk image.

disk_format

Format of the VDU disk image.

type

VIM type.

file_name

File name of the VDU disk image. You must place the VDU disk image in the /image directory of the VNF package.

Example of this section

configurations

The configurations section has the following structure:

Section/setting

Description

- name

Name of the script.

 

filename

The file name of the script file, Ansible playbook, or user-data attribute for Cloud-init. You must place the script in the /scripts directory of the VNF package.

stage

The stage of operation of the virtual network function at which the script runs.

Possible values:

  • initialization to run the script on deployment of the virtual network function.
  • termination to run the script on deletion of the virtual network function.
  • none to run the script when a value changes in the settings area of the virtual network function in the orchestrator web interface.

    You can specify orchestrator web interface inputs in the user_configurations section.

executor

Script interpreter.

Possible values:

  • ansible
  • expect
  • /bin/sh
  • bin/bash
  • cloud-init

     

You can also specify the path to a custom script interpreter, for example:

/user/bin/php

authentication

Method for authenticating the VNFM in the virtual network function for running scripts.

Possible values:

  • key means the VNFM is authenticated in the virtual network function using a key that is generated when the function is deployed.

    You need to use a script to get the key, so we recommend not to specify this value for the first script.

  • password means the VNFM is authenticated in the virtual network function with a user name and password.

    You can specify the user name and password in the flavours → vdus section.

files_path

Path to files for running scripts using SSH.

Optional parameter.

You need to create a directory in the /scripts directory of the VNF package and place the files in that directory. The files are copied to the VDU.

config_drive

Using config-drive.

Possible values:

  • true
  • false

     

This parameter must be specified if as the executor, you specified cloud_init.

timeout

The time to wait for the script to finish, in seconds. If the script does not finish within the specified time, execution is terminated. The timeout starts at the moment the script is run.

You can specify this parameter if you have specified a path to a custom script executor for the executor parameter.

Example of this section

flavours

The flavours section has the following structure:

Section/setting

Description

- name

Name of the deployment option.

 

description

Brief description of the flavour.

position

Sequential number of the flavour. The flavour with the lowest position has the lowest performance.

affinity

Groups of VDUs hosted on the same OpenStack host. We recommend hosting VDUs that require minimizing communication delays which each other on the same OpenStack host.

anti-affinity

Groups of VDUs hosted on different OpenStack hosts. We recommend deploying VDUs that may require vertical scaling or high availability on distinct OpenStack hosts.

management

Parameters of VDU administration consoles.

vdus

VDU settings.

The affinity and anti-affinity sections have the following structure:

Section/setting

Description

groups

VDU groups.

 

- name

Name of the VDU group.

 

vdu_name

Names of VDUs.

Specify a list of values, for example:

vdu_name:

- VDU_1

- VDU_2

The management section has the following structure:

Section/setting

Description

vnc

Settings for managing VDUs using the VNC console.

 

- vdu_name

Name of the VDU.

ssh

Settings for managing VDUs using the SSH console.

 

- vdu_name

Name of the VDU.

 

def_user

User name for establishing the SSH session.

authentication

Method for authenticating the VNFM in the virtual network function for running scripts.

Possible values:

  • key means the VNFM is authenticated in the virtual network function using a key that is generated when the function is deployed.

    You need to get the key using a script. You can specify scripts in the configurations section.

  • password means the VNFM is authenticated in the virtual network function with a user name and password.

    You can specify the user account name and password in the vdus section.

web

Settings for managing VDUs using the web console.

 

- vdu_name

Name of the VDU.

 

protocol

Protocol for connecting to the web console.

Possible values:

  • http
  • https

port

Port for connecting to the web console. By default, port 80 is used.

Enter a value in the range of 1 to 65,536.

path

Path to the web console.

def_user

User name for authenticating in the web console.

def_password

Password for authenticating in the web console.

The vdus section has the following structure:

Section/setting

Description

- name

Name of the VDU.

 

password_rules

VDU password requirements.

This section is optional.

 

length

Minimum length of the password.

use_upper_case

Users must use uppercase characters in the password.

Possible values:

  • true
  • false

use_lower_case

Users must use lowercase characters in the password.

Possible values:

  • true
  • false

use_digits

Users must use numerals in the password.

Possible values:

  • true
  • false

specific_symbols

Whether users must use special characters in the password, such as:

@"!

specific_symbols_min_usage

Minimum number of special characters that must be present in the password.

check_connection_mode

Type of VDU availability test performed during deployment. By default, an SSH test is performed.

Possible values:

  • ssh
  • none

Optional parameter.

zabbix_template

Name of the Zabbix template for the VDU.

monitoring_type

Monitoring type of the virtual network function.

Possible values:

  • agent means monitoring using a Zabbix agent.
  • snmp means monitoring using the SNMP protocol.

ssh_port

Port number for establishing an SSH session.

Optional parameter.

configurations

Names of scripts that are run on the VDU.

Specify a list of values, for example:

vdu_name:

- config_1

- config_2

You can specify scripts in the configurations section.

backups

Names of backup tasks to be used on the VDU.

Specify a list of values, for example:

vdu_name:

- backup_1

- backup_2

You can specify backup tasks in the backups section.

This section is optional.

def_user

User name for authenticating the VNFM in the virtual network function.

Optional parameter.

def_password

Password for authenticating the VNFM in the virtual network function.

Optional parameter.

password_authentication

Password authentication of the VNFM in the virtual network function.

Possible values:

  • yes
  • no

Optional parameter.

disks

Parameters of VDU virtual disks.

 

- name

Name of the VDU virtual disk.

 

order

Mounting order of the VDU virtual disk.

type

Type of the ephemeral OpenStack disk.

image

Name of the VDU virtual disk image.

You can specify VDU virtual disk images in the images section.

Optional parameter if you are creating a blank VDU disk.

storage_db

Size of the VDU virtual disk in gigabytes.

cpu

VDU CPU parameters.

 

smt

Simultaneous multithreading requirements for VDU deployment.

Possible values:

  • prefer to use simultaneous multithreading if it is enabled on the VDU host.
  • isolate to not use simultaneous multithreading.
  • require to use simultaneous multithreading.

cpu_pinning

Use of CPU pinning.

Possible values:

  • shared if you do not want to pin CPU cores to the VDU.
  • dedicated if you want to pin CPU cores to the VDU.

num_vpu

Number of CPU cores pinned to the VDU.

memory

VDU RAM settings.

 

total_memory_mb

Amount of VDU RAM in megabytes.

page_size

Size of memory pages when deploying the VDU.

Possible values:

  • small for 4KB.
  • large for 2 MB or 1 GB.
  • any for any size.
  • 4KB
  • 2MB
  • 2048
  • 1GB

network_interfaces

Network interface settings

 

- name

Name of the network interface.

 

type

Type of the network interface.

Possible values:

  • data is a network interface for data transfer.
  • management is a management network interface that is mapped to a network port.

 

description

Brief description of the network interface.

connection_point_ref

Name of external connection point of the management network interface.

You can specify external connection points in the exernal_connections section.

port_security

Whether Port security is used.

Possible values:

  • disabled
  • enabled

Optional parameter.

properties

Advanced settings of the network interface.

 

vnic_type

vNIC type of the network interface.

Possible values:

  • virtio
  • direct
  • macvtap
  • vhost

auto_healing

VDU auto-healing parameters.

 

triggers_set

External triggers that initiate VDU auto-healing.

Possible values:

  • any to have any external trigger initiate VDU auto-healing.
  • all to initiate VDU auto-healing if all specified external triggers are triggered.
  • <trigger name> to initiate VDU auto-healing when the specified external trigger is triggered.

triggers

External triggers that initiate VDU auto-healing.

 

- name

Name of the external trigger.

Possible values:

  • unreachable
  • scale_up
  • scale_down

action_set

Action to perform when an external trigger is triggered.

 

- type

Type of action.

Possible values:

  • reprovision to reprovision the VDU.
  • reboot to restart the VDU.
  • script to run the specified script.

configuration_name_ref

Name of the script that is run when an external trigger is triggered.

You can specify scripts in the configurations section.

This parameter must be specified if as the - type, you selected script.

bootstrap_timeout

SSH availability timeout during VDU deployment, in seconds. If the VDU is not available over SSH after the specified timeout expires, the deployment is rolled back.

Optional parameter.

Example of this section

scaling

The scaling section has the following structure:

Parameter

Description

scale_in_status

Horizontal scaling to a scaling option with a lower sequential number.

Possible values:

  • permit
  • deny

scale_out_status

Horizontal scaling to a scaling option with a higher sequential number.

Possible values:

  • permit
  • deny

scale_up_status

Vertical scaling to a scaling option with a lower sequential number.

Possible values:

  • permit
  • deny

scale_down_status

Vertical scaling to a scaling option with a higher sequential number.

Possible values:

  • permit
  • deny

Example of this section

user_configurations

The user_configurations section has the following structure:

Section/setting

Description

tab

Tabs that are added to the settings area of the virtual network function.

- name

Name of the tab.

 

variables

Orchestrator web interface inputs that are displayed on the tab.

- name

Name of the orchestrator web interface input.

 

description

Brief description of the orchestrator web interface input.

input_type

Type of the orchestrator web interface input.

Possible values:

  • input to add a field.
  • dropdown to add a drop-down list.

default_value

Default value of the field.

You can specify this parameter if as the input_type, you specified input.

values

The options that are displayed in the drop-down list.

This setting can be specified if as the input_type, you specified dropdown.

- value

The name of the value.

 

is_default

Default value.

Possible values:

  • true
  • false

Optional parameter.

required

Required orchestrator web interface input.

Possible values:

  • true
  • false

Optional parameter.

type

The type of value that can be specified in the orchestrator web interface input.

Optional parameter.

example

A tooltip that is displayed when the value of the orchestrator web interface input changes.

Optional parameter.

update_configuration_name

Names of scripts that are run when the value of the orchestrator web interface input changes.

Specify a list of values, for example:

update_configuration_name:

- config_1

- config_2

You can specify paths to scripts in the configurations section.

Example of this section

backups

The backups section has the following structure:

Section/setting

Description

- name

Name of the backup task.

 

description

Brief description of the backup task.

backup

Backup parameters.

 

path

Path to the virtual network function directory where the files that you want to backup are located.

interval

Time interval for backup.

store_config

Number of backup copies to keep.

backup_type

Type of backup.

authentication

Method for authenticating the VNFM in the virtual network function for running scripts.

Possible values:

  • key means the VNFM is authenticated in the virtual network function using a key that is generated when the function is deployed.

    You need to get the key using a script. You can specify scripts in the configurations section.

  • password means the VNFM is authenticated in the virtual network function with a user name and password.

    You can specify the user account name and password in the flavours → vdus section.

configuration_name_ref

Name of the script to run before the backup.

You can specify scripts in the configurations section.

restore

Backup restoration parameters.

 

path

Path to the virtual network function directory where the restored files are placed.

backup_type

Type of backup.

authentication

Method for authenticating the VNFM in the virtual network function for running scripts.

Possible values:

  • key means the VNFM is authenticated in the virtual network function using a key that is generated when the function is deployed.

    You need to get the key using a script. You can specify scripts in the configurations section.

  • password means the VNFM is authenticated in the virtual network function with a user name and password.

    You can specify the user account name and password in the flavours → vdus section.

configuration_name_ref

Name of the script to run after the restoration from backup begins.

You can specify scripts in the configurations section.

Example of this section

Page top