Here are the pros and cons of block-based and file-based storage deployments to help you decide how to support your virtual environment.
Server virtualization is one of the most crucial technologies in IT today. And a robust and efficient storage infrastructure designed to support the virtual server environment is equally as important. Yet many users neglect this supporting framework when planning for server virtualization. If a chain is only as strong as its weakest link, IT needs to ensure that storage isn't the weak link in the virtualized application infrastructure chain. To realize the greatest economies of scale and achieve optimal performance, organizations must carefully weigh their options when choosing a storage protocol to support their virtual server environments.
Which protocol should you choose?
There's no absolute or standard answer to this question. Both protocols -- block and file -- have distinct advantages and specific limitations. Block-based storage is the more mature technology and currently has a larger installed base. NFS, though, has much to recommend it, most notably ease of management and deployment in virtual server environments. Before choosing any product or technology, organizations should first examine their business goals, technology requirements and budgetary needs, and choose the solution that best suits their criteria. I've outlined the pros and cons of block-based and file-based storage deployments below. This is good information for data storage managers to have on hand when deciding how to support their virtual environments.
Storage-area network (SAN) or block-based storage is a mature technology. Advantages to this approach include:
- Optimization for high performance and reliability for data-intensive workloads such as online trading.
- Many block-based storage deployments have their own dedicated high-speed networks. This facilitates faster throughput and improved performance.
- Fibre Channel (FC) and iSCSI host bus adapters (HBAs) in a block-based storage implementation usually feature protocol offloads. These HBAs perform protocol-related functions much quicker than the main CPU and free up CPU resources to perform other tasks.
- A large pool of experienced administrators.
- A wide variety of available physical management tools from virtualization vendors like VMware, as well as third-party suppliers.
The potential disadvantages/drawbacks to block-based storage are as follows:
- Switches and HBAs can be significantly more expensive than the standard network equipment required for NFS.
- There's a layer of complexity and cost associated with acquiring and managing a separate storage network.
- Greater degree of deployment and ongoing administrative complexity. Creating and managing LUNs -- including switch zoning, LUN sizing and determining how many virtual servers can be mapped to the LUN -- can get very complex. In a traditional physical server-based storage network, LUNs are the logical components that convert physical disk space into logical storage space, which the host server operating system can then access and utilize. In a virtualized storage environment, LUNs are the layer that sits between the physical disk and the application.
- Requires experienced storage administrators familiar with the specific vendor's storage.
- VMware's file system has a 2 TB data store limitation for block data, which, with today's data growth characteristics, can mean creating and managing many relatively small data stores.
NFS is a file-based protocol and is used to establish a client/server relationship between a NAS device that acts like a server and the client (ex., VMware ESX or vSphere 4.0 host). In contrast to block storage, the file storage manages the layout and structure of the files and directories on the physical storage. It also handles some aspects of shared access and provides primitives that can be used for coordinated access from multiple servers. While NFS wasn't initially supported by VMware, it's quickly coming into its own as a foundational storage infrastructure to support virtual server environments. Individual NAS and SAN products may offer advanced data management features such as data deduplication and thin provisioning that become even more valuable with virtual infrastructures.
Among the advantages of NFS:
- NFS is standards based and runs on IP networks.
- It's easy to configure, deploy and manage in a virtual server environment. IT managers can quickly and efficiently provision storage environments.
- NFS typically doesn't require the IT department to use separate, dedicated Fibre Channel storage management resources. Instead, they can use their Windows or Linux system administrators to simultaneously oversee and administer the server and storage.
- Users can deploy a consolidated Ethernet infrastructure across all apps instead of a separate Fibre Channel network just for storage traffic.
- NFS supports larger data stores of multiple terabytes, eliminating the 2 TB data store limit associated with using block-based storage. Users can store a large number of virtual machines (VMs) in fewer data stores.
- Resizing NFS-based file systems is done online and relatively easily.
- NFS offers advanced features and functions via file systems. NFS-based storage offers more granular support for snapshots and clones, which are done at the file, file system or directory -- rather than LUN -- level.
- Thin provisioning is the default for NFS data stores and reduces initial storage consumption.
The potential disadvantages/drawbacks to NAS storage are:
- TCP/IP performance overhead. While some vendor tests indicate NFS can perform as well as block-based systems, in some instances raw device mapping and block storage may be required to eliminate TCP/IP chatter and overhead.
- NFS lacks the efficiency of native multipathing, a feature common to block systems. The impending availability of NFS 4.1, featuring parallel NFS, will alleviate this drawback.
- Block storage is still the predominant data center protocol. As complex as managing SANs, mapping LUNs and zoning ports is, it's what IT storage managers know and are comfortable with, and it works.
The advantages far outweigh the disadvantages when it comes to using NFS to support virtual server environments. Using NFS simplifies the storage environment, enabling users to "do more with less"; this means fewer data stores supporting more VMs, greater deduplication ratios, less provisioning work and time, and the list goes on and on. There's no way to know which approach is best for your IT shop until you've evaluated which protocols and requirements (performance, parallel NFS, data store limits) are a priority for your organization. Knowing those priorities and understanding these pros and cons is a good, strong starting point for optimizing your storage environment for virtualization.
BIO: Terri McClure is a senior storage analyst at Enterprise Strategy Group, Milford, Mass.