Virtual computing has created a tremendous opportunity for businesses to offload their IT requirements to cloud providers. Today, businesses with very large storage requirements, such as distributors of video media, can use the cloud as a way to implement management-free storage. They no longer have to worry about matching capacity to the changing market, of providing proper physical environments for storage servers, or deal with security issues.
However, in a sense a virtual storage system is the exact opposite of a KISS (keep it simple system). With increased complexity, the ability to control input, throughput, and output patterns is severely limited. Virtual clients do not have to deal with this problem, but web hosts must be able to efficiently handle all the performance issues associated with a virtual environment.
The Cloud Environment: Perception versus Reality
Virtual systems providers have done a terrific job of marketing the cloud. The average person knows their data is “somewhere out there” just like rain in a cloud. However, even an advanced architect does not know exactly where any particular set of data is stored. Storage is performed algorithmically – even cloud technicians cannot map specific data any more than the Westworld employees knew exactly what was happening with their virtual people.
Watch Your Defragmenter
To get an idea of the difference between managing traditional data as opposed to controlling and optimizing virtual data, watch a computer’s disk defragmenter in action. The defragmenter shows a very different (and realistic) picture of how files are stored on media. The average computer user uses a file cabinet paradigm, and often imagines files are stored in computer memory in a way somehow similar to how they are stored in their desk drawers. However, the defragmenter shows how files are split and spread all over the hard drive. Only the disk manager knows the rhyme and reason behind the way the files are stored.
Beyond the Disk Manager
Although the files may look like they’ve been dropped in a blender and spread over the landscape of the hard drive, in reality, they are stored in a very precise and efficient manner which allows the computer to access data files in a smooth speedy fashion. However, the data manager is essentially blind to the virtual system running on top of it. It cannot manage the resources in the virtual environment in the same efficient way it does the underlying media. The ability to manage virtualized workloads is the challenge for the modern hosting provider.
In the Heat of Battle
It would be advantageous for hosting providers to be able to deal with the increased storage requirements for virtual applications in the future, but unfortunately, as far as virtualization is concerned, the future is now. The IDC states the currently 72% of workloads are now virtualized. In addition, they estimate that this value will grow to 86% by the year 2018. Physical workloads already comprise only a small part of all workloads. Hosting providers must hit the ground running with a VM management solution.
Input/output Management Challenges
Improper I/O management can lead to several potential problems, including:
- Insufficient control cache – cache provides a buffer for the short-term dynamics of the I/O flow. However, the unpredictability of virtual data flow can overwhelm this buffer.
- Read/write array scheduling – read/write scheduling has a major influence on performance. The increased number of read/write operations can cause a significant degradation.
- File locking – VM environments manage large blocks of data by locking files. Locking and unlocking files can add a significant performance hit.
- LUN alignment – this process aligns operating system data block sizes with disk storage blocks. Misalignment can also cause serious performance degradations.
Measuring VM Performance
Providers plan virtual performance capacity through a parameter called IOPS. This allows system planners to effectively measure virtual throughput. This was an easy task when data streams originated from a single computer. However, VM environments break large data blocks into small read/write data packets. For this type of transmission, a bits/sec measurement is not meaningful. Instead, VM planners use Input/output Operations per Second (IOPS).
How Hosting Providers Maximize IOPS
VM administrators calculate their required IOPS by monitoring performance over some period of time, commonly 30 days. This gives a good idea of how many IOPS are being used by the application server.
In order to boost IOPS capacity, designers often implement platforms with an extra 40 to 60 percent excess storage over what they need. Many providers upgrade spinning disk systems with flash storage technology. The improved performance of flash gives an equivalent boost in IOPS. This is an attractive strategy due to the plummeting prices of flash storage. Administrators can increase IOPS further by using data compressions and duplication to optimize their flash drives.
Managing the Virtual Environment Challenges
- Match VMs to workloads – similar workloads make planning and scheduling more predictable. Designers can modify SAN configurations in order to group like-workloads instead of simply using a single array of disks.
- Take advantage of storage offloading functions – modern hypervisor systems are designed to coordinate with the underlying storage functions in order to offload as many storage functions as possible. This increases the efficiency of storage operations, eases the burden on the hypervisor, and helps reduce congestion on the storage connections.
- Profile workloads – planners must more fully analyze the nature of the workloads to ensure proper like-workload grouping. This helps ensure optimal performance and prevent unexpected capacity constraints.
- Extend storage systems – the storage infrastructure must be expandable and extendible to meet future needs.
- Maintain infrastructure – VM administrators should continually update existing systems in order to take advantage of the latest technologies in order to reduce or eliminate data flow bottlenecks.
Moving the Focus to the Virtual Level
Once the platform hardware is deployed and configured, cloud administrators completely move their management focus to the virtual level. This means that performance measurements such as snapshots, replication, and statistics gathering must be done at the virtual machine level. By employing the proper management systems, this strategy allows the system to monitor and fine tune itself.
In this way, cloud providers can tame the I/O management problem. Technicians view a dashboard with the following specifications:
- CPU usage
- RAM usage
- Network saturation
- IOPS usage
By monitoring these simple outputs, technicians can see in a glance that their virtual system is healthy and robust.
Top image ©GL Stock Images