Features

January 2008

Virtualization

Overcome the input /output pitfalls

Centralized storage caching can accelerate operations by delivering real-time response.

by Gary Orenstein

CN
Scalable caching appliances enhance existing NAS- and NFS-based storage solutions without requiring any changes to the application or file system.

While consolidated server deployments in a virtualized server environment can crank up utilization rates, this practice also allows large numbers of clients (real and virtual) to access data simultaneously on a single storage system. This can negatively impact corresponding input/output operations-per-second (IOPS) performance, especially for conventional storage systems based on slow mechanical disks. Real-time application performance in latency-sensitive enterprises can be compromised, thereby nullifying some of the advantages provided by virtualization.

One way to help avoid the "input/output (I/O) trap" of server virtualization technologies is available through centralized storage caching. This approach makes use of high-capacity, high-speed cache memory that is shared as a network resource, serving I/O-intensive requests directly from cache. This can accelerate I/O operations by delivering real-time response and higher IOPS.

While there is a perceived performance advantage for Fibre Channel solutions, many customers enjoy the flexibility and manageability of network file systems (NFS) and have considered NFS alternatives primarily due to performance concerns. Centralized storage caching can alleviate those concerns.

Application servers in the previrtualization era were sometimes I/O constrained, but the constraints were relatively easy to identify. For example, since each server typically hosted one primary application, measuring the I/O load on a per-server basis was easy. Also, the total number of servers and applications accessing a single storage system was limited due to logical and physical constraints.

While I/O imbalances still occurred, administrators had a relatively simple way of pinpointing loads and redistributing them to alternate storage subsystems, as necessary. Predictable I/O performance existed due to a non-virtual, segmented and fairly consistent workload. The end result is that administrators could create server and storage system combinations that operated efficiently.

With server virtualization deployments, many virtual machines and their corresponding applications share a single I/O connection, such as mounting a network-attached storage (NAS) file system or Fibre Channel logical unit number (FC LUN). In these cases, isolating the biggest I/O driver in the configuration becomes more difficult.

Furthermore, since consolidation remains a primary goal and benefit of virtualization, customers often end up deploying many virtual machines that connect to the same storage system. This combination often results in I/O contention that was absent in the previrtualization stage, and is more difficult to identify and resolve. The result is application volatility due to virtualized, shared and largely unpredictable workloads.

ADDING LOADS TO THE SYSTEM

Within the storage system, contention occurs when multiple I/O streams are competing for the same resource, namely mechanical disks. Each I/O stream, or, in this case, each additional virtual machine, can place excess I/O load on the storage system. Therefore, the simplicity by which an IT manager can deploy a new virtual machine can also lead to a potentially dangerous byproduct of I/O contention. Access patterns of the applications can also determine overall I/O load; when more applications are added, the workload becomes more unpredictable, exacerbating the impact of contention.

The most conventional approach to improving I/O performance is to add more disk spindles. While this may provide a temporary increase in I/O capabilities, the underlying problem of more CPUs accessing slower mechanical disks has been masked, not cured. The same is true for selecting a drive type that has the highest performance characteristics, and also the highest cost. In addition, modifying disk spindle count or drive type typically involves some type of data migration, a manual process that can be time consuming.

Performance considerations remain paramount for users deploying virtualization. With virtualization still in early stages at many companies, the performance concerns have yet to be fully characterized. Broadly classifying performance in virtual environments can include one or all of the following criteria:

  • number of virtual machines per server;
  • maximum number of virtual machines that can exist on a single physical server;
  • total number of virtual machines per environment;
  • maximum number of virtual machines per environment;
  • virtual machine/application performance in steady state;
  • the peak and sustainable application workload;
  • virtual machine time to steady state (e.g., boot time);
  • the time a virtual machine takes to reach peak performance; and
  • I/O improvements through caching.

Centralized storage caching provides a means to boost I/O performance without having to deploy excessive numbers of disk drives, or manually migrate data from one storage device to another. A scalable caching appliance can be placed in the network to serve data from high-speed memory as opposed to disk. This can improve response time and IOPS without disrupting the existing storage infrastructure.

Scalable caching appliances enhance existing NAS- and NFS-based storage solutions, without requiring any changes to the application or file system. This provides storage administrators a mechanism to separate the capacity-centric nature of persistent storage from the performance-centric nature of memory-based caching.

BEST OF BOTH WORLDS

Previously, administrators had to fit all storage-related functionality and all performance-related functionality into one product. By separating the I/O performance capabilities of caching from the I/O persistence capabilities of NAS and clustered file systems, administrators get the best of both worlds.

In this type of deployment, a NAS device or multiple NAS devices–as part of a clustered file system–provide simple and scalable storage capacity. Further, all of the existing storage-management tools, such as snapshot, backup, recovery, replication and provisioning, remain in place and undisturbed. When an increase in I/O performance is required, the storage can be accelerated through the caching appliance without having to migrate data, reconfigure disk groups, RAID levels or drive type, or deploy new storage systems.

Centralized storage caching delivers on these aspects of virtualization performance:

  • more virtual machines per server;
  • CPUs and individual clients can now support more virtual machines;
  • support a larger total number of virtual machines;
  • high-speed, high-capacity cache memory offsets disk-bound workloads to remove I/O contention for a large number of servers;
  • improved virtual machine/application performance;
  • low-latency responses and high IOPS boost application efficiency and reduce job times;
  • improved boot time/startup time;
  • serving data in parallel from memory-based scalable caching appliances enables support for thousands of clients simultaneously;
  • peak and mixed application workloads; and
  • large-capacity caches can sustain peak and mixed application workloads, including automatic rotation of frequently accessed data from larger capacity persistent storage.

Recognizing the performance concerns within virtual environments, scalable caching appliances can offset potential I/O pitfalls associated with virtualization. The addition of high-speed, high-capacity memory as a shared network resource enables performance and efficiency to deliver enough I/O to hundreds of virtual machines simultaneously. The result is optimal performance, reduced storage over provisioning, and guaranteed quality of service while protecting existing storage investments.

Gary Orenstein is vice president of marketing for Gear6, Mountain View, Calif.

For more information (click here)


The data center transformation

by Paul Brennan

Server virtualization is transforming how organizations design and deploy services within data centers. While server virtualization can reduce hardware and operational costs, the agility of a virtualized infrastructure unlocks new ways to deploy, manage and monitor networked and Internet services.

Virtualization enables increased utilization of the data center by consolidating multiple environments onto a single server, allowing businesses to maximize existing resources. With fewer systems required for the same tasks, virtualization simplifies the IT infrastructure, easing the management of resources and facilitating the response to varying business demands on the IT infrastructure. This ultimately means bottom-line savings.

For example, if an organization with 60 distributed physical servers implements virtualization, it can streamline its infrastructure to only two multiprocessor servers running 10 virtual servers. This can, in turn, reduce server asset requirements and administrative support by up to 40 percent.

In addition, horizontal scaling means the virtual environment has no upper limit, making it more scaleable than an infrastructure composed of multiple physical servers.

Hand-in-hand with the growth of virtualization has been the rise of virtual appliances. These are pre-installed and preconfigured software packages that operate in virtual environments and provide the same functionality and ease of use as hardware appliances. The benefit of using virtual appliances is that there is no need to wait for new feature upgrades from manufacturers. Instead, they can be downloaded as soon as they are available.

Virtualization also enables an organization to get the most from its servers, as there is no longer a limit to running just one operating system on a single server. Virtualization technologies can consolidate multiple platforms running different operating systems and heterogeneous applications on a single platform. This reduces the number of systems that need to be managed for the same tasks and operations, which can help to cut real-time power and cooling costs.

Furthermore, a virtual appliance can be switched on or off as necessary, ensuring only the amount of power that is necessary is used. Typically, the level of energy required to run and cool traditional servers can be as much as 30 percent of a data center's power.

A problem faced by many organizations deploying virtual environments is the lack of management and feedback controls based on actual traffic flows and application performance. While virtualization can consolidate hardware in the data center, it can increase the number of virtual systems and applications, sometimes overwhelmingly. This brings with it greater complexity and management requirements, meaning that, in many instances, an organization is unable to tell in real time how systems and applications are performing.

Instead, the organization must rely on static predetermined business rules to allocate CPU resources. For example, if a company's Web site receives a surge in transaction requests beyond the capacity that has been allocated to the e-commerce application, the performance and reliability of the service can be seriously affected before additional resources can be allocated.

The benefit of a software-only approach to traffic management in virtualized environments is that the solution sits natively as a virtual machine, rather than in an appliance sitting on the periphery, making it well placed to manage the flow of traffic.

Deploying application traffic management within a virtual environment means that an IT manager can dynamically allocate CPU resources based on real needs, rather than just relying on static business rules such as boosting e-mail server resources at certain times of the day. The application-delivery controller can monitor real-time performance and response rates and feed this data backup to the virtual manager.

Virtualization provides a host of benefits, including techniques to improve performance, initiate server redeployments and shape traffic to minimize the effects of CPU over-subscription. Virtualization can also be used to seamlessly test and upgrade live applications without any interruption in service.

Paul Brennan is chairman and CEO, technology strategy, for Zeus Technology, Mountain View, Calif.

 For more information (click here)