In this section:

 

When you use Virtual Network Function Manager (VNFM) to deploy SBC SWe in an OpenStack cloud environment you must provide it with a Cloud Service Archive (CSAR) package file that is appropriate for the type of deployment you want to create. The CSAR package includes a Virtual Network Function Descriptor (VNFD) file that defines the characteristics of your deployment.  

 Ribbon provides the script createVnfmCsar.py and a VNFD template file (vnfmSol001VnfdTemplate.yaml) you can use to create a CSAR file for your deployment.

Script Parameters

Important

The script creates one or more CSAR files based on the run-time parameters you specify. Note that the default value for several parameters is "all." If you run the script without specifying any parameters, the script uses its defaults and creates multiple CSAR files for all possible values and combinations for these parameters. Use the run-time parameters to restrict the output and create a CSAR file that is tailored to a specific deployment model.


The following table describes the script run-time parameters. 

createVnfmCsar.py Script Run-time Parameters

ParameterDescriptionDefault
-f <flavor size>
[dev | std]
Use this parameter to specify the flavor size for the deployment. For customer deployments, use the option std.all sizes
-h <ha type>
[simplex | ha | n_1_ha]

Use this parameter to specify an HA model for the deployment. The options are:

  • ha - to specify 1:1 HA redundancy.
  • n_1_ha - to specify an N:1 HA deployment. N can be up to 4 for S-SBC and M-SBC deployments. Use this parameter with the --num_instances parameter which specifies the number of instances in the deployment.
  • simplex - to specify a standalone instance for a test environment.
all HA models
-i <interface type>
[virtio | sriov | provider]

Use this parameter to specify the network interface type for your deployment. The options are:

  • provider - to specify a provider network.
  • sriov - to specify an SR-IOV (single root input/output virtualization) network.
  • virtio - to specify a virtio network.
all interface types
-p <prod_version>Use this parameter to specify the SBC product version number. This parameter is required. Provide the full release number within quote marks. For example: -p "8.00.00" n/a
-q <qcow_image_file>Include this parameter to specify that you want to include the SBC software .qcow2 image file within the CSAR package. Including the image file greatly increases the size of the CSAR file and is not required by VNFM. If you use this option, specify the name of the image file following the -q parameter.no image file
-s <subversion>Use this parameter to specify the SBC release number. This parameter is required. Provide the release number within quote marks. For example: -s "R000"n/a
-v <vnfd_template>Include this parameter to specify the full path and the name of the VNFD template file. If the template file resides in the same directory as the script, the -v parameter is not needed.current directory
--affinity [AntiAffinity | Affinity |None]

Use this parameter to specify on which hosts VMs are placed. The options are:

AntiAffinity - to specify that each VM is placed on a separate physical host.

Affinity - to specify that all VMS are placed on the same physical host.

None - to not specify a preference and allow the OpenStack environment to determine the placement of VMs.

AntiAffinity
--cinder_bootInclude this parameter to specify that you want to allocate a bootable cinder volume and copy the boot image (the .qcow2 image) to that volume before starting the VM. By default no cinder boot volume is created. Activating this option causes the initial boot time to increase significantly.no cinder boot volume
--cinder_logInclude this parameter to specify that you want to allocate a cinder volume to use for /var/log. By default no cinder log volume is created. This option may be used to re-associate the /var/log directory tree from a previous orchestration to a new orchestration, by specifying that boot volume during orchestration.No cinder log volume
--ipv6Include this parameter to specify that you want to use IPv6 addressing for the networks in your deployment.IPv4
--num_oam_instances <num_oam_instances>Include this parameter to specify the number of OAM node instances to create within an N:1 HA deployment that will use the OAM configuration model. For example, specify 2 to create a 1:1 HA pair of OAM nodes. For deployments that will use the Direct Single configuration model (standalone or 1:1 HA deployments), the default value of 0 applies because OAM nodes are not required. Refer to SBC SWe Configuration Management for descriptions of both models.0
--num_instances <number>Use this parameter to specify the number of instances to create within an N:1 HA deployment. The default value is 5 which creates a 4:1 HA deployment.5
--no_dhcp_haInclude this parameter to specify that you do not want to use Dynamic Host Configuration Protocol (DHCP) on the internal HA network.DHCP is enabled on the internal HA network
--personality
[isbc | msbc | ssbc | tsbc | mrfp | slb ]

Use the parameter to specify the type of SBC deployment to create. The options are:

  • isbc - integrated SBC deployment
  • msbc - media SBC component of a distributed SBC deployment
  • ssbc - signaling SBC component of a distributed SBC deployment
  • tsbc - media/transcoding SBC component of a distributed SBC deployment
  • mrfp - media resource function processor (MRFP) node
  • slb - SIP-aware front-end load-balancer node
all types
--proprietary_vnfd_formatInclude this parameter to specify to use a proprietary format for the VNFD file rather than the SOL001 standard format.not enabled
--prov_mgmt_virtioIf you specify to use the provider network type, include this parameter to specify that you want to override that choice for the management interface and use a virtio network instead.not enabled
--private_key_file <file>Use these options to specify the path and name of a private key file and a certificate file to use to generate a signature for the CSAR file. A signature is not currently required by VNFM.

~/certs/key.pem
--certificate_file <file>~/certs/certificate.pem
--sbc_public_key <file>Include this parameter to specify a path and name for a file containing a default public key to provide in the Cloud Config Init Data section on the Environment tab in the VNF Deployment Wizard. This section identifies the public key required to SSH to the deployed SBC. Specifying a key file with this parameter makes the key available as the default when a user deploys a VNF using this CSAR file. A user can still override the default with a different key when deploying.Example: id_rsa.pub

Running the Script

Complete the following steps to generate a CSAR file:

  1. If you have not already done so, download the script and VNFD template files.
  2. Copy the script and template files to a Linux environment where the zip utility and python are also both installed. Openssl must also be present if you want to sign the package files.  
  3. Review the options in the preceding table to determine which options are required for your deployment. The -p and -s parameters are required. All other parameters are optional, but including a specific value for the -f, -h, -i, and --personality parameters ensures you generate a single CSAR file for a single deployment type. 
  4. Switch to the directory location where the script and template file reside. 
  5. Referring to the syntax shown in the previous table, enter the script name followed by its parameters in a single statement. The location of the CSAR file(s) the script generates is shown in the screen output.
Important

The CSAR script enters a name for the SBC image file in the VNFD file that it derives using the values you specified for the -p and -s parameters. The name of the SBC image file (qcow2 file) you upload to Glance must match this name. Using the the values 8.00.00 and R000, the script concatenate these values and prepends the resulting string with sbc-V0. For this example, VNFM would require the image name to be "sbc-V08.00.00R000".

Examples

The following command creates a single CSAR package file for a 1:1 HA S-SBC deployment that uses virtio interfaces:

 createVnfmCsar.py -p "8.00.00" -s "R000" -f std -h ha -i virtio --personality ssbc

The following command creates a single CSAR package file for a 3:1 HA M-SBC deployment that uses SR-IOV interfaces and includes a 1:1 HA pair of OAM nodes:

 createVnfmCsar.py -p "8.00.00" -s "R000" -f std -h n_1_ha --num_instances 4 -i sriov --personality msbc --num_oam_instances 2

The following command creates a single CSAR package file for a 1:1 HA I-SBC deployment that uses an IPv6 provider network:

 createVnfmCsar.py -p "8.00.00" -s "R000" -f std -h ha -i provider --ipv6 --personality isbc

The following command creates three CSAR packages file for 1:1 HA S-SBC deployments – one with virtio, one with SR-IOV, and one with provider interfaces:

 createVnfmCsar.py -p "8.00.00" -s "R000" -f std -h ha --personality ssbc