PernixData Flash Virtualization Platform Nails Server-Side Flash
I am very fond of transparent technology, which offer significant value but are very much non-intrusive on the platform. PernixData fits this exclusive class of products. Actually, I have a tech crush on PernixData which is what prompted me to recommend them for the Best of Breed awards at VMworld 2013.
Pernix means "agile" and while it makes sense for what they are trying to do, I think they could have done better on the name.Once you get over its not very catchy name, the solution is truly awesome. What PernixData does in a nutshell is aggregate flash or SSD from local hosts and enables server-side caching from them, which can significantly enhance storage performance for all applications in general. It's especially useful for tier-1 applications like VDI, running Exchange or SQL Server, and so on.
So, why would you need such a solution from PernixData when you already have a brand new super-fast SAN that has caching at the array level? I will not spend an extensive amount of time explaining this, but server-side caching keeps the data as close as possible to the server. That means your data does not have to travel the storage network for reads or writes, which is traditionally the case with IP Storage and SANs. Whether you have NFS, iSCSI or Fiber Channel, your reads and writes still must travel the storage network for reads and writes. But PernixData allows you to accelerate storage performance by keeping the data on the server side.
What PernixData does is not something new. We've seen this before with other companies and even VMware has a product called vFLASh that does something similar. So what makes PernixData so special? While there are many products that offer similar solutions, they typically don't do so in a holistic way and many of them have some drawbacks. Here's why I'm so into PernixData:
No virtual machine modification. PernixData does not install any agents inside the VM or require you to add any virtual machine hardware in order to enable acceleration. So, the VM does not know PernixData exists nor does the product affect VM functionality in any way, shape or form. That makes support and upgrade truly transparent, which is a huge plus in my book.
Accelerates reads and writes. Typically what we see with these types of solutions is the ability to accelerate reads, which is great. But when I want to tackle a tier-1 application like VDI, random writes are really my biggest headache, PernixData can address both.
Resilience. A drawback of similar types of technologies has always been the fact that if a host fails before it had time to offload its data from cache to a backend storage, that data would be lost. PernixData also thought of this and allows that data which is stored in cache to be replicated to another host. Essentially, it has eliminated the single-point-of-failure issue. It is worth noting here that PernixData uses the vMotion interface to carry the I/O replication traffic. Therefore, proper planning for bandwidth availability is important.
Now, I do have some questions here especially on performance. What I'm wondering is, as soon as you introduce this replication of cache, you are technically traversing the storage network again. I'm curious how performance stands up and need to investigate it further. It is worth noting that you can control whether or not you want to replicate the cache and to how many hosts.
Flash-agnostic. You can use a PCIe card or an SSD drive and they will both work just fine with varying performance enhancements based on the hardware capabilities.
What makes PernixData most attractive is that you barely have to install anything, which goes back to the product's transparent technology. There is no virtual appliance to install or any special datastore to create. You install the management software on a Windows machine and install a plugin on your vCenter server. You then have to install a vSphere Installation Bundle (VIB) on each host, but then that's it! To configure it you create your "flash cluster" where you can locate and define the flash from the local hosts.
So, how does it integrate? How does it connect? PernixData very smart actually. What you do is create a new set of Path Selection Policy (PSP). From here you can select the VMs or Datastores that you want to accelerate. I can't help but be impressed with how elegant this is.
Using PernixData you can still use all the enterprise features at your disposal, such as vMotion, DRS, etc. It's another advantage that Pernix has over other solutions, whether they're hardware- and/or software-based.
It also integrates very tightly into vCenter. In fact, one might think it is part of the VMware stack, as it's no surprise many of the founders worked at VMware on storage-oriented projects. I would not be surprised if PernixData ends up being VMware's vFLASH product.
I have really enjoyed working with this product and it has greatly improved my home lab to which I record all my Pluralsight training videos. In the past I had to buy SSDs with large capacity to hold the VMs in order for me to obtain high performance. Now, I simply turn that SSD into server-side flash and keep the VMs on traditional disks and get excellent performance out of my lab equipment. I'm looking forward to testing PernixData with VDI solutions among other things.
Now, I do want to make sure the PernixData folks know that while they have a great product, I expect to see PernixData extend similar support to Microsoft Hyper-V, Citrix XenServer and other hypervisors and not remain a single hypervisor company waiting to be acquired.
If you have used PernixData, I am interested in your feedback in the comments section.
Posted by Elias Khnaser on 09/23/2013 at 5:41 PM