Tag Archives: sea

How to create Etherchannel with SEA VIO in IBM

Configuring your SEA with Etherchannel.

First check the shared virtual ethernet adapters you have –

$ lsmap -all -net
SVEA   Physloc
—— ——————————————–
ent8   U8231.E2D.06C83BT-V1-C11-T1

SEA                   ent11
Backing device        ent10
Status                Available
Physloc

SVEA   Physloc
—— ——————————————–
ent9   U8231.E2D.06C83BT-V1-C12-T1

SEA                 NO SHARED ETHERNET ADAPTER FOUND

$

Then we need to check what adapters we can use, now in our case we will be using the first 2 adapters from a dual port 1Gb card –

$ lsdev -type adapter
name             status      description
ent0             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent1             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent2             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent3             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent4             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent5             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent6             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent7             Available   4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent8             Available   Virtual I/O Ethernet Adapter (l-lan)
ent9             Available   Virtual I/O Ethernet Adapter (l-lan)
ent10            Available   EtherChannel / IEEE 802.3ad Link Aggregation
ent11            Available   Shared Ethernet Adapter
fcs0             Available   8Gb PCI Express Dual Port FC Adapter (df1000f114108a03)
fcs1             Available   8Gb PCI Express Dual Port FC Adapter (df1000f114108a03)
fcs2             Available   8Gb PCI Express Dual Port FC Adapter (df1000f114108a03)
fcs3             Available   8Gb PCI Express Dual Port FC Adapter (df1000f114108a03)
pkcs11           Available   PKCS#11 Device
sissas0          Available   PCIe x4 Planar 3Gb SAS RAID Adapter
sissas1          Available   PCIe x4 Internal 3Gb SAS RAID Adapter
usbhc0           Available   USB Host Controller (33103500)
usbhc1           Available   USB Host Controller (33103500)
usbhc2           Available   USB Enhanced Host Controller (3310e000)
vfchost0         Available   Virtual FC Server Adapter
vfchost1         Available   Virtual FC Server Adapter
vfchost2         Available   Virtual FC Server Adapter
vfchost3         Available   Virtual FC Server Adapter
vfchost4         Available   Virtual FC Server Adapter
vfchost5         Available   Virtual FC Server Adapter
vfchost6         Available   Virtual FC Server Adapter
vfchost7         Available   Virtual FC Server Adapter
vfchost8         Available   Virtual FC Server Adapter
vfchost9         Available   Virtual FC Server Adapter
vfchost10        Available   Virtual FC Server Adapter
vfchost11        Available   Virtual FC Server Adapter
vfchost12        Available   Virtual FC Server Adapter
vfchost13        Available   Virtual FC Server Adapter
vfchost14        Available   Virtual FC Server Adapter
vfchost15        Available   Virtual FC Server Adapter
vhost0           Available   Virtual SCSI Server Adapter
vhost1           Available   Virtual SCSI Server Adapter
vhost2           Available   Virtual SCSI Server Adapter
vhost3           Available   Virtual SCSI Server Adapter
vhost4           Available   Virtual SCSI Server Adapter
vhost5           Available   Virtual SCSI Server Adapter
vhost6           Available   Virtual SCSI Server Adapter
vhost7           Available   Virtual SCSI Server Adapter
vsa0             Available   LPAR Virtual Serial Adapter
$

Then we need to create the Etherchannel device –

# mkvdev -lnagg ent0 ent4

ent10 Available

This creates the device in standard mode, though you can switch it over to round robin –

# chdev -l ent10 -a mode=round_robin

Then we can create a SEA “bridge” between the physical Etherchannel device ent2 and the virtual ent3

# mkvdev -sea ent10 -vadapter ent8 -default ent8 -defaultid 1

ent11 Available

Once that is done, you can set-up initial TCP/IP config (en11 is the interface for the SEA ent11)

# mktcpip -hostname <vio-name> -inetaddr <ip-address> -interface en11 -start -netmask <subnet> -gateway <gateway-ip>

Now your server ready to go.

How to change adapter properties of the SEA VIO IBM

Overview

One of the problems that one can often run into is that you need to change some characterstic on the ethernet adapter that you are using for the SEA. One example is that you need to change the speed from say autonegotiate to 100 full duplex. If you simply go to the root user with oem_setup_env and try to make the change, you will likely get this error.

# lsattr -El ent0 -a media_speed
media_speed 100_Full_Duplex Media speed True

#  chdev  -l ‘ent0′ -a media_speed=’Auto_Negotiation’
Method error (/usr/lib/methods/chgent):
0514-062 Cannot perform the requested function because the
specified device is busy.

It is likely that when you setup the SEA that you configured the TCP/IP address on the SEA as directed in the virtualization Redbook or the white papers on this topic.

Procedure

Note that you will lose network access from any clients that are dependent on this SEA unless you already have setup SEA failover or client network interface backup.

Follow these steps to first unconfigure and remove the SEA, then make the changes and reconfigure.

  1. Set the backspace key if it’s not working

stty erase (hit backspace key) then hit enter
looks like
stty erase ^?

  1. View the ethernet virtual adapters as padmin

$ lsdev | grep ent
ent0       Available 10/100/1000 Base-TX PCI-X Adapter (14106902)
ent1       Available Virtual I/O Ethernet Adapter (l-lan)
ent2       Available Virtual I/O Ethernet Adapter (l-lan)
ent3       Available Virtual I/O Ethernet Adapter (l-lan)
ent4       Available Shared Ethernet Adapter

  1. Become root user

$ oem_setup_env
#

  1. Check to see if the IP address is configured on the SEA

If it is configured, then it will return an inet address as shown here:
# ifconfig en4
en4: flags=e080863,80
inet 9.19.51.159 netmask 0xffffff00 broadcast 9.19.51.255
tcp_sendspace 131072 tcp_recvspace 65536

If it is not configured, then you will get this:
# ifconfig en4
en4: flags=e080822,80

  1. If it is configured, then you will need to unconfigure it. Normally if this was a physical adapter, I would simply remove the adapter, but if you try to do that will the SEA, you will get errors if my memory serves me right, yet it may be worth trying first. If you do this, you will need to remove the en interface, the et interface, and finally the ent interface.

At this point you can use your favorite way to remove the IP from the interface. Once you have done that, you no longer will have network access directly to the VIO server, but will need to go through the HMC console terminal. If you had setup the IP address on the virtual adapter in a dual VIO system, this would not be a problem.

If nothing else works, or if the only interface that has an IP address is the SEA, then type

rmtcpip -f interface ent4

This will remove the TCPIP address. To check, rerun the ifconfig command from earlier. Once this address is removed, then you should be able to remove the SEA.

  1. Type exit to go back to padmin
  2. Remove the SEA device

# exit
$ rmdev -dev ent4 -recursive

  1. This should remove cleanly and if it doesn’t it is debug time. Assuming that it is removed, then go back to root.

$ oem_setup_env

  1. Make sure that en4 and et4 have also been removed (Adjust the 4 for the number of your adapter

# rmdev -dl en4
# rmdev -dl et4
# rmdev -dl ent4

  1. Now take the physical adapter down. In this case it is the ent0 adapter so:

# ifconfig en0 down
# ifconfig en0 detach

  1. Now you should be able to change the ent0 adapter through smit or with chdev as shown here:

#  chdev  -l ‘ent0′ -a media_speed=’Auto_Negotiation’

  1. Now I’m a little foggy on if you need to ifconfig en0 attach and up. I think you may not do this unless the mkvdev command fails
  2. Return to padmin and recreate the SEA adapter with mkvdev

# exit
$ mkvdev -sea ent2 -vadapter ent0 -default ent0 -defaultid 1 \
-attr ha_mode=auto ctl_chan=ent1
ent4 Available
en4

  1. Then readd the IP information either with mktcpip or smitty tcpip Here I recommend putting the address on a separate client virtual ethernet adapter so you don’t have to rmtcpip the next time. You can do DLPAR to add this to the partition and run cfgmgr before the mktcpip step

mktcpip -hostname fsvio3 -inetaddr 9.19.51.160 -interface en4 -start -netmask 255.255.255.0
-gateway 9.19.51.6 -nsrvdomain dfw.ibm.com -nsrvaddr 9.0.7.1

  1. Test by pinging something outside the box.