Virtual serial number (VSN)

PowerVC introduced the virtual serial number (VSN) feature to address the software licensing bottlenecks for the IBM i operating system (OS). With this feature, users can deploy the virtual machine (VM) by using VSN on Hardware Management Console (HMC) and NovaLink managed hosts through PowerVC. The hardware-tied software licensing is made more flexible in a virtualized environment by using VSN as the licensing is tied to a VSN instead of a physical serial number on the host. The VSNs can be moved between different physical hosts such as POWER9 servers with firmware version 950, or later and Power10, or later servers.

VSN must be enabled before you start any VSN-related operations even on a VSN-capable host.

Features
You can perform the following tasks with VSN:
  • Deploying a virtual machine (VM) with VSN
  • VSN assign or unassign
  • VSN transfer
  • VSN reservation
  • Tunables and configurations
Note: When performing stop, start, or restart operations on IBM i VMs, the VM turns to Active or OK state immediately in the PowerVC GUI. However, for NovaLink or HMC, the Active or OK state might take longer to reflect after the operation. Make sure to check the state and reference code of the VM before further operations are attempted.

Deploy a VM with either VSN or reserved VSN

You can deploy a VM with either a VSN or a reserved VSN.

The supported value for the virtual_serial_number parameter is auto or the actual VSN. If you specify auto, a VSN is automatically selected for VM deployment from the list of available auto assign capable VSNs from the selected host or the selected target host. You can also specify a VSN of your choice. PowerVC provides the option to reserve a VSN for VM deployments at a future time. Reserved VSNs are VSNs that were previously assigned to a VM and reserved as a part of VM deletion or unassign VSN operations.

If you want to provide the VSN for VM deployment, you can select it from the available VSNs in the host from the VM deploy page in the PowerVC GUI. After the VM deployment, the selected VSN is configured for the VM. You can also specify a VSN that you reserved for the VM deployment and PowerVC takes care of configuring the VSN for the VM.
Note: VSN reservation is supported only for VMs deployed on NovaLink hosts through the API. The VSN reservation support for HMC-managed hosts along with the GUI support will be added in a future release.

VSN reservation

You can reserve a VSN that is configured for the currently deployed VMs by using the VSN reservation API. You can specify the VSN that is configured on a VM for reservation by using the VSN reservation API. When the API is successful, the currently deployed virtual machine that uses the VSN must be deleted or the VSN must be unassigned from the VM so that the VSN is available for later use. If the VM is not deleted or VSN is not unassigned from the existing VM, then the VSN cannot be used for another VM configuration.

The VSN reservation function is controlled by a VSN configuration that must be enabled to use the VSN reservation. For more information, see the Tunables and configuration section.

The VSN reservation function is currently supported only for NovaLink hosts.

VSN assign or unassign to a VM

PowerVC provides the flexibility to assign or unassign a VSN to a VM after deployment on a VSN-capable host.

The VSN can be assigned by using one of the following ways:
  • Let PowerVC automatically choose the VSN.
  • Specify a VSN from the available VSNs on the host.
  • Use a VSN that is in the reserved pool from your current project.

For unassigning a VSN that is configured for the VM, use the unassign API with the VSN. When the unassign action API is successful, the VSN is detached from the VM. Based on the reuse_vsn parameter setting, the VSN is either made available for other vsn=auto deployments or can be manually assigned.

VSN transfer

Admins can transfer a VSN from one host to another VSN capable host. This support is enabled in the PowerVC GUI. The VSN transfer functionality is not applicable if a VSN is reserved or configured to a VM.

Notes:
  • VSN transfer is supported between NovaLink to NovaLink hosts or between HMC-managed hosts if both hosts are part of the same host group.
  • The VSN transfer might fail sometimes due to the remote procedure call (RPC) failure. In such instances, the admin must validate the VSN status and retry the VSN transfer operation again.

Tunables and configurations

New tunable parameters are introduced in the /etc/nova/nova.conf file in the virtual_serial_number section. The following tunable parameters are applicable only for the NovaLink managed hosts:

  • use_reservation: Set to True to enable the VSN reservation feature and False to disable it. The default value is True.
  • reuse_vsn: Resets the auto-assign capability of the VSN. Set to True to enable or False to disable the capability. The default value is True.
  • max_vsn_reservations: Sets a limit to the maximum number of VSNs that can be reserved per project. The default value is 50.

You can also use the powervc-config command to view or set the VSN configuration properties. Restart the Nova service to apply the changes.

To view or set the VSN configuration properties by using the powervc-config command, use the following options:

use_reservation
Syntax
powervc-config compute virtual_serial_number use_reservation [-h] [--enable | --disable] [--restart]
Command options
  • -h or --help: Shows the help message and exits.
  • --enable: Enables the use_reservation configuration property.
  • --disable: Disables the use_reservation configuration property.
  • --restart: Restarts the Nova services after the configuration files are updated.
Example
To view or update the behavior of the host when reservation for the VSN is enabled or disabled by using the use_reservation option, enter the following command:
powervc-config compute virtual_serial_number use_reservation –help
reuse_vsn
Syntax
powervc-config compute virtual_serial_number reuse_vsn [-h] [--enable | --disable] [--restart]
Command options
  • -h or --help: Shows the help message and exits.
  • --enable: Enables the reuse_vsn configuration property.
  • --disable: Disables the reuse_vsn configuration property.
  • --restart: Restarts the Nova services after the configuration files are updated.
Example
To view or update the behavior of the host when the VSN reuse feature is enabled or disabled by using the reuse_vsn option, enter the following command:
powervc-config compute virtual_serial_number reuse_vsn [-h] [--enable | --disable] [--restart]
max_vsn_reservations
Syntax
powervc-config compute virtual_serial_number max_vsn_reservations [-h] [--limit LIMIT] [--restart]
Command options
  • -h or --help: Shows the help message and exits.
  • --limit LIMIT: Sets the limit of the maximum number of VSN reservations per project.
  • --restart: Restarts the Nova services after the configuration files are updated.
Example
To view or update the limit of VSNs that can be reserved per project by using the max_vsn_reservations configuration property, enter the following command:
powervc-config compute virtual_serial_number max_vsn_reservations --help 

Limitations

The VSN feature has the following limitations:

  • The VSN feature is supported only on VSN capable hosts such as POWER9 servers with firmware version 950, or later and Power10 servers, or later.
  • For the VSN transfer functionality to work seamlessly, both the source and target host must be accessible, and the compute service must be up and running.
  • Out of band (OOB) VSN assign and unassign operation are supported for both HMC and NovaLink hosts. PowerVC periodically synchronizes the database based on the hypervisor data.
  • OOB operations are not supported except for the assign or unassign VSN functionality.
  • Do not transfer VSN OOB (when not done through PowerVC) from HMC or NovaLink as it might lead to the reservation not being honored and the PowerVC database will be out of sync.
  • The VSN reservation functionality is supported only for NovaLink hosts.
  • When the source host on which the VSN is reserved is down, you cannot use the VSN unless that host is up.
  • Reserved VSN must not be assigned out of band as this rejects the VSN reservation from PowerVC.

For the VSN APIs, see Virtual serial number (VSN) APIs.