Linux, Storage, SANs and stuff. Part one of many
As part of my job, as an Infrastructure and Mr. Fix-it in my company, where it comes to Unix, Windows, HA-Clusters, Storages, etc, I often get to encounter some unpredictable situations.
During the last two days I’ve had to setup a Compaq Proliant ML360G2 with the following configuration (to simulate customer’s environment):
RHEL AS 3
Update level 4
Specific Kernel version
Dual-port Qlogic FC HBA, with multipath access to a SAN storage.
Not that I’ve looked it up too much, as most of it is rather straight forward procedure, I’ve decided I will share in this blog my experience, and some comments regarding this. To make life easier for future attempts, etc.
Stages went like this:
1) Entered into the BIOS, and configured the machine to be a Linux machine.
2) Installed RHES AS 3, release 0. That’s what I had, and I didn’t feel like wasting time and downloading the newer release.
3) Installed the required Kernel and Kernel-Sources packages (RPMs).
4) Installed Proliant ServicePack (PSP). Version 7.11. It’s what I’ve had, and although at the time of this writing, I am aware a newer version exists (7.50, or 7.40), I did not have time to download and install it.
I’ve discovered that during its install, it managed, somehow, to corrupt my RPM DB. Anyhow, it has installed what it had to install.
5) Deleted /var/lib/rpm/__* , and initiated rpm –rebuilddb to fix the RPM DB corruption. Tested with rpm -qa with no segfault on its way.
6) Physically installed the Dual-Port Qlogic HBA. QLA2342 is the model.
7) Downloaded both the driver and the SANSurfer control and management utility.
8) Physically connected the HBAs to the Fibre Switch (defined VSANs, defined the storage – FastT200, dual ported), and managed to view the whole storage.
9) During the installation of the Qlogic driver (./qlinstall) I’ve detected it failed to compile because I lacked the file called modversions.h inside include inside the kernel source tree. The file was supposed to be there, but for some reason, wasn’t. I’ve reinstalled kernel-sources (the correct version, of course), and was able to complete the installation.
10) A new initrd was supposed to be
built by the installation process of the Qlogic driver. For some reason, the file was corrupted, and I’ve had to reboot into another version of the kernel, and rebuild the initrd.
11) The SANSurfer was a great fun, but it refused to define Multi-Path. Well, it actually claimed to have done it, but it didn’t work, and the system detected twice as volumes as it actually had. I’ve changed the file /etc/modules.conf to contain a directive for the driver named "ql2xfailover=1", rebuilt initrd, and rebooted. Not tested yet, but seems to work, so I will test it tomorrow.
I have to understand whether the utilization of the Multi-Path system was done using Qlogic driver, or was it done using any other in-kernel system. I’m not sure yet as to what is Linux MPT, and whether it’s MultiPath, and I would have to use it. I will check it during the coming day. Meanwhile, we’ll just have to do with
this.
Update to come.