9.2 Planning for a Software RAID Device

Before you create your software RAID device, you must evaluate your storage requirements and determine which RAID solution best fits your performance and fault tolerance needs.

This section discusses the following:

9.2.1 General Guidelines for Software RAID Devices

To set up a RAID device, you allocate free space from any of your physical storage devices. NSS transparently presents the allocated free space as virtual partitions that represent NSS-managed physical partition areas on the participating drives. These partitions are the basic elements of a software RAID device. How you allocate each of the partitions to pools depends on the nature of the pools (shared or not shared for clustering) and the type of RAID device it is.

As an example, the RAID 0 device, illustrated in the following figure, consists of three RAID partitions. It stripes data across three physical drives. The stripes are written and read in the order designated.

Figure 9-1 Striping Data on a Software RAID 0 Device

Consider the following general guidelines when creating a software RAID device:

  • Each partition in the RAID configuration should come from a different device. NSS lets you obtain RAID partitions from the same device, but this severely impedes the performance of your file system.

  • Do not use space from a drive that contains your system partition (such as the / root partition on Linux or the SYS pool on NetWare) or boot partition (Linux).

  • You can use any combination of IDE or SCSI devices in a software RAID device. Make sure these devices have similar performance characteristics; otherwise, your performance might decrease.

  • In a clustered solution using Novell Cluster Services™, for software RAIDs 0 or 5 on shared disks:

    • You can have only one pool associated with that RAID device.

    • You must create an NSS pool and volume on that RAID device from the same server node before the pool can be migrated to other nodes in the cluster.

9.2.2 Guidelines for Software RAID 1 Devices

The following is a list of requirements for mirroring partitions with software RAID 1 devices:

  • Mirrored partitions must have the same partition type: NSS partitions to NSS partitions and Traditional partitions to Traditional partitions.

  • Mirrored partitions should be set up on devices that have similar performance thresholds.

  • You can mirror only partitions, each from its own NetWare partition. If a storage pool spans multiple devices, each of the individual partitions that make up that pool can be mirrored independently. All of the pool’s partitions must be mirrored in order for the data in that pool to be fault tolerant.

  • You cannot combine mirror groups (existing groups with multiple mirrored partitions). A mirror group is expanded by adding a partition from your free space but not by adding an existing mirror group to the current group.

  • All of the devices that participate in a mirror must be marked a shared or not shared for clustering for each mirror group.

  • Avoid setting up multiple mirror groups on a single device. Such configuration heavily degrades the performance of the file system.

  • To mirror software RAID 0 devices, the member devices must have no drives in common.

9.2.3 Drive Restrictions for NSS Software RAID 0 and 1 Devices on Linux

When you create or expand an NSS software RAID device, do not use space from the drive that contains your boot partition or system partition. In a worst-case scenario, you might need to reinitialize a drive if the partition in the RAID failed.

WARNING:Reinitializing a drive destroys its contents.

If your boot and system partitions are on drives managed by LVM, the drives are not eligible to contribute space to the software RAID.

If the boot and system partitions are on drives managed by EVMS, the drives might appear in the list of available devices if they contain enough space. Do not specify space from those drives as segments for the NSS software RAID device you are creating or expanding.

9.2.4 Choosing a Software RAID Solution

When choosing a software RAID solution, determine whether you need to address file system performance, data fault tolerance, or both. The following tables highlights the key data fault tolerance, performance, and configuration issues associated with each RAID type.

Table 9-2 RAID Performance Characteristics

Requirement

RAID 0

RAID 1

RAID 5

RAID 10

RAID 15

NSS on Linux

Yes, for data volumes only

Yes, for data volumes only

Yes, for data volumes only

Yes, for data volumes only

Yes, for data volumes only

NSS on NetWare

Yes, for data and system volumes

Yes, for data and system volumes

Yes, for data and system volumes

Yes, for data and system volumes

Yes, for data and system volumes

Data fault-tolerance

No

Redundancy

Parity

Redundancy

Redundancy and parity

Read I/O performance

Best improved (parallel reads)

Improved if parallel channels to each mirror

Improved, if all segments are present and working properly

Improved, with RAID 0 read advantage

Improved if parallel channels to each mirror, with RAID 5 read advantage

Write I/O performance

Best improved (parallel writes)

Same if parallel channels; otherwise, slightly decreased

Somewhat decreased by parity calculation

Slightly improved, depending on channel configuration

Somewhat decreased, depending on channel configuration and parity calculations

Valid names

2 to 128 characters

2 to 80 characters

2 to 128 characters

2 to 80 characters

2 to 80 characters

Number of segments

2 to 14

2 to 4

3 to 14

Mirror 2 to 4 software RAID 0 devices

Mirror 2 to 4 software RAID 5 devices

Maximum segment size

1 TB, if 2 segments

2 TB for each mirror

1 TB, if 3 segments (2 for data and 1 for parity)

2 TB for each mirror

1 TB, if 3 segments (2 for data and 1 for parity)

Maximum device size

2 TB

2 TB

2 TB

2 TB

2 TB

9.2.5 Determining the Partition Size

The space that a member device contributes to a software RAID is called a partition or segment. Each physical device should contribute only one partition to the RAID; otherwise, it negates the benefits of the RAID. A software RAID device can contain only one partition per device. All member partitions in a software RAID device must be the same size.

The size of physical and logical devices used for NSS and Traditional file systems cannot exceed 2 terabytes (TB). Therefore, the maximum partition size is 1 TB for software RAID 0 and 5 devices and 2 TB for software RAID 1. For information, see Section 9.2.4, Choosing a Software RAID Solution.

The capacity of the RAID device depends on the RAID type and the number of member partitions:

  • RAID 0: Capacity equals the number of partitions times the partition size.

  • RAID 1: Capacity equals one partition size.

  • RAID 5: Capacity equals the number of partitions minus one, times the partition size.

  • RAID 10: Capacity equals one partition size of space taken from the RAID 0; it is not limited to the partition size of partitions in the RAID 0 itself.

  • RAID 15: Capacity equals one partition size of space taken from the RAID 5; it is not limited to the partition size of partitions in the RAID 5 itself.

For example, the following table shows the maximum size of partitions needed to create a software RAID device of up to 2 TB.

Table 9-3 Maximum Segment Sizes Based on Number of Segments and RAID Type

Maximum Segment Size

Number of Segments

RAID 0

RAID 1

RAID 5

RAID 10

RAID 15

2

1 TB

(1000000 MB)

2 TB (where each mirrored element is a 2 TB device)

Not applicable

2 TB (where each mirrored element is a 2 TB RAID 0)

Not applicable

3

666666 MB

2 TB

(2000000 MB)

1 TB

(1000000 MB)

2 TB

2 TB (where each mirrored element is a 2 TB RAID 5)

4

500000 MB

2 TB

666666 MB

2 TB

2 TB

5

400000 MB

Not applicable

500000 MB

Not applicable

Not applicable

6

333333 MB

Not applicable

400000 MB

Not applicable

Not applicable

7

285714 MB

Not applicable

333333 MB

Not applicable

Not applicable

8

250000 MB

Not applicable

285714 MB

Not applicable

Not applicable

9

222222 MB

Not applicable

250000 MB

Not applicable

Not applicable

10

200000 MB

Not applicable

222222 MB

Not applicable

Not applicable

11

181818 MB

Not applicable

200000 MB

Not applicable

Not applicable

12

166666 MB

Not applicable

181818 MB

Not applicable

Not applicable

13

153846 MB

Not applicable

166666 MB

Not applicable

Not applicable

14

142857 MB

Not applicable

153846 MB

Not applicable

Not applicable

Maximum device size

2 TB

2 TB

2TB

2 TB

2 TB

9.2.6 Determining the Number of Partitions

Each software RAID device comprises multiple partitions. You must specify at least the minimum number of partitions to create the type of RAID you choose. The maximum number of partitions is limited by the maximum number supported by that RAID type and the maximum device size (2 TB) for NSS and Traditional file systems.

After you set up the software RAID device, you can increase its size by adding segments. In iManager, click Storage>Software RAIDs>Increase Size, and then add segments up to the maximum number of segments for each type of RAID, or until you reach the maximum device size of 2 TB.

You cannot remove segments in a RAID device to decrease its size. In general, to reduce the size of a RAID device: Back up its data, delete the RAID, re-create the RAID with a smaller segment size or fewer segments, and then restore its data from the backup copy.

For some RAIDs, you can replace a failed partition by removing the segment from the RAID, replacing the failed disk, and then adding a segment to the RAID to replace the failed one. For information, see Section 9.9, Replacing a Failed Segment in a Software RAID.

9.2.7 Determining the Stripe Size for RAID 0 and RAID 5

In RAID 0 and RAID 5 configurations, NSS writes data to each member device in turn. The maximum amount of data (in KB) committed to each write to a partition is called a stripe. Striping is unrelated to file block sizes that you might set on your storage device.

Set the stripe size in increments of powers of two, between 4 KB and 256 KB (4, 16, 32, 64, 128, 256). The default stripe size is 64 KB.

To maximize performance of the RAID, set the stripe size to correspond with your typical data write requirements. In general, use smaller stripe sizes for data servers and medium-to-large sizes for file servers. For most implementations, 64 KB provides the best performance.