Increasing the number of virtual machines (VMs) per host is a critical next step in the design of virtualized server infrastructures so that the growth of virtual hosts does not begin to eat at the original ROI of the virtualization project. The problem is that the more VMs per host, the more storage I/O each host consumes and eventually the latency of the storage network and the storage system becomes a key bottleneck.
Solid State Disk (SSD) is viewed as the key solution to this problem. Its zero latency nature combined with its raw performance is ideally suited to the massive random I/O stream that a host densely packed with VMs can generate. The challenge with SSD is that today it is too expensive to place everywhere, so how it is leveraged in the environment is a key decision in the selection process.
Potentially the most surgical of placements would be in the host itself. Using SSD in the server would eliminate any network latency and act as a compliment to existing shared storage. Caching technology could be used to store a copy of the most actively read data locally in the server for instant access while maintaining constancy with the copy on the shared storage device. As a result vendors have been trying to design solutions that deliver on the potential of server side caching technology that can compliment the shared storage infrastructure.
With most solutions there are two components that need to be addressed. First there is the need for hardware to actually store the data. The good news for data centers is that this hardware is now plentiful. There are multiple categories of server side solid state hardware and there are multiple vendors for each category.
The challenge has been in the second component which is the software to actually perform the caching. While there are a number of software solutions each has potentially significant weaknesses. They are either owned by a hardware vendor, which can limit choice or they don’t fully support the hypervisor or guest OS that the customer is most concerned about.
In an effort to change the status quo, Proximal Data has announced a server side software-based caching solution that can work with a variety of solid state flash hardware solutions including PCIe controllers and SSDs. Proximal Data’s AutoCache solution works at the hypervisor level, meaning that it does not require a driver in the guest OS.
Native VMware Support
A key feature of the Proximal Solution is that it does more than just run at the hypervisor level, it coordinates its actions with the hypervisor. AutoCache supports vMotion, Distributed Resource Manager (DRS), VMware High Availability (HA) and vStorage API for Array Integration (VAAI). AutoCache also shows up a functional management window within vCenter and vSphere, something that no other solution that I know of does today. That means that cached data is fully in sync with the virtual environment so that data integrity is maintained.
AutoCache is a read cache with write through capabilities. This means the most common I/O type, a read, is typically going to be accessed from the SSD. New writes are stored on the server SSD but are also sent “through” to the storage system. This means that the recently written data does not have to be re-promoted to the cache area. Which, since the most recently written data is the most likely to be retrieved again, should also improve performance and save the written data from being re-qualified for promotion to the server side cache. In this case AutoCache already has the data, so it just keeps a copy.
Another reason that write performance will improve with AutoCache, even though it is a read only system, is because reads are no longer consuming network or storage system bandwidth. The system and infrastructure become almost entirely dedicated to write traffic. For example in a typical 80/20 read to write ratio environment, potentially 80% of the I/O no longer impacts the storage network or system.
The speed at which the AutoCache software can start delivering a return on the SSD investment may be the most compelling feature of all. Virtualized systems will be capable of supporting more VMs with existing storage infrastructures without sucking up critical system resources or adding more hardware. After purchasing and installing the SSD in the server, download the Proximal Data software and install it on the ESXi host (both 4.1 and 5.0 are supported).
The software configures from a single “vib” and a wizard walks the administrator through the process. Turn on the auto-cache software and within minutes (thanks to the write through design) AutoCache should start delivering performance improvement. Finally Proximal Data includes a detailed analytics application that will measure the performance improvement and provide guidance as to whether adding more solid state storage will further improve performance or not.
Storage Swiss Take
The initial reaction after our analysis of Proximal Data’s AutoCache software was “finally”. The parade of cache vendors started almost two years ago and even then the virtualization use case seemed obvious. It was surprising to see the limitations of many of these solutions and it is nice to see that vendors are finally closing these gaps.
One of the most interesting capabilities of AutoCache is its rapid return on investment and simplicity of implementation. One could start seeing the benefits of SSD right now. Most data centers have an extra SSD device or space in their servers for a drive. Even with the SSD premium, buying a basic drive is relatively cost effective. All that would be left is to install the software and see if performance improves. When it does they can then make the jump to a more robust SSD type, such as a PCIe based SSD, knowing that the investment will live up to its potential.
Proximal Data is not a client of Storage Switzerland