Linux Storage - MDS flogi and fcns databases
Linux Storage Solution · Config document · referenced from FC aliases, zones and zonesets and SCSI addressing and FC names
The two state listings that show who is logged into the fabric of FCSwitch1: the fabric login (flogi) database with one row per logged-in port, and the name server (fcns) database with the same ports grouped by VSAN, each marked as a SCSI initiator or target. They were taken after the base configuration and before the aliases were written, and every port WWN in the aliases and the port-security database comes from here.
| Item | Value |
|---|---|
| Switch | FCSwitch1, Cisco MDS 9124e, NX-OS 5.2(8) |
| Commands | sh flogi database, sh fcns database, exec mode, as admin |
| Logged in | 7 ports: 5 blade HBA ports on bay1 to bay5, 2 3PAR ports on ext1 and ext2 |
| VSANs | 11 with 4 entries, 12 with 3 entries |
| Second switch | No flogi or fcns listing of SW2 is in the notes |
The listing
The fabric login database, taken at the exec prompt of FCSwitch1. One row per interface: the VSAN the port is in, the FCID the switch assigned at login, and the port and node WWN the device presented.
$ sh flogi databaseoutput 12 lines
-------------------------------------------------------------------------------- INTERFACE VSAN FCID PORT NAME NODE NAME -------------------------------------------------------------------------------- bay1 11 0x2a0000 50:01:43:80:12:34:56:c0 50:01:43:80:12:34:56:c1 bay2 11 0x2a0100 50:01:43:80:12:34:56:d4 50:01:43:80:12:34:56:d5 bay3 12 0x660000 50:01:43:80:12:34:57:90 50:01:43:80:12:34:57:91 bay4 12 0x660200 50:01:43:80:12:34:57:92 50:01:43:80:12:34:57:93 bay5 11 0x2a0200 50:01:43:80:12:34:40:2c 50:01:43:80:12:34:40:2d ext1 11 0x2a0300 21:12:00:02:ac:00:ab:cd 2f:f7:00:02:ac:00:ab:cd ext2 12 0x660300 21:11:00:02:ac:00:ab:cd 2f:f7:00:02:ac:00:ab:cd Total number of flogi = 7.
The name server database, same prompt. It adds what the login database lacks: the vendor the switch derives from the WWN and the FC-4 feature, which says whether the port is a SCSI initiator (a host HBA) or a SCSI target (a storage port).
$ sh fcns databaseoutput 20 lines
VSAN 11: -------------------------------------------------------------------------- FCID TYPE PWWN (VENDOR) FC4-TYPE:FEATURE -------------------------------------------------------------------------- 0x2a0000 N 50:01:43:80:12:34:56:c0 (HP) scsi-fcp:init 0x2a0100 N 50:01:43:80:12:34:56:d4 (HP) scsi-fcp:init 0x2a0200 N 50:01:43:80:12:34:40:2c (HP) scsi-fcp:init 0x2a0300 N 21:12:00:02:ac:00:ab:cd scsi-fcp:target Total number of entries = 4 VSAN 12: -------------------------------------------------------------------------- FCID TYPE PWWN (VENDOR) FC4-TYPE:FEATURE -------------------------------------------------------------------------- 0x660000 N 50:01:43:80:12:34:57:90 (HP) scsi-fcp:init 0x660200 N 50:01:43:80:12:34:57:92 (HP) scsi-fcp:init 0x660300 N 21:11:00:02:ac:00:ab:cd scsi-fcp:target Total number of entries = 3
The columns
| Column | Meaning |
|---|---|
INTERFACE | the switch port the device is cabled to; bayN is the internal link to blade slot N, extN an external SFP port |
VSAN | the VSAN the interface was assigned to in the base configuration |
FCID | the fabric address the switch gave the port at login (24 bits wide, as I understand it); the first byte differs between the two VSANs (0x2a in VSAN 11, 0x66 in VSAN 12) |
PORT NAME, PWWN | the port WWN of the device, the identity used in aliases, zones and port security |
NODE NAME | the node WWN; both 3PAR ports share one node name, each HBA port has its own |
TYPE | N for an N_Port, an end device |
(VENDOR) | the switch's name for the OUI in the WWN; HP for 50:01:43:80, nothing for the 3PAR's 00:02:ac |
FC4-TYPE:FEATURE | scsi-fcp:init for an initiator, scsi-fcp:target for a target |
Who is who
The listings carry no host names. Joining them with the cabling schema and the aliases written afterwards:
| Interface | VSAN | FCID | pwwn | Role | Device |
|---|---|---|---|---|---|
bay1 | 11 | 0x2a0000 | 50:01:43:80:12:34:56:c0 | initiator | HV01, first HBA port (host1 on Linux) |
bay2 | 11 | 0x2a0100 | 50:01:43:80:12:34:56:d4 | initiator | HV02 |
bay5 | 11 | 0x2a0200 | 50:01:43:80:12:34:40:2c | initiator | MGMT01 |
ext1 | 11 | 0x2a0300 | 21:12:00:02:ac:00:ab:cd | target | Storage1, 3PAR port 0:1:1, alias Storage1-C0P0 |
bay3 | 12 | 0x660000 | 50:01:43:80:12:34:57:90 | initiator | HV03 |
bay4 | 12 | 0x660200 | 50:01:43:80:12:34:57:92 | initiator | HV04 |
ext2 | 12 | 0x660300 | 21:11:00:02:ac:00:ab:cd | target | Storage1, 3PAR port 0:1:2, alias Storage1-C0P1 |
The bay1 row is the one that can be checked from the other side: on HV01, port_name of host1 is 0x50014380123456c0 and its port_id is 0x2a0000, and the remote port it sees has port_id 0x2a0300 and port_name 0x21120002ac00abcd, the ext1 row. The notes list no such check for the other blades. The 3PAR port numbers in the Device column come from the schema, not from the switch; the switch only knows the WWNs, and see SCSI addressing and FC names for why the port names say otherwise.
Checked against Cisco MDS NX-OS 9.4(5a)
| As built | Today |
|---|---|
show flogi database with the columns INTERFACE VSAN FCID PORT NAME NODE NAME and the line "Total number of flogi = N." | Unchanged |
show fcns database with the columns FCID TYPE PWWN (VENDOR) FC4-TYPE:FEATURE | Unchanged |
Interfaces bayN and extN | Blade-switch names; current guides show fcX/Y |
NX-OS 5.2(8) on an MDS 9124e | The MDS 9124 reached its last date of support on 31 January 2019; 5.2(8i) is its last release |
The 9.x fabric guide also notes that FC aliases never appear in these two listings or in show zoneset active; they travel only with the full zone database. That is why the "Who is who" table above had to be built by hand.