IBM Support

How to Setup SEA Failover on DUAL VIO servers

Question & Answer


Question

How do I setup SEA failover on DUAL VIO servers (VIOS)? This applies to VIOS 2.2 and above.

Cause

Misconfiguring the control channel adapters may cause the SEA failover to fail or create a network storm after it is created. This document describes some general concepts related to Shared Ethernet Adapter (SEA), and the procedure to configure SEA Failover in auto mode using a dedicated control channel adapter.

Answer

Shared Ethernet Adapter

  • A Shared Ethernet Adapter can be used to connect a physical network to a virtual Ethernet network. It provides the ability for several client partitions to share one physical adapter.  SEA can only be configured on the Virtual I/O server (VIOS) and requires the POWER Hypervisor and Advanced POWER Virtualization feature. The SEA, hosted on the Virtual I/O server, acts as a Layer-2 bridge between the internal and external network.


Restrictions with Configuring SEA Failover

  • It can only be hosted on the VIOS and not on the client partition.
  • Not supported by Integrated Virtualization Manager (IVM).
  • All virtual Ethernet adapters in a Shared Ethernet Adapter must be members of the same virtual switch.


Requirements for Configuring SEA Failover

  • One SEA on one VIOS acts as the primary (active) adapter and the second SEA on the second VIOS acts as a backup (standby) adapter.
  • Each SEA must have at least one virtual Ethernet adapter with the “Access external network” flag (previously known as “trunk” flag) checked. This enables the SEA to provide bridging functionality between the two VIO servers.
  • The virtual ethernet (trunk) adapter on both SEAs has the same PVID but will have a different priority value.
  • An SEA in high availability, failover mode (ha_mode=auto) may have more than one trunk adapters, in which case, all trunk adapters should have the same priority value.
  • The priority value defines which of the two SEAs will be the primary and which will be the backup. The lower the priority value, the higher the priority, e.g. an adapter with priority 1 will have the highest priority, and therefore, will be the primary SEA/VIOS.
  • An additional virtual Ethernet adapter , which belongs to a unique VLAN on the system, is used to create the control channel between the SEAs, and must be specified in each SEA when configured in ha_mode.
  • The purpose of the control channel adapter is to communicate between the two SEA adapters to determine when a fail over should take place.

 

NOTE: If the SEA Failover will be using etherchannel as the physical device, configure the switch ports for etherchannel PRIOR to configuring the etherchannel device on the VIOS. Failure to follow this sequence may result in a network storm.

PROCEDURE:

1. On VIOS1, create a virtual ethernet adapter to be used for data as trunk adapter by the SEA.  This is the adapter that will be used to bridge the client's network.  In the example, it will be ent2.

To configure a virtual Ethernet adapter via Dynamic Logical Partition (DLPAR) for a running logical partition using HMC V7R3 or above, follow these steps:

Note: a DLPAR operation requires the VIOS partition to be on the network. If the VIOS is not on the network, the virtual ethernet adapters must be added to the VIOS partition profile and the VIOS must be reactivated (Shutdown, Activate) for the profile changes to take effect.

a. In the navigation panel, open Systems Management, open Servers, and click on the managed system on which the logical partition is located.

b. In the contents panel, select the VIOS on which you want to configure the virtual Ethernet adapter > click on the Tasks button > choose Dynamic Logical Partitioning > Virtual Adapters.

c. Click Actions > Create > Ethernet Adapter.

d. Enter the slot number for the virtual Ethernet adapter into Adapter ID.

e. Enter the Port Virtual LAN ID (PVID) for the virtual Ethernet adapter into VLAN ID. The PVID allows the virtual Ethernet adapter to communicate with other virtual Ethernet adapters that have the same PVID.  Note:  The PVID must be unique to the managed system and not in use on the network.  In this case, we will use PVID "1".

f. Select IEEE 802.1 compatible adapter if you want to configure the virtual Ethernet adapter to communicate over multiple virtual LANs. If you leave this option unchecked and you want this partition to connect to multiple virtual networks, then you must create multiple virtual adapters by creating additional virtual LAN IDs.

g. Check the box "access external network".

h. Give the virtual (trunk) adapter a low trunk priority,  i.e. "1".  The lower the number, the higher the priority.

i. Click OK.

j. Select the VIOS partition > Click Tasks > Configuration > Save Current Configuration. Failure to do so will cause the DLPAR changes to be lost the next time the VIOS profile is reactivated (Shutdown, Activate).

k. Run cfgdev to discover the new virtual ethernet adapter (ent#).  Alternatively, if the VIOS is not on the network, and the virtual ethernet adapter was added to the VIOS partition's profile, reactivate the VIOS partition (Shutdown, Activate) in order for the profile changes to take effect and the new virtual ethernet adapter (ent#) to be discovered.  This can be done after the control channel adapter is added in step 2 to avoid reactivating the VIOS twice.

2. On VIOS1, create another virtual ethernet adapter to be used as the Control Channel adapter for the SEA heartbeat.  In this example, it will be ent3.

a. Give this new virtual adapter another unique VLAN ID (PVID).  In this example, we will use "99".
b. Do NOT check the box "access external network".
c. Repeat step 1.k  to discover the new control channel adapter.

3. On VIOS1, create the SEA in high availability (auto) mode:

$ mkvdev -sea ent0 -vadapter ent2 -default ent2 -defaultid 1 -attr ha_mode=auto ctl_chan=ent3

Note: The defaultid value of the SEA should be the Port VLAN ID (PVID) of the default trunk adapter, in cases where there are more than one trunk adapter configured in the SEA.
4. On VIOS1 (OPTIONAL), assign an IP address to SEA:
$ mktcpip -hostname vio1 -interface en4 -inetaddr 9.3.5.136 -netmask 255.255.255.0 -gateway 9.3.5.41 -nsrvaddr 9.3.4.2 -nsrvdomain itsc.austin.ibm.com -start

5. On VIOS2, create a virtual ethernet (trunk) adapter to be used by the secondary/backup SEA. EX: (ent2).
a. Give the virtual adapter the same VLAN ID (PVID) as VIOS1. EX: "1" .
b. Check the box "access external network".
c. Give the virtual adapter a higher trunk priority. EX: "2".
d. Repeat step 1.11 on VIOS2 to discover the new trunk adapter.

6. On VIOS2, create another virtual adapter to be used as a Control Channel adapter. EX: (ent3):
a. Give this new virtual adapter the same unique VLAN ID (PVID) as the control channel on VIOS1. EX: "99"
b. Do NOT check the box "access external network".
c. Repeat step 1.k to discover the new control channel adapter on VIOS2

7. On VIOS2, create the SEA in high availability (auto) mode:
$ mkvdev -sea ent0 -vadapter ent2 -default ent2 -defaultid 1 -attr ha_mode=auto ctl_chan=ent3

8. (OPTIONAL) Assign an ip address to SEA on VIOS2:
$ mktcpip -hostname vio2 -interface en4 -inetaddr 9.3.5.137 -netmask 255.255.255.0 -gateway 9.3.5.41 -nsrvaddr 9.3.4.2 -nsrvdomain itsc.austin.ibm.com -start

Known Issues

1. mkvdev fails to create SEA using etherchannel on PCIe2 4-port 1GbE Adapter.  This is fixed with IV52695, which is delivered in ioslevel 2.2.3.2.

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSPHKW","label":"PowerVM Virtual I\/O Server"},"Component":"--","Platform":[{"code":"PF002","label":"AIX"}],"Version":"VIOS 2.2","Edition":"Enterprise;Standard","Line of Business":{"code":"LOB57","label":"Power"}}]

Document Information

Modified date:
19 February 2022

UID

isg3T1011040