VMware Cloud Community
jgkurz
Contributor
Contributor
Jump to solution

SSD as Host Cache or Virtual Machine Swap File or both?

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

Reply
0 Kudos
1 Solution

Accepted Solutions
jdptechnc
Expert
Expert
Jump to solution

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.

http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.vsphere.storage.doc%2FGUID-C56B9994-...

You can then add it as a Host Cache datastore.

Please consider marking as "helpful", if you find this post useful. Thanks!... IT Guy since 12/2000... Virtual since 10/2006... VCAP-DCA #2222

View solution in original post

Reply
0 Kudos
11 Replies
sparrowangelste
Virtuoso
Virtuoso
Jump to solution

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?

--------------------- Sparrowangelstechnology : Vmware lover http://sparrowangelstechnology.blogspot.com
Reply
0 Kudos
mcowger
Immortal
Immortal
Jump to solution

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....

--Matt VCDX #52 blog.cowger.us
Reply
0 Kudos
chriswahl
Virtuoso
Virtuoso
Jump to solution

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.

VCDX #104 (DCV, NV) ஃ WahlNetwork.com ஃ @ChrisWahl ஃ Author, Networking for VMware Administrators
Reply
0 Kudos
EdWilts
Expert
Expert
Jump to solution

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.

.../Ed (VCP4, VCP5)
Reply
0 Kudos
jgkurz
Contributor
Contributor
Jump to solution

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?

Reply
0 Kudos
chriswahl
Virtuoso
Virtuoso
Jump to solution

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). Smiley Happy

http://wahlnetwork.com/2012/03/19/reclaim-error-when-configuring-remote-ssd-for-host-cache/

VCDX #104 (DCV, NV) ஃ WahlNetwork.com ஃ @ChrisWahl ஃ Author, Networking for VMware Administrators
EdWilts
Expert
Expert
Jump to solution

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"

.../Ed (VCP4, VCP5)
jgkurz
Contributor
Contributor
Jump to solution

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!

Reply
0 Kudos
jdptechnc
Expert
Expert
Jump to solution

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.

http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.vsphere.storage.doc%2FGUID-C56B9994-...

You can then add it as a Host Cache datastore.

Please consider marking as "helpful", if you find this post useful. Thanks!... IT Guy since 12/2000... Virtual since 10/2006... VCAP-DCA #2222
Reply
0 Kudos
jgkurz
Contributor
Contributor
Jump to solution

Thank you!

Reply
0 Kudos
depping
Leadership
Leadership
Jump to solution

Reply
0 Kudos