Solaris Volume Manager Administration Guide

Chapter 8 RAID 0 (Stripe and Concatenation) Volumes (Tasks)

This chapter contains information about tasks related to RAID 0 volumes. For information about related concepts, see Chapter 7, RAID 0 (Stripe and Concatenation) Volumes (Overview).

RAID 0 Volumes (Task Map)

The following task map identifies the procedures needed to manage Solaris Volume Manager RAID 0 volumes.

Task 

Description 

Instructions 

Create RAID 0 (stripe) volumes 

Use the metainit command to create a new volume. How to Create a RAID 0 (Stripe) Volume

Create RAID 0 (concatenation) volumes 

Use the metainit command to create a new volume.

How to Create a RAID 0 (Concatenation) Volume

Expand storage space 

Use the metainit command to expand an existing file system. How to Expand Space for Existing Data

Expand an existing volume 

Use the metattach command to expand an existing volume.

How to Expand an Existing RAID 0 Volume

Remove a RAID 0 volume 

Use the metaclear command to delete a volume.

How to Remove a Volume

Creating RAID 0 (Stripe) Volumes


Caution – Caution –

Do not create a stripe from an existing file system or data. Doing so will destroy data. To create a stripe from existing data, you must dump and restore the data to the volume.


How to Create a RAID 0 (Stripe) Volume

  1. Check Prerequisites for Creating Solaris Volume Manager Elements and Background Information for Creating RAID 0 Volumes.

  2. To create the stripe, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the Volumes node. Choose Action->Create Volume, then follow the instructions in the wizard. For more information, see the online help.

    • Use the following form of the metainit command:

      metainit {volume-name} {number-of-stripes} {components-per-stripe} {component-names…} [-i interlace-value]
      • volume-name is the name of the volume to create.

      • number-of-stripes specifies the number of stripes to create.

      • components-per-stripe specifies the number of components each stripe should have.

      • component-names specifies the names of the components that will be used.

      • -iwidth specifies the interlace width to use for the stripe.

      See the following examples and the metainit(1M) man page for more information.

Example—Creating a Stripe of Three Slices


# metainit d20 1 3 c0t1d0s2 c0t2d0s2 c0t3d0s2
d20: Concat/Stripe is setup

The stripe, d20, consists of a single stripe (the number 1) that is made of three slices (the number 3). Because no interlace value is specified, the stripe uses the default of 16 Kbytes. The system confirms that the volume has been set up.

Example—Creating a RAID 0 (Stripe) Volume of Two Slices With a 32–Kbyte Interlace Value


# metainit d10 1 2 c0t1d0s2 c0t2d0s2 -i 32k
d10: Concat/Stripe is setup

The stripe, d10, consists of a single stripe (the number 1) that is made of two slices (the number 2). The -i option sets the interlace value to 32 Kbytes. (The interlace value cannot be less than 8 Kbytes, nor greater than 100 Mbytes.) The system verifies that the volume has been set up.

Where to Go From Here

To prepare the newly created stripe for a file system, see “Creating File Systems (Tasks)” in System Administration Guide: Basic Administration. An application, such as a database, that uses the raw device must have its own way of accessing the raw device.

Creating RAID 0 (Concatenation) Volumes

How to Create a RAID 0 (Concatenation) Volume

  1. Check Prerequisites for Creating Solaris Volume Manager Elements and Background Information for Creating RAID 0 Volumes.

  2. To create the concatenation use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the Volumes node. Choose Action->Create Volume, then follow the instructions in the wizard. For more information, see the online help.

    • Use the following form of the metainit command:

      metainit {volume-name} {number-of-stripes} {[components-per-stripe]| [component-names]…}
      • volume-name is the name of the volume to create.

      • number-of-stripes specifies the number of stripes to create.

      • components-per-stripe specifies the number of components each stripe should have.

      • component-names specifies the names of the components that will be used.

      For more information, see the following examples and the metainit(1M) man page.

Example—Creating a Concatenation of One Slice


# metainit d25 1 1 c0t1d0s2
d25: Concat/Stripe is setup

This example shows the creation of a concatenation, d25, that consists of one stripe (the first number 1) made of a single slice (the second number 1 in front of the slice). The system verifies that the volume has been set up.


Note –

This example shows a concatenation that can safely encapsulate existing data.


Example—Creating a Concatenation of Four Slices


# metainit d40 4 1 c0t1d0s2 1 c0t2d0s2 1 c0t2d0s3 1 c0t2d1s3
d40: Concat/Stripe is setup

This example creates a concatenation called d40 that consists of four “stripes” (the number 4), each made of a single slice (the number 1 in front of each slice). The system verifies that the volume has been set up.

Where to Go From Here

To prepare the newly created concatenation for a file system, see “Creating File Systems (Tasks)” in System Administration Guide: Basic Administration.

Expanding Storage Space

To add space to a file system, create a concatenation. To add space to an existing stripe, create a concatenated stripe.

How to Expand Space for Existing Data

  1. Check Prerequisites for Creating Solaris Volume Manager Elements and Background Information for Creating RAID 0 Volumes.

  2. Unmount the file system.


    # umount /filesystem
    
  3. To create a concatenation, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the Volumes node. Choose Action->Create Volume, then follow the instructions in the wizard. For more information, see the online help.

    • Use the following form of the metainit command:

      metainit {volume-name} {number-of-stripes} {[components-per-stripe]| [component-names]…}
      • volume-name is the name of the volume to create.

      • number-of-stripes specifies the number of stripes to create.

      • components-per-stripe specifies the number of components each stripe should have.

      • components specifies the names of the components that will be used.

      For more information, see the metainit(1M) man page.

  4. Edit the /etc/vfstab file so that the file system references the name of the concatenation.

  5. Remount the file system.


    # mount /filesystem
    

Example—Expanding a File System By Creating a Concatenation


# umount /docs
# metainit d25 2 1 c0t1d0s2 1 c0t2d0s2
d25: Concat/Stripe is setup
(Edit the /etc/vfstab file so that the file system 
references the volume d25 instead of slice c0t1d0s2)
# mount /docs

This example shows the creation of a concatenation called d25 out of two slices, /dev/dsk/c0t1d0s2 (which contains a file system mounted on /docs) and /dev/dsk/c0t2d0s2. The file system must first be unmounted.


Caution – Caution –

The first slice in the metainit command must be the slice that contains the file system. If not, you will corrupt your data.


Next, the entry for the file system in the /etc/vfstab file is changed (or entered for the first time) to reference the concatenation. For example, the following line:


/dev/dsk/c0t1d0s2 /dev/rdsk/c0t1d0s2 /docs ufs 2 yes -

should be changed to:


/dev/md/dsk/d25 /dev/md/rdsk/d25 /docs ufs 2 yes -

Finally, the file system is remounted.

Where to Go From Here

For a UFS file system, run the growfs command on the concatenation. See How to Grow a File System.

An application, such as a database, that uses the raw concatenation must have its own way of recognizing the concatenation, or of growing the added space.

How to Expand an Existing RAID 0 Volume

A concatenated stripe enables you to expand an existing stripe. For example, if a stripe has run out of space, you can make it into a concatenated stripe, and expand it without having to back up and restore data.

This procedure assumes that you are adding an additional stripe to an existing stripe.

  1. Check Prerequisites for Creating Solaris Volume Manager Elements and Background Information for Creating RAID 0 Volumes.

  2. To create a concatenated stripe, use one of the following methods:

Example—Creating a Concatenated Stripe By Attaching a Single Slice


# metattach d2 c1t2d0s2
d2: components are attached

This example illustrates how to attach a slice to an existing stripe, d2. The system confirms that the slice is attached.

Example—Creating a Concatenated Stripe By Adding Several Slices


# metattach d25 c1t2d0s2 c1t2d1s2 c1t2d3s2
d25: components are attached

This example takes an existing three-way stripe, d25, and concatenates another three-way stripe. Because no interlace value is given for the attached slices, they inherit the interlace value configured for d25. The system verifies that the volume has been set up.

Where To Go From Here

For a UFS, run the growfs command on the volume. See How to Grow a File System.

An application, such as a database, that uses the raw volume must have its own way of recognizing the volume, or of growing the added space.

To prepare a newly created concatenated stripe for a file system, see “Creating File Systems (Tasks)” in System Administration Guide: Basic Administration.

Removing a Volume

How to Remove a Volume

  1. Make sure you have a current backup of all data and that you have root privilege.

  2. Make sure you no longer need the volume.

    If you delete a stripe or concatenation and reuse the slices that were part of the deleted volume, all data on the volume is gone from the system.

  3. Unmount the file system, if needed.


    # umount /filesystem
    
  4. To remove a volume, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the Volumes node. Choose Edit->Delete, then follow the instructions. For more information, see the online help.

    • Use the following format of the metaclear command to delete the volume:

      metaclear {volume-name}

      See the following example and the metaclear(1M) man page for more information.

Example—Removing a Concatenation


# umount d8
# metaclear d8
d8: Concat/Stripe is cleared
(Edit the /etc/vfstab file)

This example illustrated clearing the concatenation d8 that also contains a mounted file system. The file system must be unmounted before the volume can be cleared. The system displays a confirmation message that the concatenation is cleared. If there is an entry in the /etc/vfstab file for this volume, delete that entry. You do not want to confuse the system by asking it to mount a file system on a nonexistent volume.