After some connectivity swap-a-roos in the lab, I could no longer see my LUNS from the linux host attached to my filer.
In this case I am using a QLogic HBA – and I am not using any of the NetApp host side tools – just the sanlun tool.
Using the SANsurfer Menu (/opt/QLogic_Corporation/SANsurferCLI) I can tell that this linux host can see the filers’ LUNS over FC. But there are no SCSI /dev/sdX devices for them, and so Linux cannot use them…
Here’s how I checked to see that there was FC connectivity – which also confirms that the FC protocol is working.
SANsurfer FC/CNA HBA CLI
v1.7.2 Build 7
Main Menu
1: General Information <---- Option 1
2: HBA Information
3: HBA Parameters
4: Target/LUN List
5: iiDMA Settings
...
General Information Menu
1: Host Information
2: Host Topology
3: Report <---- Option 3..
4: Refresh
5: Return to Previous Menu
Note: 0 to return to Main Menu
Enter Selection: 1
Report Menu
HBA Model QLE2462
1: Port 1: WWPN: 21-00-00-E0-8B-9B-C5-36 Online
2: Port 2: WWPN: 21-01-00-E0-8B-BB-C5-36 Online
3: All HBAs <---- Option 3
4: Return to Previous Menu
Note: 0 to return to Main Menu
Enter Selection: 3
I could see that there was connectivity from the Linux host to the filer
---------------------------------------
LUN 1
---------------------------------------
Product Vendor : NETAPP
Product ID : LUN
Product Revision : 811a
LUN : 1
Size : 17.93 GB
Type : SBC-2 Direct access block device
(e.g., magnetic disk)
WWULN : 4E-45-54-41-50-50-20-20-20-4C-55-4E-20-32-46-68
72-53-3F-2D-68-4F-79-6C-33-00-00-00-00-00-00-00
OS LUN Name :
From the filer side, I could see that the host's FC adapters had connected to the filer,
and were in the right igroup
filer1*> igroup show
filer1 (FCP) (ostype: linux):
21:00:00:e0:8b:9b:c5:36 (logged in on: 0a)
21:01:00:e0:8b:bb:c5:36 (logged in on: 0b)
The only thing that was missing was that there were no 'sd' devices created in Linux for these devices.
"sanlun" utility was not helpful and just told me that there wer no LUNs mapped.
The solution was to issue this very odd looking command
linuxhost:[/sys/class/scsi_host] $ echo "- - -" > host0/scan
This caused the sd devices to be created, representing the NetApp LUNs which I knew could already be seen over FC. Since I have both ports on the same HBA attached to the filer, host0 scan created my /dev/sdc* devices, and host1/scan created my /dev/sdd* devices.
The shell 'hung' for the duration of the command, and I would expect that Linux was off in kernel land for some time - and so i would NOT recommend issuing the command on a production server.
I'm still puzzled why the linux host did not see the luns even after reboot though.