Improving Storage Performance of Dell VRTX
Dell’s PowerEdge VRTX hyper-converged appliance can either have all hard drive datastores or all SSD datastores, but you can’t have SSDs or RAM act as tiering or caching media for VRTX volumes / virtual disks. That’s where VirtuCache comes in.
VirtuCache is kernel-mode software that you install in VMware vSphere, that automatically caches frequently and recently used data, both reads and writes, from Datastores on VRTX shared storage to any SSD (or host RAM) in VRTX. By doing so, VirtuCache improves the performance of shared VRTX storage.
VirtuCache deployment is seamless, in the sense that applications or end users don’t realize that most of the data is now read from and always first written to the in-host cache media, instead of shared storage. Deploying VirtuCache doesn’t require any storage, network, or host reconfiguration.
It’s extremely easy to deploy and manage. You can choose to evaluate VirtuCache by registering for VirtuCache download here.
Click here for technical details around how VirtuCache caches reads and writes; syncs writes to shared storage; and protects against data loss in case of host failure.
Cache Media in VRTX
There are three options for cache media in VRTX to be used with VirtuCache.
- The option we recommend is to use a 1.6TB or 3.2TB Samsung PM1725 NVME SSD in a spare PCIe slot in VRTX, one NVME SSD per VRTX blade. Samsung rates these NVME SSDs at 980K IOPS Random Reads and 190K IOPS Random Writes.
- If you don’t have a spare PCIe slot in the VRTX blade module, you can also use a SAS SSD as cache media with VirtuCache. However, SAS SSDs are more expensive and not as high performing as the Samsung NVME SSDs.
- A higher performing option than the NVME SSD is to use host RAM as cache media. But because RAM is expensive, it’s not price/performance competitive versus NVME SSDs. Also, RAM itself might be a constrained resource in your VMware deployment. Though, one advantage of using RAM is that you can evaluate VirtuCache using existing host RAM before investing in a PCIe or SAS SSD.
Cost FOR VirtuCache, All-Flash array, and locally attached SAS SSDs.
VIrtuCache would compete with a new All-Flash array or replacing all HDDs in the VRTX chassis with SAS SSDs. Below are the costs for all three options, assuming that you have a 4-node VRTX and 80TB usable storage.
|VirtuCache with NVME SSD||Locally attached VRTX SAS SSDs||All-Flash iSCSI Storage Array|
|Deploy VirtuCache with a 3.2TB Samsung NVME SSD in each of the 4 VRTX blades. $3000 per host for one perpetual VirtuCache license and $1000 for one 3.2TB NVME SSD.||Replace local SAS HDDs with SAS SSDs to get 80 TB usable (after RAID6). 95TB of Dell SAS SSDs were configured behind the Dell Perc Controller in RAID6.||40TB raw All-Flash Array (Netapp A400), assuming dedupe / compression ratio of 2x. So 80TB usable.|
|Total Cost = $ 16000||Total cost = $ 88000||Total cost = $ 120000|
VRTX RAID Controller Hardware Cache is VERY DIFFERENT from VirtuCache
The VRTX shared PERC RAID controller documentation lists support for caching, but that’s very different from VirtuCache. The VRTX RAID controller is capable of caching to only 1GB of battery-backed RAM on the RAID controller. VirtuCache, on the other hand, can cache to much larger amounts of RAM or Flash installed in VRTX. Also, VirtuCache protects against data loss in case of host / SSD failure by replicating data to cache media in another host and not with battery-backed cache media.
Before/After Tests with VirtuCache
The pictures below show before/after results for Iometer tests, first without VirtuCache, and then with VirtuCache caching to a Samsung PM1725 NVME SSD, and the third iteration with VirtuCache caching to host RAM.
Iometer test specs: 100% Random IO, 75-25% Read-Write ratio, 4KB block size, 128 simultaneous IO requests hitting storage, with the Iometer test file residing on an HDD based VRTX datastore.