eduncan911
n00b
- Joined
- Mar 4, 2012
- Messages
- 15
Does ESXi 6.x has native support for RAID1 and Datastore (rest of the drive) if the proper chipset drivers were to be loaded?
Specifically, the Intel RSTe (for server boards) type "software raid" kind of RAID.
TL;DR
So the story goes that ESXi does not support anything but hardware raid HBAs (like my IBM M1015, and other famous add-on cards and onboard SCSI/SAS controllers), etc etc, blah blah.
After a lot of trolling, I finally found some instructions on building a developer environment to compile my own ESXi drivers. Seems pretty straight forward (I'm versed at this level of Linux).
But before going through that extreme, I wanted to know if ESXi will even support it.
It comes down this I think:
Does the ESXi kernel stack allow booting from a custom driver?
I'm thinking yes because there are custom NIC drivers you can install, right? But I'm afraid the HDD drivers is only what is exposed through AHCI and SAS interfaces native to the kernel modules.
"Hardware Raid" works because the BIOS reports the memory address of the OPTION ROM to the bootloader, which looks like a normal OPTION ROM. It presents itself as a special type of AHCI drive looking like just 1 container. The HBA itself handles the interruption of the RAID containers and metadata overhead of what those containers are: the OS doesn't care.
"Software Raid", such as Intel RSTe in the C612 chipset I am looking to enable, actually has the BIOS supply that metadata required for the RAID set created in a different memory address: the drives are still presented to the bootloader as normal AHCI drives. Therefore, the kernel drivers for the software raid needs to be able to read this metadata. Think of Intel onboard raid acting like an intermediate layer between the kernel I/O operations -> Intel RAID driver -> BIOS AHCI hardware instructions. It's a "software" layer that is interrupted at the OS level, with a driver, that knows to treat the AHCI drives as a RAID1 device (and passing replication instructions to the controller, which then handles the duplication).
Like I said, I am 92.3% sure I can successfully create an ESXi 6 VIB driver package using the CentOS 7 Intel RSTe driver package already available (ESXi is CentOS based, and you need CentOS to build custom drivers for ESXi).
But I'd like to know the likely hood of success before spending that all the time hacking away at it.
Can you load a VIB that acts as an ESXi kernel module?
For this I am thinking "yes" only because of custom NIC driver support you can implement with VIBs. If you are able to side-load a custom VIB into the ISO to get the NIC to be detected, then why not an additional AHCI/RAID driver?
What is my ultimate goal?
I want the ESXi install, and "Datastore" to be on RAID1 using my Intel C612 chipset onboard RAID1 using 2x 240 GB SSDs I have lying around.
I have 2x older 240 GB SSDs sitting here next to me that I'd like to use in my new ultra-lowe powered C612 server build. I want the RAID1 redundancy because, well, they are OCZ SSDs (enough said). I do not want to install an HBA with hardware raid just for the sole purpose of RAID1 P.o.S. drives. I do not want to install ESXi on a USB stick and use just one of the 240 GB drives as a Datastore either.
Specifically, the Intel RSTe (for server boards) type "software raid" kind of RAID.
TL;DR
So the story goes that ESXi does not support anything but hardware raid HBAs (like my IBM M1015, and other famous add-on cards and onboard SCSI/SAS controllers), etc etc, blah blah.
After a lot of trolling, I finally found some instructions on building a developer environment to compile my own ESXi drivers. Seems pretty straight forward (I'm versed at this level of Linux).
But before going through that extreme, I wanted to know if ESXi will even support it.
It comes down this I think:
Does the ESXi kernel stack allow booting from a custom driver?
I'm thinking yes because there are custom NIC drivers you can install, right? But I'm afraid the HDD drivers is only what is exposed through AHCI and SAS interfaces native to the kernel modules.
"Hardware Raid" works because the BIOS reports the memory address of the OPTION ROM to the bootloader, which looks like a normal OPTION ROM. It presents itself as a special type of AHCI drive looking like just 1 container. The HBA itself handles the interruption of the RAID containers and metadata overhead of what those containers are: the OS doesn't care.
"Software Raid", such as Intel RSTe in the C612 chipset I am looking to enable, actually has the BIOS supply that metadata required for the RAID set created in a different memory address: the drives are still presented to the bootloader as normal AHCI drives. Therefore, the kernel drivers for the software raid needs to be able to read this metadata. Think of Intel onboard raid acting like an intermediate layer between the kernel I/O operations -> Intel RAID driver -> BIOS AHCI hardware instructions. It's a "software" layer that is interrupted at the OS level, with a driver, that knows to treat the AHCI drives as a RAID1 device (and passing replication instructions to the controller, which then handles the duplication).
Like I said, I am 92.3% sure I can successfully create an ESXi 6 VIB driver package using the CentOS 7 Intel RSTe driver package already available (ESXi is CentOS based, and you need CentOS to build custom drivers for ESXi).
But I'd like to know the likely hood of success before spending that all the time hacking away at it.
Can you load a VIB that acts as an ESXi kernel module?
For this I am thinking "yes" only because of custom NIC driver support you can implement with VIBs. If you are able to side-load a custom VIB into the ISO to get the NIC to be detected, then why not an additional AHCI/RAID driver?
What is my ultimate goal?
I want the ESXi install, and "Datastore" to be on RAID1 using my Intel C612 chipset onboard RAID1 using 2x 240 GB SSDs I have lying around.
I have 2x older 240 GB SSDs sitting here next to me that I'd like to use in my new ultra-lowe powered C612 server build. I want the RAID1 redundancy because, well, they are OCZ SSDs (enough said). I do not want to install an HBA with hardware raid just for the sole purpose of RAID1 P.o.S. drives. I do not want to install ESXi on a USB stick and use just one of the 240 GB drives as a Datastore either.
Last edited: