ESXi 5.1 host with LSI 92xx RAID adapter can run a VM with fully functional MegaRAID Storage Manager UI, here's how

Posted by Paul Braren on Oct 1 2012 in
  • ESXi
  • HowTo
  • Storage
  • Windows
  • Virtualization
  • MSM-12-in-a-windows-8-vm
    MSM-12-in-a-windows-8-vm-physical

    I've been wanting this capability since summer of 2011, when I got my LSI 9265-8i RAID controller for my vZilla build, back on ESXi 4.1. Thanks to a TinkerTry site visitor and a talented Russian, this problem now has a solution. *(see new addendum at the end of article for new, easier way to do this)

    I've always been a bit jealous of the simplicity of Areca and other models, that simply use an RJ45 Ethernet port on the card itself, for all RAID management and alerting functions. But ESXi compatibility and speed were more important considerations, since I really wanted read and write caching of RAID 5 using SSDs.

    Ideally, this would be with full health monitoring and alerting from within this vSphere lab in a box, since knowing when a drive fails is, of course, important.

    Finally, the ability to run the far easier-to-use MegaRAID from a VM. No more dual booting. No more awkward to use WebBIOS, or MegaCLI to carefully type.

    The first prerequisite is to have the driver loaded and the VMware SMIS Provider VIB loaded, as I explain in detail here:
    How to make ESXi 5.1 see the health of an LSI 9265-8i RAID controller and array (probably works with all 92xx controllers)

    Next, installing MegaRAID has gotten much easier too, with that installation-while-logged-in-as-Administrator nonsense no longer a requirement. Even works on Windows 8 64 bit. The UI is still a little finicky (under Windows 8 anyway), but at least it works well, once the ESXi 5.1 host is actually located.

    So in the video below, you'll see me succeed in using a nice little workaround, using this tip I received from Roman Shein, who points to Alex's Blog in Russia. The specific post is titled:

    How to make friends and LSI VMWare ESXi, the second part - the final decision

    or at least that's what Google Translate thinks it says. At least I was able to glean from the translation what's needed to get this working, here's an excerpt:

    ...small utility that would convert your multicast requests from MSM in unicast requests to ESXi-server, and pass back the answers. A kind of small Proxy, which allows the MSM to communicate with the server, bypassing the multicast...

    Until LSI chooses to fix this, Alex gets us around an issue that many have noticed where MSM (MegaRAID Storage Manager) cannot locate the SMIS provider that is running on the ESXi host. I take his script, make the appropriate simple edit to it, and add it to my startup folder, running from a directory where Alex's included php.exe lives. That's pretty much the gist of it. With no install necessary, just a small set of files with a dash of Alex's creativity, and you too may have a way to get MegaRAID working, in a lab environment at least.

    Download "MegaRAID Storage Manager - Windows - 5.3 Version 12.05.03.00 June 18 2012" for yourself from this direct download link, or browse your way to the most recent version by visiting lsi.com and clicking on the Support tab.

    When I have a chance, I'll get some step-by-step screenshots up here as well, making the walk-through of the technique easier to replicate. But the video will give you all you need to know to get this working right now, here you go!


    Oct 15, 2012 Update:
    You no longer need the custom utility! LSI has fixed this discovery problem, with MSM 5.4, you can now get your VM's MSM to "see" the CIMON running on your ESXi 5.1 host. It's all explained and shown at:
    LSI 9265-8i 5.1 October 8, 2012 Firmware 1881 for LSI CacheCade and non-CacheCade RAID controllers has arrived


    May 04 2014 Update:
    Even on ESXi 5.5, you can get MegaRAID running in a VM, but you still need to be very sure the one line of your ESXi's hosts file perfectly matches your Windows system's hosts file, described and pictured below, with a video walkthrough of the windows editing procedure at this spot in the related video. See also this particular discussion below:

    It's important that the one line of your ESXi hosts file exactly match whatever is in the Windows host file, seen pictured here below. It seems my DHCP router likes to feed a fully qualified domain name of .ri.cox.net (Cox Communications is my ISP). This has implications, strangely enough, on MSM, it's VERY particular.

    Using PuTTY or WinSCP to have a look at your ESXi host's /etc/hosts file (see picture here). Put the entire line that's in there for your ESXi host, and past that into your Windows c:\Windows\system32\drivers\etc\hosts file (you'll need to be at CMD as Admin), and suddenly, you'll find the "Configure Host..." dialogue in MegaRAID, followed by "Display all the ESXi-CIMOM servers in the network of local server." works (also pictured here).

    Let us know how it goes!

    (I realize I really need to revisit this topic on ESXi 5.5, with a whole new article, meanwhile, this host file matching works there, assuming the right driver is used)

    esxi-host-file-entry
    MegaRAID-Storage-Manager-finds-ESXi-if-hosts-files-on-ESXi-and-Windows-match-perfectly