Solaris Volume Manager Administration Guide

Chapter 20 Disk Sets (Tasks)

This chapter provides information about performing tasks that are associated with disk sets. For information about the concepts involved in these tasks, see Chapter 19, Disk Sets (Overview).

Disk Sets (Task Map)

The following task map identifies the procedures needed to manage Solaris Volume Manager disk sets.

Task 

Description 

Instructions 

 Create a disk set

Use the Solaris Volume Manager GUI or the metaset command to create a disk set.

How to Create a Disk Set
 Add drives to a disk set

Use the Solaris Volume Manager GUI or the metaset command to add drives to a disk set.

How to Add Drives to a Disk Set
 Add a host to a disk set

Use the Solaris Volume Manager GUI or the metaset command to add a host to a disk set.

How to Add a Host to a Disk Set

Create Solaris Volume Manager volumes in a disk set 

Use the Solaris Volume Manager GUI or the metainit command to create volumes in a disk set.

How to Create Solaris Volume Manager Components in a Disk Set

Check the status of a disk set 

Use the Solaris Volume Manager GUI or the metaset and metastat commands to check the status of a disk set.

How to Check the Status of a Disk Set

Remove disks from a disk set 

Use the Solaris Volume Manager GUI or the metaset command to remove drives from a disk set.

How to Remove Disks from a Disk Set

Take a disk set 

Use the Solaris Volume Manager GUI or the metaset command to take a disk set.

How to Take a Disk Set

Release a disk set 

Use the Solaris Volume Manager GUI or the metaset command to release a disk set.

How to Release a Disk Set

Delete a host from a disk set 

Use the Solaris Volume Manager GUI or the metaset command to delete hosts from a disk set.

 

How to Delete a Host or Disk Set

Delete a disk set 

Use the Solaris Volume Manager GUI or the metaset command to delete the last host from a disk set, thus deleting the disk set.

How to Delete a Host or Disk Set

Creating Disk Sets

How to Create a Disk Set

  1. Check Background Information for Disk Sets.

  2. To create a disk set, use one of the following methods:

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

    • To create a disk set from scratch from the command line, use the following form of the metaset command:

      metaset [-s diskset-name] [-a] [-h hostname]
      -s diskset-name

      Specifies the name of a disk set on which the metaset command will work.

      -a

      Adds hosts to the named disk set. Solaris Volume Manager supports four hosts per disk set.

      -h hostname

      Specifies one or more hosts to be added to a disk set. Adding the first host creates the set. The second host can be added later, but it is not accepted if all the drives within the set cannot be found on the specified hostname. hostname is the same name found in the /etc/nodename file.

      See metaset(1M) for more information.

  3. Check the status of the new disk set by using the metaset command.


    # metaset
    

Example—Creating a Disk Set


# metaset -s blue -a -h lexicon              
# metaset
Set name = blue, Set number = 1

Host                Owner
  lexicon                

In this example, you create a shared disk set called blue, from the host lexicon. The metaset command shows the status. At this point, the set has no owner. The host that adds disks to the set will become the owner by default.

Expanding Disk Sets

How to Add Drives to a Disk Set

Only drives that meet the following conditions can be added to a disk set:

  1. Check Background Information for Disk Sets.

  2. To add drives to a disk set, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the Disk Sets node. Select the disk set you want to modify, then right-click and choose Properties. Select the Disks tab, click Add Disk, then follow the instructions in the wizard. For more information, see the online help.

    • To add drives to a disk set from the command line, use the following form of the metaset command:

      metaset [-s diskset-name] [a] [disk-name]
      -s diskset-name

      Specifies the name of a disk set on which the metaset command will work.

      -a

      Adds drives to the named disk set.

      disk-name

      Specifies the drives to add to the disk set. Drive names are in the form cxtxdx; no “sx” slice identifiers are at the end of the name. They need to be the same as seen from all hosts in the disk set.

      See the metaset man page (metaset(1M)) for more information.

    The first host to add a drive to a disk set becomes the owner of the disk set.


    Caution – Caution –

    Do not add a disk with data; the process of adding it to the disk set might repartition the disk, destroying any data. For more information, see Example—Two Shared Disk Sets.


  3. Use the metaset command to verify the status of the disk set and drives.


    # metaset
    

Caution – Caution –

Do not add disks larger than 1TB to disk sets if you expect to run the Solaris Operating Environment with a 32–bit kernel or if you expect to use a version of the Solaris Operating Environment prior to Solaris 9 4/03. See Overview of Solaris Volume Manager Large Volume Support for more information about large volume support in Solaris Volume Manager.


Example—Adding a Drive to a Disk Set


# metaset -s blue -a c1t6d0
# metaset
Set name = blue, Set number = 1

Host                Owner
  lexicon            Yes 

Drive               Dbase
  c1t6d0             Yes 

In this example, the host name is lexicon. The shared disk set is blue. At this point, only one disk has been added to the disk set blue.

Optionally, you could add multiple disks at once by listing each of them on the command line. For example, you could use the following:


# metaset -s blue -a c1t6d0 c2t6d0

How to Add a Host to a Disk Set

Solaris Volume Manager supports a maximum of four hosts per disk set. This procedure explains how to add another host to an existing disk set that only has one host.

  1. Check Background Information for Disk Sets.

  2. To add a host to a disk set, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the Disk Sets node and choose the disk set you want to modify. Select the disk set you want to modify, then right-click and choose Properties. Select the Hosts tab, click Add Host, then follow the instructions in the wizard. For more information, see the online help.

    • To add hosts to a disk set from the command line, use the following form of the metaset command:

      metaset [-s diskset-name] [-a] [-h hostname]
      -s diskset-name

      Specifies the name of a disk set on which metaset will work.

      -a

      Adds drives to the named disk set.

      -h hostname

      Specifies one or more host names to be added to the disk set. Adding the first host creates the set. The host name is the same name found in the /etc/nodename file.

      See the metaset man page (metaset(1M)) for more information.

  3. Verify that the host has been added to the disk set by using the metaset command without any options.


    # metaset
    

Example—Adding Another Host to a Disk Set


# metaset -s blue -a -h idiom
# metaset -s blue
Set name = blue, Set number = 1
 
Host                Owner
  lexicon                Yes
  idiom
 
Drive               Dbase
  c1t6d0             Yes 
  c2t6d0             Yes 

This example shows the addition of host idiom to the disk set blue.

How to Create Solaris Volume Manager Components in a Disk Set

After you create a disk set, you can create volumes and hot spare pools using the drives you added to the disk set. You can use either the Enhanced Storage tool within the Solaris Management Console or the command line utilities.

  1. To create volumes or other Solaris Volume Manager devices within a disk set, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the Volumes, State Database Replicas, or Hot Spare Pools node. Choose Action->Create, then follow the instructions in the wizard. For more information, see the online help.

    • Use the command line utilities with the same basic syntax you would without a disk set, but add -s diskset-name immediately after the command for every command.

Example—Creating Solaris Volume Manager Volumes in a Disk Set


# metainit -s blue d11 1 1 c1t6d0s0
blue/d11: Concat/Stripe is setup
# metainit -s blue d12 1 1 c2t6d0s0
blue/d12: Concat/Stripe is setup
# metainit -s blue d10 -m d11           
blue/d10: Mirror is setup
# metattach -s blue d10 d12
blue/d10: submirror blue/d12 is attached

# metastat -s blue
blue/d10: Mirror
    Submirror 0: blue/d11
      State: Okay         
    Submirror 1: blue/d12
      State: Resyncing    
    Resync in progress: 0 % done
    Pass: 1
    Read option: roundrobin (default)
    Write option: parallel (default)
    Size: 17674902 blocks

blue/d11: Submirror of blue/d10
    State: Okay         
    Size: 17674902 blocks
    Stripe 0:
        Device              Start Block  Dbase State        Reloc  Hot Spare
        c1t6d0s0                   0     No    Okay                


blue/d12: Submirror of blue/d10
    State: Resyncing    
    Size: 17674902 blocks
    Stripe 0:
        Device              Start Block  Dbase State        Reloc  Hot Spare
        c2t6d0s0                   0     No    Okay                

This example shows the creation of a mirror, d10, in disk set blue, that consists of submirrors (RAID 0 devices) d11 and d12.

Maintaining Disk Sets

How to Check the Status of a Disk Set

  1. Use one of the following methods to check the status of a disk set.

    • From the Enhanced Storage tool within the Solaris Management Console, open the Disk Sets node. Right-click the Disk Set you want to monitor, then choose Properties from the menu. For more information, see the online help.

    • Use the metaset command to view disk set status.

      See metaset(1M) for more information.


      Note –

      Disk set ownership is only shown on the owning host.


Example—Checking the Status of a Specified Disk Set


red# metaset -s blue


Set name = blue, Set number = 1

Host                Owner
  idiom             Yes 

Drive               Dbase
  c1t6d0             Yes 
  c2t6d0             Yes 

The metaset command with the -s option followed by the name of the blue disk set displays status information for that disk set. By issuing the metaset command from the owning host, idiom, it is determined that idiom is in fact the disk set owner. The metaset command also displays the drives in the disk set.

The metaset command by itself displays the status of all disk sets.

How to Remove Disks from a Disk Set

To delete a disk set, you must first delete all drives from the disk set.

  1. Verify that the disk has been deleted from the disk set by using the metaset -s diskset-name command.


    # metaset -s blue
    

Example—Deleting a Disk from a Disk Set


lexicon# metaset -s blue -d c1t6d0
lexicon# metaset -s blue
 
Set name = blue, Set number = 1

Host                Owner
  lexicon            
	idiom 

Drive               Dbase
  c2t6d0             Yes 
 

This example deletes the disk from the disk set blue.

How to Take a Disk Set

  1. Use one of the following methods to take a disk set.

    • From the Enhanced Storage tool within the Solaris Management Console, open the Disk Sets node. Right-click the Disk Set you want to take, then choose Take Ownership from the menu. For more information, see the online help.

    • Use the following form of the metaset command.


      metaset -s diskset-name-t
      
    -s diskset-name

    Specifies the name of a disk set on which the metaset command will work.

    -t

    Specifies to take the disk set.

    -f

    Specifies to take the disk set forcibly.

    See the metaset(1M) man page for more information.

    When one host in a disk set takes the disk set, the other host in the disk set cannot access data on drives in the disk set.

    The default behavior of the metaset command takes the disk set for your host only if a release is possible on the other host.

    Use the -f option to forcibly take the disk set. This option takes the disk set whether or not another host currently has the set. Use this method when a host in the disk set is down or not communicating. If the other host had the disk set taken at this point, it would panic when it attempts to perform an I/O operation to the disk set.


    Note –

    Disk set ownership is only shown on the owning host.


Example—Taking a Disk Set


lexicon# metaset
...
Set name = blue, Set number = 1
 
Host                Owner
  lexicon
  idiom
...
lexicon# metaset -s blue -t
lexicon# metaset
...
Set name = blue, Set number = 1
 
Host                Owner
  lexicon                Yes
  idiom
...

In this example, host lexicon communicates with host idiom and ensures that host idiom has released the disk set before host lexicon attempts to take the set.


Note –

In this example, if host idiom owned the set blue, the “Owner” column in the above output would still have been blank. The metaset command only shows whether the issuing host owns the disk set, and not the other host.


Example—Taking a Disk Set Forcibly


# metaset -s blue -t -f

In this example, the host that is taking the disk set does not communicate with the other host. Instead, the drives in the disk set are taken without warning. If the other host had the disk set, it would panic when it attempts an I/O operation to the disk set.

How to Release a Disk Set

Releasing a disk set is useful when you perform maintenance on the physical drives in the disk set. When a disk set is released, it cannot be accessed by the host. If both hosts in a disk set release the set, neither host in the disk set can access volumes or hot spare pools defined in the set directly, although if both hosts release the set, the hosts can access the disks directly through their c*t*d* names.

  1. Check Background Information for Disk Sets.

  2. Use one of the following methods to release a disk set.

    • From the Enhanced Storage tool within the Solaris Management Console, open the Disk Sets node. Right-click the Disk Set you want to release, then choose Release Ownership from the menu. For more information, see the online help.

    • To release ownership of the disk set, use the following form of the metaset command.


      metaset -s diskset-name-r
      

      -s diskset-name

      Specifies the name of a disk set on which the metaset command will work.

      -r

      Releases ownership of a disk set. The reservation of all the disks within the disk set is removed. The volumes within the disk set are no longer accessible.

      See the metaset(1M) man page for more information.


      Note –

      Disk set ownership is only shown on the owning host.


  3. Verify that the disk set has been released on this host by using the metaset command without any options.


    # metaset
    

Example—Releasing a Disk Set


lexicon# metaset -s blue -r
lexicon# metaset -s blue
 
Set name = blue, Set number = 1

Host                Owner
  lexicon            
	idiom 

Drive               Dbase
  c1t6d0             Yes 
  c2t6d0             Yes 
 

This example shows the release of the disk set blue. Note that there is no owner of the disk set. Viewing status from host lexicon could be misleading. A host can only determine if it does or does not own a disk set. For example, if host idiom were to reserve the disk set, it would not appear so from host lexicon. Only host idiom would be able to determine the reservation in this case.

How to Delete a Host or Disk Set

Deleting a disk set requires that the disk set contains no drives and that no other hosts are attached to the disk set. Deleting the last host will destroy the disk set.

  1. Use one of the following methods to delete a host from a disk set, or to delete a disk set.

    • From the Enhanced Storage tool within the Solaris Management Console, open the Disk Sets node. Right-click the Disk Set you want to release, then choose Delete from the menu. Follow the instructions in the online help.

    • To delete the host and remove the disk set if the host removed is the last host on the disk set, use the following form of the metaset command.


      metaset -s diskset-name-d hostname
      

      -s diskset-name

      Specifies the name of a disk set on which the metaset command will work.

      -d

      Deletes a host from a disk set.

      hostname

      Specifies the name of the host to delete.


      # metaset -s blue -d idiom
      

      See the metasetmetaset(1M) man page for more information.

  2. Verify that the host has been deleted from the disk set by using the metaset command. Note that only the current (owning) host is shown. Other hosts have been deleted.


    # metaset -s blue
    Set name = blue, Set number = 1
    
    Host                Owner
      lexicon            Yes 
    
    Drive               Dbase
      c1t2d0             Yes 
      c1t3d0             Yes 
      c1t4d0             Yes 
      c1t5d0             Yes 
      c1t6d0             Yes 
      c2t1d0             Yes

Example—Deleting the Last Host from a Disk Set


lexicon# metaset -s blue -d lexicon
lexicon# metaset -s blue
 
metaset: lexicon: setname "blue": no such set 

This example shows the deletion of the last host from the disk set blue.