vNIC Failover in PowerVM 2.2.5

By Chuck Graham posted Fri June 19, 2020 09:23 AM

Last fall, we released the vNIC feature in PowerVM 2.2.4 (vNIC - Introducing a New PowerVM Virtual Networking Technology). vNIC is a new virtual networking technology that leverages the SR-IOV adapters and delivers high-performance and bandwidth apportioning Quality of Service (QoS) in addition to supporting LPM (Live Partition Migration). Early feedback from customers also praises its ease of use and management. More vNIC related documents can be found in vNIC concept and Managing virtual NICs on a logical partition

In the PowerVM 2.2.4 release, each vNIC adapter is backed by one SR-IOV logical port. If the logical port or the hosting VIOS fails, the vNIC device fails. In order to achieve high availability, users need to employ client VM high availability solution such as AIX Etherchannel NIB (Network Interface Backup) or Linux interface bonding. The configuration of client LPAR network high availability adds system administration overhead.

The vNIC failover feature, included in PowerVM 2.2.5, provides server-side high availability solution (similar to SEA failover). Figure 1 shows the architecture of the vNIC failover configuration.  In the vNIC failover configuration, a vNIC client adapter can be backed by multiple logical ports, preferably allocated from a different SR-IOV adapter and hosted by different VIOSes to avoid a single point failure. At any time, only one logical port is connected with the vNIC adapter. If the active (connected) backing device or its hosting VIOS fails, a new backing device is selected to serve the client. The selection of the active backing device is done by Power Hypervisor.
PowerVM vNIC Failover Architecture
The key to the vNIC failover solution is the detection of the backing device or hosting VIOS failure and their recovery. This is achieved by the vNIC server monitoring the backing logical port status (link status and error events) and reporting the device status as well as VIOS health status to Power Hypervisor in regular heartbeats. Additionally, each backing device is assigned with a priority and each vNIC adapter designated a priority failover policy, both of which regulate the selection of the active backing device at vNIC adapter initialization and in the event of backing device failure or recovery.

For example, when a vNIC is initialized, the Power Hypervisor selects the logical port with the highest priority. If that logical port’s link goes down, the Power Hypervisor is notified; it then selects, from the remaining (functional) backing devices, the logical port with the highest priority as the next active backing device. Later, when the previously failed logical port recovers, the Power Hypervisor will switch back to the recovered port (which has highest priority), if the priority failover policy has “auto priority failover” enabled; otherwise, it will stay put until the next failure occurs.

In contrast to the SEA failover, the vNIC failover does not rely on any communication protocol between/among the multiple backing devices. The vNIC failover resorts to the Power Hypervisor as the decision maker because it (the Power Hypervisor) has a complete view and receives real time status of all the backing devices and is best situated for selecting the right logical port. Without the implementation of the communication protocol, the vNIC failover is a much simpler, and more robust solution.

Management-wise, the failover setup is straightforward and intuitive.  With the HMC enhanced GUI, the creation of the vNIC failover configuration is as simple as specifying more than one backing logical port. Figure 2 and Figure 3 displays the screen shots of the HMC GUI panels for vNIC failover configuration. As noted earlier, the vNIC failover adds two new attributes, i.e., the priority associated with each logical port and the priority failover policy for each vNIC adapter. Default values will be taken if the failover “parameters” are not specified. HMC also supports user-initiated failover, which comes in handy for VIOS code update and other maintenance activities.
PowerVM vNIC HMC Failover Configuration    Figure 3: HMC panel for adding vNIC backing devices
PowerVM vNIC HMC Backing Device Configuration

The vNIC failover feature requires updates to System Firmware (860.10), HMC release 8 (version 8.6.0), and VIOS level (version 2.2.5). The host OS update is not required. The existing vNIC adapters do not need to be torn down and recreated. Once the codes are updated to the required levels, the existing vNIC adapter will be made failover capable when additional logical ports are configured to serve the vNIC adapter.

Minimum PowerVM & OS levels to support vNIC
  • PowerVM 2.2.5
  • VIOS Version 2.2.5
  • System Firmware Release 860.10
  • HMC Release 8 Version 8.6.0
Operating Systems
  • AIX 7.1 TL4 or AIX 7.2
  • IBM i 7.1 TR10 or IBM i 7.2 TR3
  • Note: Linux support to follow at a future date.
Contacting the PowerVM Team
Have questions for the PowerVM team or want to learn more?  Follow our discussion group on LinkedIn IBM PowerVM or IBM Community Discussions