Library Table of Contents Index Previous Page (Alt-p) Next Page (Alt-n) Comments

Improving storage system performance

About this section  Top

This section describes configuration procedures that might improve your system's performance.

Balancing NFS traffic on network interfaces  Top

Attach multiple interfaces on the storage system to the same physical network to balance network traffic among different interfaces. For example, if two Ethernet interfaces on the system named toaster are attached to the same network where four NFS clients reside, specify in /etc/fstab on client1 and client2 that these clients mount from toaster-0:/home. Specify in /etc/fstab on client3 and client4 that these clients mount from toaster-1:/home. This scheme can balance the traffic among interfaces if each of the clients generates about the same amount of traffic.

The storage system always responds to an NFS request by sending its reply on the interface on which the request was received.

Ensuring reliable NFS traffic by using TCP  Top

With faster NICs and switches, you are advised to support NFSv2 or NFS v3 protocol over TCP rather than over UDP. NFS v4 is supported over TCP only.

Avoiding access time update for inodes  Top

If your applications do not depend on having the correct access time for files, you can disable the update of access time (atime) on an inode when a file is read. Set the no_atime_update option to On for each volume to prevent updates. For example:

vol options vol2 no_atime_update on

Consider turning this option on if your storage system has extremely high read traffic--for example, on a news server used by an Internet provider--because it prevents inode updates from contending with reads from other files.

Attention
If you are not sure whether your storage system should maintain an accurate access time on inodes, leave this option set at its default, Off, so that the access time is updated.

Improving read-ahead performance  Top

If the file access patterns of your clients are random (nonsequential) and the cache age is less than three, setting minimal read-ahead to On might improve performance. By default, the storage system uses aggressive read-ahead, which enhances sequential access, and is more commonly used by UNIX clients and applications. Use the sysstat command to determine the cache age. Set the minra option to On for each volume to specify minimal read-ahead. By default, the option is set to Off and the storage system does very aggressive read-ahead.

Adding disks to a disk-bound aggregate  Top

If you have a single traditional volume or single-aggregate storage system, use the sysstat -u command to determine the fraction of time that the busiest disk is active. If the fraction is greater than 80 percent, add disks to the traditional volume or aggregate using the aggr add command.

Sizing aggregates appropriately  Top

When creating an aggregate or a traditional volume, be sure to provide enough data disks for its anticipated data access load. Performance problems due to insufficient data disks are especially noticeable for single-data-disk aggregates (two disks for RAID4 and three disks for RAID-DP).

Putting cards into the correct slots  Top

At boot time or when you use the sysconfig -c command, you might see messages indicating that expansion cards must be in certain slots. To improve performance, follow the recommendations in the message. See the System Configuration Guide on the NOW site at http://now.netapp.com/NOW/knowledge/docs/docs.shtml for information about card placement.

Maintaining adequate free blocks and free inodes  Top

If free blocks or free inodes make up less than 10 percent of the space on any volume, the performance of writes and creates can suffer. Check free blocks and inodes by using the df command and df -i command, respectively. If over 90 percent of blocks are used, increase blocks by adding disks to the volume's containing aggregate or by deleting Snapshot copies. If fewer than 10 percent of inodes are free, increase inodes by deleting files or using the maxfiles command.

Optimizing file and volume layout  Top

If read performance on a particular large file or LUN degrades over time, use the reallocate command to optimize its layout. If you add disks to an aggregate, use reallocate to redistribute the data equally across all of the disks in the aggregate.

Using oplocks for CIFS storage systems  Top

Oplocks allow CIFS clients to cache more data locally, reducing traffic to the storage system. On a system running CIFS that is not in a database environment, set oplocks to On by using the options cifs.oplocks.enable on command. If the system is in a database environment, ensure that the oplocks are not set.

Increasing the TCP window size for CIFS  Top

Increasing the TCP receive window size to its maximum setting on both the system and a CIFS client can improve performance for large transfers, provided that packet loss is not taking place and the client's send window is large.

Attention
You are strongly advised to call technical support before changing this value.

The default is 17,520 bytes. The number of bytes must be between 2,920 and 64,240, in multiples of 1,460 bytes. The TCP window size controls the number of TCP messages that can be transmitted between the storage system and the CIFS client at one time.

Attention
If you are using DOS, enter an NT4 value of 8,760.

Use the options cifs.tcp_window_size 64240 command to maximize the TCP window size on a storage system running CIFS. Use the options nfs.tcp.recvwindowsize 64240 command to maximize the TCP window size on a system running NFS. Change the window size in the Windows registry on a Windows NT client by adding the DWORD value \\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Tcpip\Parameters\TcpWindowSize
and set it to 64,240 (0xFAF0 in hexadecimal).

Note
The cifs.tcp_window_size and nfs.tcp.recvwindowsize options are invisible until you set them. After you set these invisible options, you can view them by entering the options cifs or the options nfs command.

Backing up by using qtrees  Top

If your storage system has multiple tape drives and a volume with two to four qtrees, you can improve backup rates by running multiple dump commands in parallel, each reading a different qtree and writing to a different tape drive.

Library Table of Contents Index Previous Page (Alt-p) Next Page (Alt-n) Comments