This is part 1 in a Q&A series with Panasas founder and CTO, Dr. Garth Gibson. He was recently asked by a large storage research center to comment on various HPC storage topics. Garth’s thoughts on virtualization were captured in the following exchange.
Question: The current state of virtualization has rich functions and features for controlling and managing compute resources, and at the same time making progress in integrating with network resources management. A key question is how much progress has been made and what are the features that are still lacking, or need to be developed to increase the manageability, or efficiency of virtualization?
Gibson: There are at least two perspectives to this.
On one hand, storage virtualization is a rich, mature area – that is, file systems virtualize block storage, and NAS virtualizes SAN. In this sense storage management is coming along well. NFS 4.0 improves multi-tenant authorization and security, NFS 4.1 improves performance scaling (pNFS has been adopted by Linux in releases 2.6.39, 3.0, 3.1 and 3.2 in the last year), and NFS 4.2 is standardizing the namespace for federated NAS (not yet and RFC).
On the other hand, data center virtualization using virtual machines has reset sophistication to the bare minimal. Each VM on a machine sees its own copy of all node resources. This works pretty well for “rate based” resources like CPU cycles and network bandwidth, but not very well for “capacity based” resources like memory and disk. Memory virtualization by swapping is too slow for most usage in the data center so instead we copy-on-write share common code (if the OS running on each VM is the same) or migrate to another machine under memory pressure. But the basic mechanism is to tell each VM that it has less memory than the physical machine (that is, divide rather than virtualize). The disk is even harder to virtualize. Often the disk is divided into LUNs and VMs are given ownership of a LUN. This is division, not virtualization. The best answer at this time is network storage – SAN (network LUN) or NAS (a LUN backed by a network file) – which put significant extra load on the network if not anticipated and provisioned explicitly. A VMWare technologist has been heard to say that SAN-based storage virtualization was giving way to NAS-based virtualization simply because the administration of VM disk images was causing there to be many more logical disks, and a file system namespace is a nicer way to cope than a SAN management interface.
Question: Will a flattened (Layer 2) convergence network be a feasible solution for cloud computing? The port consistency issue appears to be the major issue to be solved by the intelligent Layer 2 networking because the live migration of VMs (within the same Layer 2 network between two hosts) is more difficult. What do you think is the current trend in the use of intelligent Layer 2 solutions to solve port consistency issues?
Gibson: Networking for data centers is improving; with the Ethernet WAN people rediscovering what the HPC InfiniBand people learned a while ago about fat trees and multi-pathing. And although today’s cloud computing uses layer 3 subnets to achieve migration of compute to storage (Hadoop HDFS exposure of chunk location for example), it is certainly possible to handle this in VLANs. The networking people like layer 2 mechanisms while the systems people like layer 3 mechanisms. In the past the networking administrators were a separate and dominant group, and they still are outside of the data center. But inside the data center, most administrators are allowed freedom from the tyranny of the site-wide network administration and using private networks,; they are free to manage themselves.