The right disk configurations for servers

Unix Insider |  Networking

database indexes,
number crunching output) or restored from backup tapes. If you can afford
the time it takes to restore the data, and it is unlikely to happen
often, there is no need to provide a resilient disk subsystem. This lets
you configure for the highest performance. If data integrity or high
availability is important there are two common approaches, mirroring
and parity (typically RAID-5). Mirroring has the highest performance,
especially for write-intensive workloads, but requires twice as many
disks to implement it. Parity uses one extra disk in each stripe to
hold the redundant information required to reconstruct data after a
failure. Writes require read-modify-write operations, and there is the
extra overhead of calculating the parity.


It is sometimes the case that the cost of a high performance, RAID-5
array controller exceeds the cost of the extra disks you would need to
do simple mirroring. To get high performance, these controllers use
non-volatile memory to perform write-behind safely, and to coalesce
adjacent writes into single operations. Implementing RAID-5 without
non-volatile memory will give you very poor write performance. The
other problem with parity-based arrays is that when a disk has failed,
extra work is needed to reconstruct the missing data and performance is
degraded seriously.


The home, NFS, and Web choice

In this particular case, I will assume that the filesystem dedicated to
home directories, NFS, and Web server home pages is mostly read-intensive,
and that there is some kind of array controller available (a
SPARCstorage Array or one of the many third party RAID controllers) that
has non-volatile memory configured and enabled. Note that SPARCstorage
Arrays default to having it disabled. You need to use the ssaadm
command to turn on fast writes. The non-volatile, fast writes greatly
speed up NFS response times for writes, and as long as high-throughput
applications do not saturate this filesystem, it is a good candidate
for a RAID-5 configuration. The extra resilience saves you from data
loss and keeps users happy without wasting disk space on mirroring.


The default UFS filesystem parameters should be tuned slightly, as
there is no need to waste 10 percent on free space, and almost as much
on inodes. I would configure 1 or 2 percent free space (default is 10
percent) and an 8 kilobyte average file size per inode (default is 2
kilobytes) unless you are configuring a filesystem that is under one GB
in size.


# newfs -i 8192 -m 1 /dev/raw_big_disk_device


The big_disk_device itself should be created by combining groups of
disks together into RAID-5 protected arrays, then concatenating the
arrays to make the final filesystem.

Join us:
Facebook

Twitter

Pinterest

Tumblr

LinkedIn

Google+

Spotlight on ...
Online Training

    Upgrade your skills and earn higher pay

    Readers to share their best tips for maximizing training dollars and getting the most out self-directed learning. Here’s what they said.

     

    Learn more

NetworkingWhite Papers & Webcasts

See more White Papers | Webcasts

Answers - Powered by ITworld

ITworld Answers helps you solve problems and share expertise. Ask a question or take a crack at answering the new questions below.

Join us:
Facebook

Twitter

Pinterest

Tumblr

LinkedIn

Google+

Ask a Question
randomness