ABB - SSC600 SW

Requirements

To run the SSC600 SW VM in SEAPATH, the SSC600 SW package has to be downloaded from the ABB website. A license is also needed to run the software. Find more information in the dedicated webpage.

Deploy the VMs

A template xml ssc600.xml.j2 is provided in the ansible repository. There is also example inventories in the inventory/provider/abb directory.

The following variables configure the template:

Variable

Required

Type

Comments

Variable

Required

Type

Comments

description

No

String

 

uuid

No

Int

 

cpuset

Yes

Array of int

A minimum of 4 CPUs is required

memory

No

Int

(GiB). The default and minimum required is 6

emulatorpin

Yes

Int

 

vm_disk

Yes

String

The disk image can be in raw or in qcow2. More information in the disk section.

disk_extract

No

Boolean

More information in the disk section.

bridges

No

Dict

name (String) and mac_address (String) must be defined. In competition with ovs bridge

ovs

No

Dict

ovs_port (String) and mac_address (String) must be defined. In competition with bridges

sv_interfaces

Yes

Array of dict

name (String), mac_address (String) and mode (String) must be defined.

Disk

The VM can be deployed in two format:

  • gzipped raw disk (default from ABB)

    • vm_disk: link to the img.gz from the SSC600 SW package.

    • disk_extract: true

  • qcow2

    • vm_disk: link to the converted qcow2 image. (The default image must be convert to qcow2 format using qemu-img. Refer to qemu documentation.)

    • disk_extract: false

In a SEAPATH cluster, the disk is managed by Ceph. The VM disk configuration must be in qcow2.

The raw image is about 30 GB. Make sure to have enough space in hypervisors.

Hypervisor configuration

Following the ABB documentation about the SSC600 SW, some configuration are required to improve the global performance.

  • A minimum of 4 isolated CPUs in a RT kernel is needed. More information in Scheduling and priorities.

  • Hugepages should be enabled. For a 6GiB dedicated memory, 6 pages of 1GiB must be reserved.

    • For debian, it can be done with: grub_append: "default_hugepagesz=1G hugepagesz=1G hugepages=6"

    • For Yocto, it can be done with: hugepages: 6

  • The PTP is passed by the vsock method. The ptp_interface must be declared in the inventory. More information in Time synchronization.

  • The NIC affinity can be configured in the nic_affinity variable.

  • A qemu hook is provided in the ABB package, this sould be added in each hypervisor using the upload_files variable.

Tested configuration

The VM has been tested in the following SEAPATH configuration:

  • Yocto SEAPATH standalone

  • Debian SEAPATH standalone

  • Debian SEAPATH cluster (2 hypervisors)

  • Yocto SEAPATH cluster (3 hypervisors)

Not yet supported

  • The live migration cannot be done due to macvtap configuration. It isn't supported by qemu for now.

  • The L3 cache partionning asked in the ABB documentation is not yet implemented and will require test to check the impact in SEAPATH.