Using the Emulex storage tools to manage Leadville controlled Emulex adapters


With the introduction of Solaris 10, the Sun leadville storage stack was integrated into Solaris. This means that you no longer need to download and install the SFS stack or third party drivers, and the native Solaris tools (e.g., iostat, mpathadm, fcinfo, luxadm, etc.) can be used to manage specific aspects of storage management. I would like to emphasize the word “specific,” since there are a number of management tasks that can’t be performed (or performed easily) with the built-in tools.

If you happen to be using Emulex host bus adapters with Solaris 10, you are in luck! Emulex provides the SFS drivers and emlxadm management tool, which can be used to supplement the tools provided with Solaris. The Emulex tools and drivers are provided by the EMLXemlxu package, which you can download from Emulex’s website. The pkgadd utility can be used to install the package, and it will place the management tools under the /opt/EMLXemlxu directory. To begin using the Emulex storage management tools, you can run the emlxadm utility without any options:

$ /opt/EMLXemlxu/bin/emlxadm

Available Emulex HBA's:

1. /devices/pci@8,700000/lpfc@5/fp@0,0 (CONNECTED)
2. /devices/pci@8,700000/lpfc@4/fp@0,0 (CONNECTED)
3. /devices/pci@9,600000/lpfc@1/fp@0,0 (CONNECTED)
4. /devices/pci@9,600000/lpfc@2/fp@0,0 (CONNECTED)

Enter an HBA number or zero to exit: 1

This will display the list of adapters that are installed on the system, and will allow you to select a specific adapter to manage. Once you select a specific HBA from the list, you can issue commands through the emlxadm shell to view or configure HBAs. To view the fcode, boot code and firmware versions installed on the detected HBAs, you can use the “get_fw_rev,” “get_fcode_rev” and “get_boot_rev” commands:

emlxadm> get_fw_rev

Firmware revision: LP9002L 3.93a0

emlxadm> get_fcode_rev

FCODE revision: LP9002L 1.41a4

emlxadm> get_boot_rev

Boot revision: LP9002L 5.00a5

To view HBA specific attributes such as the link speed, HBA state and the WWPN assigned to the card, you can run the “get_host_params” command:

emlxadm> **get_host_params**

Host:
Dtype: 0
FC4_type[proto]: 0x00000120, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000
State: Online
Linkspeed: 2Gb
D_id: 11b00
LILP: 0
Hard Addr: 0
WWPN: 10000000c936560c
WWNN: 20000000c936560c

To list the number of targets visible through a specific HBA, the “get_num_devs” command can be used:

emlxadm> **get_num_devs**

There are 3 devices reported on this port.

Since the fabric name server contains a slew of useful information, emlxadm provides a “ns” command to dump it’s contents:

emlxadm> **ns**

Nameserver:
-----------------------------------------------------------------------------------
TYPE: Lport
PID: 011855
WWPN: 500104f0005f0276
PORT_NAME: (STK T9940B 1.35)
WWNN: 500104f0005f0275
NODE_NAME: (null)
IPA: ffffffffffffffff
IP_ADDR: 0.0.0.0
CLASS: Class3
FC4_TYPES: 00000100,00000000,00000000,00000000,00000000,00000000,00000000,00000000

-----------------------------------------------------------------------------------
TYPE: Nport
PID: 011900
WWPN: 500104f0005f027f
PORT_NAME: (STK T9940B 1.35)
WWNN: 500104f0005f027e
NODE_NAME: (null)
IPA: ffffffffffffffff
IP_ADDR: 0.0.0.0
CLASS: Class3
FC4_TYPES: 00000100,00000000,00000000,00000000,00000000,00000000,00000000,00000000

-----------------------------------------------------------------------------------
TYPE: Lport
PID: 011A55
WWPN: 500104f0005f0273
PORT_NAME: (STK T9940B 1.35)
WWNN: 500104f0005f0272
NODE_NAME: (null)
IPA: ffffffffffffffff
IP_ADDR: 0.0.0.0
CLASS: Class3
FC4_TYPES: 00000100,00000000,00000000,00000000,00000000,00000000,00000000,00000000

The emlxadm utility also provides “download_<fcode|fw|boot>” commands to download firmware images to each HBA, and has several “reset_<link|hard|hard_core>” commands to reset HBAs. These are two areas where the native Solaris tools don’t shine so well, so the emlxadm utility is a welcome addition to the Solaris storage stack! Viva la Emulex!!

This article was posted by Matty on 2007-06-25 12:58:00 -0400 -0400