Tuesday, January 15, 2013

Better VM storage management with VMware vVOLs


The next step in the storage integration after vSPhere API for Array Integration (VAAI) and VSphere Storage APIs for Storage Awareness (VASA) will be the VM Volumes or vVOLs.

A vVOL is a VMDK stored natively inside the storage system. The concept of vVOLs helps to eliminate the problem of VM storage management granularity, when tens of VMs are stored inside one LUN/VMFS Datastore, and the snapshot/replica/remote replica creation/restore operations can be performed by the storage system only on the LUN/Datastore level.

There are three objects composing the vVOL technology:

  • Storage Provider – allows the storage system capabilities to be recognized and used by vCenter using VASA
  • Protocol Endpoint – the I/O de-multiplexor device which will exist on a storage system and will represent a logical I/O channel from the ESXi hosts to the entire storage system
  • Storage Container – the capacity pool on the storage system
Here’s an overview of the vVOLs feature


And a demo showing several things using vVols and HP 3PAR

Please take note that the vVOL feature is still a technology preview and is not available in VMware and HP products.


And the vVOLs should be supported only for the  block level protocols such as FC and iSCSI. Does it mean that this feature will  weaken the NetApp positions – the major NFS player on the storage market???     

Friday, October 5, 2012

SSD: Storage Caching and Storage Tiering

More and more SSD and flash memory storage solutions are coming to the storage market. Some of vendors use the fast storage as cache, some as a tiered storage. Let’s look at the difference between these two approaches.

Storage Tiering
In Storage Tiering all data are distributed between different storage tiers:
  • Tier 1 – SSD
  • Tier 2 – FC or SAS HDD
  • Tier 3 – NL SAS or SATA HDD

The “hot” data blocks are placed on the fast storage (SSD), all other data blocks are placed on HDDs. After the learning process which identifies what data is “hot”, the data blocks are redistributed between storage tiers. This process is running periodically by the administrator defined schedule.
Examples: HP 3PAR Adaptive Optimization, IBM Easy Tier, NetApp Flash Pool, EMC FAST
  
Storage Cache
What’s the storage cache? The cache is the interim fast device that transparently stores data so that future requests for that data can be served faster. After data is written to the cache it must also be written to the main storage (HDDs). The caching device keeps data temporarily.
There are two types of cache:
  • Read-Only
  • Read-Write



Read-Only – cache is not used for writes or is used only in Write-Through mode, where data must be written to hard drives before the storage system will send data write confirmation to the host. This type of caching is often used with MLC SSDs which provide excellent read performance but are not so good for write workloads.
Read-Only caching also can be used on the host side.
Examples: NetApp Flex Cache, Nimble Storage.

Read-Write – cache is used in Write-Back mode and the storage system sends the data write confirmation to the host before data is written to the main storage (HDDs). Data can be modified within the cache even without going to the main storage. This type of cache processes write intensive workloads and the SLC or flash memory should be used as caching device. As the Read-Write cache can contain data which is not written to the HDDs it requires the RAID or other protection.
Typically the storage controller placed memory is used as Read-Write Level 1 cache. And it’s protected by the mirroring between the storage controllers and the battery devices.

What’s the difference between caching and tiering approaches?
First of all, the cache contains a copy of data already placed on HDDs. And in case of the storage tiering the data is distributed between different storage tiers (SDDs and HDDs). The data redistribution between the storage tiers is resource-demanding process, that’s why data should remain on the defined storage tiers for quite a long time (usually hours or even days).

What’s better?
The Storage Tiering is good for the relatively sustained workloads, when the workload pattern is being changing not too often (remember that data blocks redistribution is a resource-demanding process). It works well for both read and write workloads.
The Storage Caching is good for unpredictable fast changing workloads. The cache provides much faster response for the workload pattern change. The Read-Only caching solutions are getting more and more popular because of effective usage of relatively inexpensive MLC SSDs.

The main idea is to understand how the proposed solution works and how it meets your requirements.
And also be careful, some solutions named as "caching" realize the tiered storage approach, and vice versa.

Thursday, September 6, 2012

Mt. Rainer - the server-side caching solution from Qlogic



Qlogic announced today the Mt. Rainier project, the server-side caching solution leveraging internal server SSD and PCI-e flash memory.
There are three possible Mt. Rainer cards configurations:
  • An adapter with a separate flash card and PCIe link using an x4 cable drawing 25W
  • An Adapter with a SAS IO port daughter card which links to internal server SSD
  • An Adapter with an SSD daughter card with all power coming from the PCIe slot - 50W



From the OS point of view, the Mt. Rainer adapter is installed as a single adapter which needs only one driver, no additional drivers for PCIe cards or SSD devices will be required.

Another interesting feature is the Shared Caching feature which makes the shared cache available across multiple servers, all transparent to the host.  The Qlogic storage router technology is used for this feature. Each Mt. Rainier adapter can see what the other cards in the SAN zone are doing and know which LUNs have been cached. The SAN protocols are used to synchronize this information.



For the high availability purposes the Cache Mirroring feature can be used. The Cache Mirroring provides the synchronous peer-to-peer mirroring with write-back and write-through modes support.  

One of the most important things is that cache memory management, Cache Mirroring and Shared Caching don’t require host CPU resources – all operations are performed on the adapter’s ASIC level.

The first Mount Rainier products should be available in the first half of 2013.

Tuesday, September 4, 2012

Performance Implications of Cloud Computing


Just found the IBM RedPaper publication providing a clear view of the cloud computing model including description of:
  • Types of services and cloud delivery models
  • Cloud roles
  • Cloud service-level categories and Key Performance Indicators


This publication will help the end customers, system integrators and cloud providers to simplify the cloud services implementation process and make it more transparent.
The IBM RedPaper “Performance Implications of Cloud Computing” can be found here.

Monday, August 27, 2012

Now NetApp performs server-side caching too


In addition to existing caching technologies, such as Flex Cache and Flex Pool, August 21st, 2012 NetApp announced the Flash Accel solution which speeds application performance using server-side cache for storing frequently accessed data working with NetApp storage arrays.

The Flash Accel is the software leveraging the existing SSD and PCIe flash memory hardware installed into the servers. Will be supported the SSD and PCI-e flash memory products of Server Partner Caching Alliance members: Fusion-io, LSI, Micron, QLogic, SanDisk (FlashSoft), STEC and Virident.  Also the first version of Flash Accel will support Microsoft Windows Server 2003 and 2008 and VMware vSphere  5. (including DRS, HA and vMotion support).

The Flash Accel provides the following features:

  • End-to-End Intelligent Data Coherency: if data blocks are changed on the backend array the Flash Accel will update the local cache accordingly. 
  • Cache Persistency and Durability: Flash Accel preserves cache content consistently with applications in the event of server and VM reboot and crashes. After the server restart the cache content is checked and updated as the server is back on, what allows to have a warm cache after restart.


It’s also interesting that competing with other server-side caching solutions such as HP flash cache in Gen8 servers and EMC VFcache the Flash Accel is looking more open allowing to use hardware from different SSD and PCI-e flash memory vendors. 

But anyway, we shouldn’t also forget about other server-side caching solutions which are external storage system independent, e.g. FlashSoft from SANDisk , Nytro XD from LSI or ioTurbine from Fusion IO. 

Tuesday, August 7, 2012

Nimble Storage – performance and capacity scalability


New NS controllers as well as performance and capacity scalability features were announced August 5, 2012 by Nimble Storage.

Now the Nimble CS arrays can be scaled-out by:
  • SSD cache upgrade by installing high capacity SSDs
  • Adding up to the three ES1 disk shelves
  • Non-disruptive upgrade from CS200 to CS400 controller
  • Combine several SC arrays to the clustered storage
 
The clustering feature brings Nimble Storage to the higher market level allowing compete with high-midrange solutions from other storage vendors.

It’s possible to non-disruptively add storage controllers to the cluster and remove them from it (if there’s enough free space to save data from nodes that will be removed).  Each cluster can contain one of several Dynamic Storage Pools consisting of one or several storage controllers. Volume’s data is striped across all controllers in storage pool what provides the performance boost by adding controllers to the pool. After controller is added to or removed from the pool data is automatically rebalanced between storage controllers. Also pools can be merged and volumes can be migrated between storage pools transparently for applications. 


The VMware multipathing is performed by CIM and PSP provider installed on each ESX host server. The CIM monitors paths from host to the storage cluster nodes and provides information for PSP to choose the right path for IO operations. For Windows hosts the path management is performed by the Nimble Connection Manager (NCM). The scale-out Nimble Storage clusters can also be used with other operating systems but connections between hosts and storage controller ports need to be configured manually.

The combination of the Cache Accelerated Sequential Layout (CASL) architecture and storage clustering feature makes Nimble Storage one of the most interesting players on the storage market.