How to Turn Storage Networks into Better Performers
Want your storage network to be a low-latency fast sprinter (processing many small input/output operations per second)? Or rather a highly responsive yet wide-bandwidth runner, capable of moving large amounts of data (big IOPS)?
Either way, these five storage management and performance tips can turn that network into the type of performer its users need it to be.
1. Maintain Situational Awareness
Obtain a performance baseline of normal behavior to compare against when trying to determine bottlenecks and their causes. This means using server, storage and networking tools to gain insight into activity, errors, response times, IOPS, queues, bandwidth, reads versus writes and other metrics that matter. Also, verify that everything is running in a normal state, with no drive, controller, adapter, path or other component failure, copy or rebuild occurring.
Look at all applications and databases. Are they behaving normally? Are there locking or IO queue problems with busy servers (for example, high system overhead CPUs), or adapter and bus bottlenecks (queues and errors)? Likewise, are there PCI adapter problems (a path failed or running in degraded mode), or is a single adapter being used? Is there network congestion, and is storage on a network separate from other LAN traffic?
How about the storage system: Are all components (controllers, cache memory, adapters, ports and devices) working as configured or in a degraded mode?
2. Design for Performance and Availability
It is preferable to leverage redundant adapters or network interface cards on separate PCI Express buses for fault isolation and containment. Plus, there are performance benefits.
Keep in mind that a dual- or multiport adapter provides for more connectivity and performance than would a single adapter, and it won’t create a potential single point of failure. When using redundant adapters, deploy multipath software that supports availability failover and load balancing. Consider the trade-offs of partially using each path to maintain performance during failover against increased usage and degradation when an adapter fails.
Another tip: Select storage systems with redundant controllers and mirrored cache. Then, revisit your RAID, snapshot and replication configurations and settings to make sure they are helping — not hurting — performance.
3. Determine Networked Server and Storage Patterns
Isolate general LAN networking traffic if using Ethernet and IP storage. If using IP storage such as iSCSI or network-attached storage (with large IO transfers), enable jumbo frames where practical.
4. Do Your Homework — an Ounce of Prevention Goes a Long Way
Confirm that all server software programs (operating systems, applications, drivers and hypervisors) are up to date. This also means making sure that adapters, switches, storage systems and their devices have current firmware releases and configurations.
Also, note that aggregation can cause performance aggravation when it comes to network, server virtualization and storage consolidation. Instead of moving problems, find and fix them.
5. Make Use of Applicable Technologies and Techniques
A little bit of cache — including NAND flash solid-state technology (PCIe cards and drives) — in the right location can go a long way in improving quality of service. Look into caching and IO optimization or acceleration software for physical as well as virtual machines.