Skip main navigation (Press Enter).
Log in
Toggle navigation
Log in
Community
Topic Groups
Champions
Directory
Program overview
Rising Champions
IBM Champions group
User Groups
Directory
Benefits
Events
Dev Days
Conference
Community events
User Groups events
All TechXchange events
Participate
TechXchange Group
Welcome Corner
Blogging
Member directory
Community leaders
Resources
IBM TechXchange
Community
Conference
Events
IBM Developer
IBM Training
IBM TechXchange
Community
Conference
Events
IBM Developer
IBM Training
PowerVM
×
PowerVM
Connect, learn, share, and engage with IBM Power.
Group Home
Threads
473
Blogs
113
Events
0
Library
18
Members
1.2K
View Only
Share
Share on LinkedIn
Share on X
Share on Facebook
Back to Blog List
SEA (Shared Ethernet Adapter) Load Sharing
By
Christina Morel
posted
Thu June 11, 2020 02:57 PM
Like
SEA load sharing provides a method to maximize resource usage while still taking advantage of the SEA fail-over capabilities. The bridged workload is shared between the primary and backup SEA. This post will explain how the workload is divided between the primary and backup SEA. With this knowledge, the user will understand how to configure each SEA to handle certain VLANs.
SEA divides traffic up by trunk adapter, not by VLAN. When a SEA is created using the VIOS command ‘mkvdev’, the order of the list of virtual adapters provided is key in determining which adapters on that SEA are actively bridging traffic.
Load sharing is initiated on the backup SEA. Because of this, ha_mode must be set to sharing on the primary SEA first. If ha_mode is set to sharing on the backup SEA when it is not yet set on the primary SEA, then the sharing negotiation will fail and the SEA states will remain primary and backup, respectively. Once ha_mode has been set to sharing on first the primary SEA and then the backup SEA, and the primary and backup SEA are identical in the number of trunk adapters and VLANs associated with each trunk adapter, load sharing can commence. The number of trunk adapters on the SEA is divided in half. The last half of trunk adapters listed in the ‘mkvdev’ command are assigned as active on the backup SEA. The first half of trunk adapters listed in the ‘mkvdev’ command are assigned as active on the primary SEA. If there is an odd number of trunk adapters, the primary SEA gets the extra adapter. At this point, any traffic on VLANs assigned to the adapters that are now active on the backup SEA will be bridged by the backup SEA. Any traffic on VLANs assigned to the adapters that are now active on the primary SEA will be bridged by the primary SEA.
The following two-part examples illustrate various load sharing scenarios. Part A of each example shows an initial setup and the VLANs bridged by each SEA. Part B describes a desired bridging scenario and the changes to the ‘mkvdev’ command necessary for the new configuration. It is the order in which the adapters are passed to ‘mkvdev -vadapter’ that affects the bridging configuration. Please note that the virtual adapters underneath the SEA can’t be changed on the fly. The SEA device must be removed and then recreated with the virtual adapters provided in a different order.
Example 1A:
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary)
VIOS 2 (Backup)
active: ent1 PVID 1
inactive: ent1 PVID 1
inactive: ent2 PVID 222, VLAN ID 102, 202
active:ent2 PVID 222, VLAN ID 102, 202
VIOS1 VIDs shared: 1 VIOS2 VIDs shared: 222,102,202
Example 1B:
Desired outcome: Primary SEA bridges VIDs 222, 102, 202.
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2
command to make SEA:
mkvdev -sea ent0 -vadapter
ent2,ent1
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2
command to make SEA:
mkvdev -sea ent0 -vadapter
ent2,ent1
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary) VIOS 2 (Backup)
active: ent2 PVID 222, VLAN ID 102, 202
inactive: ent2 PVID 222, VLAN ID 102, 202
inactive: ent1 PVID 1
active: ent1 PVID 1
VIOS1 VIDs shared: 222, 102, 202 VIOS2 VIDs shared: 1
Example 2A:
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2, ent3
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2,ent3
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2, ent3
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2,ent3
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary) VIOS 2 (Backup)
active: ent1 PVID 1 inactive: ent1 PVID 1
active: ent2 PVID 222, VLAN ID 102,202
inactive: ent2 PVID 222, VLAN ID 102, 202
inactive: ent3 PVID 333, VLAN ID 103, 203,
active: ent3 PVID 333, VLAN ID 103,203 303,403 303,403
VIOS1 VIDs shared: 1, 222, 102, 202 VIOS2 VIDs shared: 333, 103, 203, 303, 403
Example 2B:
Desired outcome: Backup SEA bridges VIDs 222, 102, and 202.
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2, ent3
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent3,ent2
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2, ent3
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent3,ent2
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary) VIOS 2 (Backup)
active: ent1 PVID 1
inactive: ent1 PVID 1
active: ent3 PVID 333, VLAN ID 103, 203
inactive: ent3 PVID 333, VLAN ID 103,203 303,403 303,40
inactive: ent2 PVID 222, VLAN ID 102,202
active: ent2 PVID 222, VLAN ID 102, 202
VIOS1 VIDs shared: 1, 333, 103,203,303,403 VIOS2 VIDs shared: 222, 102, 202
Example 3A:
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2,ent3,ent4
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2,ent3,ent4
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary) VIOS 2 (Backup)
active: ent1 PVID 1
inactive: ent1 PVID 1
active: ent2 PVID 222, VLAN ID 102,202
inactive: ent2 PVID 222, VLAN ID 102, 202
inactive: ent3 PVID 333, VLAN ID 103, 203,
active: ent3 PVID 333, VLAN ID 103,203 303,403 303,403
inactive: ent4 PVID 444, VLAN ID 104, 204,304,404
active: ent4 PVID 444, VLAN ID 104, 204, 304, 404
VIOS1 VIDs shared: 1, 222, 102, 202 VIOS2 VIDs shared: 333, 444, 103, 203, 303, 403, 104, 204, 304, 404
Example 3B:
Desired outcome: Primary SEA bridges about the same number of VIDs as the backup SEA.
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent3,ent2,ent4
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent3,ent2,ent4
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary) VIOS 2 (Backup)
active: ent1 PVID 1
inactive: ent1 PVID 1
active: ent3 PVID 333, VLAN ID 103, 203
inactive: ent3 PVID 333, VLAN ID 103,203 303,403 303,403
inactive: ent2 PVID 222, VLAN ID 102,202
active: ent2 PVID 222, VLAN ID 102, 202
inactive: ent4 PVID 444, VLAN ID 104, 204,304,404
active: ent4 PVID 444, VLAN ID 104, 204, 304, 404
VIOS1 VIDs shared: 1, 333, 103,203,303,403 VIOS2 VIDs shared: 222, 444, 102, 202, 104, 204, 304,404
Example 4A:
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4, ent5
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2,ent3,ent4,ent5
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4, ent5
command to make SEA:
mkvdev -sea ent0 -vadapter
ent1,ent2,ent3,ent4,ent5
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary) VIOS 2 (Backup)
active: ent1 PVID 1
inactive: ent1 PVID 1
active: ent2 PVID 222, VLAN ID 102,202
inactive: ent2 PVID 222, VLAN ID 102, 202
active: ent3 PVID 333, VLAN ID 103, 203
inactive: ent3 PVID 333, VLAN ID 103,203 303,403 303,403
inactive: ent4 PVID 444, VLAN ID 104, 204,304,404
active: ent4 PVID 444, VLAN ID 104, 204, 304, 404
inactive: ent5 PVID 555, VLAN ID 105, 205, 305
active: ent5 PVID 555, VLAN ID 105, 205, 305
VIOS1 VIDs shared: 1, 222, 333, 102, 202, 103, 203, 303, 403 VIOS2 VIDs shared: 444, 555, 104, 204, 304,404, 105, 205, 305
Example 4B:
Desired Outcome: Only VIDs 1, 102, and 202 actively bridging on VIOS2.
VIOS1:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4, ent5
command to make SEA:
mkvdev -sea ent0 -vadapter
ent3,ent4,ent5,ent1,ent2
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS2:
real adapter: ent0
virtual adapters: ent1, ent2, ent3, ent4, ent5
command to make SEA:
mkvdev -sea ent0 -vadapter
ent3,ent4,ent5,ent1,ent2
-default ent1 -defaultid 1 -attr ha_mode=sharing
VIOS 1 (Primary) VIOS 2 (Backup)
active: ent3 PVID 333, VLAN ID 103, 203,303,403
inactive: ent3 PVID 333, VLAN ID 103,203, 303,403
active: ent4 PVID 444, VLAN ID 104, 204,304,404
inactive: ent4 PVID 444, VLAN ID 104, 204, 304, 404
active: ent5 PVID 555, VLAN ID 105, 205, 305
inactive: ent5 PVID 555, VLAN ID 105, 205,305
inactive: ent1 PVID 1
active: ent1 PVID 1
inactive: ent2 PVID 222, VLAN ID 102,202
active: ent2 PVID 222, VLAN ID 102, 202
VIOS1 VIDs shared: 333, 444, 555, 103, 203, 303, 403, 104,204,304,404, 105, 205, 305 VIOS2 VIDs shared: 1, 222, 102, 202
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
#PowerVM
#powervmblog
0 comments
109 views
Permalink
Copy
https://community.ibm.com/community/user/blogs/christina-morel1/2020/06/11/sea-shared-ethernet-adapter-load-sharing
Powered by Higher Logic