Q&A: Server Virtualization for Aggregation
Server virtualization is not new to IT, but what if you could use the technology to combine several servers into one virtual server?
Server virtualization is not new to IT, but what if you could use the technology to reverse the common use of this technology? What if you could combine several servers into one virtual server? We explore the advantages, the best workloads suited to this approach, and how to avoid common IT mistakes for server virtualization for aggregation projects with Shai Fultheim, founder and president of (ScaleMP), and who is heavily involved in the technology.
Enterprise Systems: What is server virtualization for aggregation? How is it different from traditional server virtualization and from server consolidation?
Shai Fultheim: Let's start with the similarities. Virtualization technology begins with a hypervisor or virtual machine monitor. This is a small bit of software code that runs beneath an operating system. This hypervisor provides a disintermediation layer that simulates (where needed) hardware capability below to software layers -- operating system(s) and application workloads -- above.
The benefit of this layer is that it abstracts the hardware from the operating environment. In traditional server virtualization this is used to carve up a single server into multiple virtual servers to increase the utilization rates of the hardware by increasing the independent workloads and operating environments that can run on any single server hardware. This allows end users to consolidate different workloads onto a single server.
The limitations of this technology remain, however -- namely, the hardware limitations of that server. For many workloads this isn't an issue. They operate fine with fractions of a CPU or a few gigabytes of RAM.
Virtualization for aggregation uses the same fundamental virtualization technology to do exactly the opposite for servers and workloads (some even call this "reverse virtualization"). That is, using virtualization to aggregate a number of servers into one virtual server that provides a larger single system resource (CPU, RAM, I/O, etc.) than any one server can provide. This provides a large scale-up system solution for large workloads -- those that require more processing or memory for better performance -- while taking advantage of the price and performance advantages of commodity components.
It also may be used as a mechanism to reduce the need to manage multiple servers by treating them as single virtual server.
What different types of workloads does virtualization for aggregation address?
Any workload that doesn't fit into one server!
For example, high-performance workloads require a large number of processing cores and/or a large memory footprint for optimal performance. Traditional high-performance workloads include manufacturing applications such as computational fluid dynamics, visualization and simulation, electronic design automation, or computer-aided design. It also includes life sciences applications such as genomics and molecular modeling, life sciences visualization, computational chemistry, and others.
Another large segment of high-performance applications include financial applications such as numerical simulations, financial modeling, and analytics. Many companies require large memory system solutions for running large in-memory databases such as data warehousing.
In addition, aggregation is also used for simplification of computing environments requiring multiple systems. Anything that uses a computer cluster can be virtualized and access a single point of management using aggregation technology.
For what types of workloads does virtualization make no difference or degrade performance?
Although there is always some minimal overhead in virtualizing workloads, this is more than compensated for through the ability to add more servers to the VM and by the dramatic increase in performance of the commoditized Intel x86 processor compared to traditional systems.
Despite some small performance overhead, the customer will still achieve better and sometimes world-record performance by simply being able to run their workloads on a larger x86 infrastructure. A virtual SMP on x86 will cost a fraction of the price to purchase of -- and will perform equal to or better than -- a RISC-based system, and can be reconfigured to run any workload.
What are the expected benefits from server virtualization for aggregation?
Beyond the significantly lower total cost of ownership for a much better price/performance and pure performance story, there are many other benefits to customers in using virtualization for aggregation.
By being able to run multiple systems as one, customers can remove dependency on the required technology used to run compute clusters. Compute clusters require distributed file-systems, change management, fabric management, and resource scheduling -- functions that are provided by the operating system in a shared-memory environment. By converting distributed environment to a shared memory environment, customers get an easier to manage platform in a more cost-effective manner.
How can server virtualization for aggregation and server virtualization for consolidation be used together? Are there additional benefits to be expected from such synergy?
By creating a large virtual machine, IT managers can partition systems in an unbalanced manner. They can create smaller virtual machines with a tremendous amount of memory but few CPUs -- or many CPUs and a small amount of memory.
The biggest benefit for administrators, however, is the ability to load balance their virtual machines across many nodes -- currently as many as 16 hardware systems -- to ensure the highest levels of performance and availability. This capability is still in the qualification stage, but we expect that for particular applications (such as desktop virtualization), many customers will be drawn to the idea of managing a single very large pool of system resources to dynamically scale applications and configure them on-the-fly in whatever optimal manner they'd like.
What are the biggest mistakes IT makes when undertaking a server virtualization for aggregation project?
An aggregated resource is not always beneficial to a given application if not properly optimized. In many cases, we are seeing customers taking an application that could run on 8 cores and 32GB RAM and running it on 64 CPUs (or more) and 512GB RAM. The performance benefit of the additional RAM is sometimes hidden by the lack of scalability of the application. In many cases, customers running the application on 32 CPUS but with the same memory amount will yield better performance.
What best practices can you suggest to avoid these mistakes?
Customers should always understand the performance characteristics of their applications and be able to monitor and profile their workloads to measure the efficiency of the (virtual) system.
How will virtualization for aggregation contribute to or drive future changes to data center systems?
The promise of virtualization and eventually cloud computing is that IT and data center design will move from managing systems to managing workloads. Ultimately, IT is concerned with service-level agreements, performance characteristics of workloads, and delivering applications to end-users wherever and whenever needed. Virtualization for consolidation from vendors such as VMware, Citrix, and Microsoft provided the opportunity to begin rethinking data-center design around service levels for a group of applications.
Virtualization for aggregation provides the mechanism for this way of thinking to expand to encompass almost all datacenter applications. We refer to this as "shaping a system to fit a workload rather than shaping a workload to fit a system."
What do ScaleMP virtualization for aggregation solutions offer?
ScaleMP's vSMP Foundation aggregation platform enables IT to bring their demanding workloads into the cloud. vSMP Foundation allows IT administrators to build any size or scale system needed to best run whatever application or workload they may have as well as simplifying distributed infrastructure. By leveraging the power of commodity x86 infrastructure, administrators now have this power with all the benefits of low-cost hardware and high-performance Intel processors. In addition, ScaleMP helps eliminate system sprawl by providing a simpler and easier management solution -- one OS, no cluster file system, and aggregated cluster I/O and disk resources.