I recently acquired an 80GB FusionIO card for my ESXi 5.0.0u1 server. I've done some reading on how to properly configure SSD and I'm still unclear on how to proceed. It seems there are two configuration options that need to be considered, Host Cache Configuration and Virtual Machine Swapfile Location. I don't want to use the SSD as a datastore for VM's. Instead I'd like to use it to improve performance for all VM's.
1) Can and should I be using the SSD for both Host Cache and Swapfile?
2) If yes, do I need to allocate a portion of the SSD for Host Cache, say 40GB and leave the remaining space for Swapfile? Or do I allow Host Cache to use 100% of the SSD space then also enable swapfile for all VM's?
Thank you,
John
You should able to use any SSD as long as it is detected by ESXi.
If you're using this in production, make sure you check the HCL first. If not, just as long as the drive is recognized, you can use it. Sometime, SSD's aren't automatically detected as an SSD. In that case, you can manually tag it using the procedure noted in the vSphere Storage documentation.
You can then add it as a Host Cache datastore.
reading this I think if you allocate all of it for host cache then the host will pre-polulate the drive with vswp files for itself.
One interesting use case could be to place all regular swap files on very cheap shared storage (RAID5 of SATA drives) or even local SATA storage using the “VM swapfile location” (aka. Host local swap) feature. Then install a host cache for any host these VMs can be migrated to. This should give you the performance of a SSD while maintaining most of the cost saving of the cheap storage
http://www.yellow-bricks.com/2011/08/18/swap-to-host-cache-aka-swap-to-ssd/
maybe that is what you are looking for?
Theres no way to use your SSD has a host cache - ESX doesn't have that option. You can only use *RAM* has a host cache.
You CAN use the SSD for VMSwap....
1) Can and should I be using the SSD for both Host Cache and Swapfile?
2) If yes, do I need to allocate a portion of the SSD for Host Cache, say 40GB and leave the remaining space for Swapfile? Or do I allow Host Cache to use 100% of the SSD space then also enable swapfile for all VM's?
I'm a fan of host cache, as it's a great way to provide some memory relief for a server that has contension, and is especially nice in a lab where memory is a premium cost. That being said, host cache will be used first, then swapfile second, so I don't find a lot of reasons to use both on the same drive. As for how much host cache to provide, it's really up to you to decide how much you feel will be swapped.
If you are just planning on using the SSD to handle swapping issues, I'd just dedicate the whole thing to host cache and be done with it.
ESXi by itself will not use the FusionIO card as a host cache beyond using it for a storage location if your host is out of memory.
If you're using it to improve I/O response to guests, then contact your FusionIO reseller and ask about their caching product - it's separately licensed but it sounds like it does some really good stuff. We talked to them about it a while ago but it wasn't ready for vCenter 5 back then but it should be now.
Thank you to everyome who responded. I will read the posts carefully later tonight.
Regarding the comment that Fusion-IO does not support Host Cache, take a look at the attached screen capture. This is what led me to believe it was supported. It seems to be configurable. Currently I have 20GB allocated to Host Cache and 60GBish allocated to swapfiles. I am running the latest version of ESXi 5 and the latest Fusion-IO firmware and drivers for ESXi.
Does this change your responses?
I'm not sure where some of the answers above are coming from, jgkurz
You most certainly can present any SSD disk as host cache, such as the FusionIO card you're showcasing. I've even written an article at how to make anything appear to be SSD (mostly for the lab).
http://wahlnetwork.com/2012/03/19/reclaim-error-when-configuring-remote-ssd-for-host-cache/
There are multiple ways to cache and I think the host cache is very different from caching guest I/Os.
Look at http://www.fusionio.com/systems/ioturbine/ for Fusion-IO's caching for guest I/Os. From what I remember from the sales presentations, this product is smart enough that you can do stuff like "cache my SQL transaction log I/Os but don't cache the database backups" or "cache just directory D:\FOO but not when NetBackup reads it"
I'd like to revisit this topic. My FusionIO has worked great but I'd now like to expand capacity.
Can I just buy a decent SSD 2.5" disk drive to replace the 80GB FusionIO? The performance of the new SSD drives are impressive and are getting cheaper everyday. I don't use the FusionIO for anything other then Host Cache and swap location.
Thanks!
You should able to use any SSD as long as it is detected by ESXi.
If you're using this in production, make sure you check the HCL first. If not, just as long as the drive is recognized, you can use it. Sometime, SSD's aren't automatically detected as an SSD. In that case, you can manually tag it using the procedure noted in the vSphere Storage documentation.
You can then add it as a Host Cache datastore.
Thank you!
This might also be an interesting read from a futures perspective: