Saturday, December 28, 2013

Questions while designing Storage for VMware - Part 1

Welcome: To stay updated with all my Blog posts follow me on Twitter @arunpande !
When you evaluate your IT expenses you would find that Storage covers a sizable amount hence it’s very important that you design the storage effectively. I wrote this blog post to make a note of some important points and questions that should be considered while designing your storage infrastructure. The contents in this blog can also be used for evaluating your current storage technology, identifying and bridging the gaps during the storage refresh. 
Capacity: While sizing the storage consider the usable
storage and not RAW storage because an appreciable size of RAW storage would be used by Raid overhead, hot spares, snapshot best practices etc. Also keep the data growth for the next 3-5 years when you size the storage. The storage solution should allow you to choose different types of disks (SSD, SAS, SATA) with different speeds. Ask the following questions:


How much usable capacity do I need in my infrastructure?
Does the storage capacity address the IOPS requirement?
What is the average rate of growth of data for the next 3-5 years?
What is the estimated size required for hot data and how will this be addressed for e.g. SSD/Flash?
Additional space required for VM swap & VM snapshots?


Storage Architecture, Scalability & Flexibility: For the past few years we have seen some noticeable changes in the storage domain for e.g. most vendors now provide Unified Storage solution which aims at covering multi-protocol support (FC, FCoE, iSCSI & NFS). This gives the flexibility to use the any protocol without making major changes in your storage setup. Along with Unified Storage there is also a lot of noise about Converged Infrastructure which aims at providing industry standard, certified and tested end-to-end solution for your IT needs. This covers Compute, Networking, Storage and OS & Application best practices. Ask the following questions when you are evaluating these solutions:
What is the maximum capacity that is supported by the Storage Array?
What are the different disk drives (speed & protocol) supported by this solution?
What is the impact to the existing environment while upgrading Storage or adding more Storage Controllers?
Understand the architecture of Unified Storage solution, does it provide equal capabilities/features for both block & file storage?
Does the storage array provide same OS, management entities for File & Block storage?


High Availability: HA is considered as one of the key factors while designing your storage infrastructure. While designing HA one should first understand the impact of downtime for the business. You should have a clear understanding about the Mean time between failure (MTBF) and Mean time to repair (MTTR). It’s MTTR that will be a measure of downtime and it should not exceed the accepted Recovery Time Objective (RTO) as per the Service Level Agreement (SLA). In simple words Availability is the percentage of time when the Storage was available. Ask the following questions:
How many “Nines” do you need in your Infrastructure? Generally 99.999% or 99.9999% is desired for business which can withstand a downtime of few seconds to few minutes. The solution should not have any Single Point of Failure (SPOF) and this should cover all the components in your storage i.e. Controller or SP, Cache Cards, data in NVRAM, Disk Shelves, Disk Drives, Fans, Power Supplies etc.
How will the data in NVRAM or Cache be handled during power failure?
Have you considered the specific tuning/settings to be done on the OS or Application to handle failover/failback during controller or path failure?
Is any downtime required to perform any storage maintenance tasks like firmware upgrading, adding more storage, replacing disk drives etc.