Solaris Volume Manager Administration Guide

Chapter 7 State Database (Tasks)

This chapter provides information about performing tasks that are associated with Solaris Volume Manager's state database replicas. For information about the concepts involved in these tasks, see Chapter 6, State Database (Overview).

State Database Replicas (Task Map)

The following task map identifies the procedures that are needed to manage Solaris Volume Manager state database replicas.

Task 

Description 

For Instructions 

Create state database replicas 

Use the Solaris Volume Manager GUI or the metadb -a command to create state database replicas.

How to Create State Database Replicas

Check the status of state database replicas 

Use the Solaris Volume Manager GUI or the metadb command to check the status of existing replicas.

How to Check the Status of State Database Replicas

Delete state database replicas 

Use the Solaris Volume Manager GUI or the metadb -d command to delete state database replicas.

How to Delete State Database Replicas

Creating State Database Replicas


Caution – Caution –

If you upgraded from the Solstice DiskSuite product to Solaris Volume Manager and you have state database replicas sharing slices with file systems or logical volumes (as opposed to on separate slices), do not delete existing replicas and replace them with new default replicas in the same location.

The default state database replica size in Solaris Volume Manager is 8192 blocks, while the default size in the Solstice DiskSuite product is 1034 blocks. Use caution if you delete a default-sized state database replica created in the Solstice DiskSuite product, and then add a new default-sized replica with Solaris Volume Manager. You will overwrite the first 7158 blocks of any file system that occupies the rest of the shared slice, thus destroying the data.



Caution – Caution –

Do not place state database replicas on fabric-attached storage, SANs, or other storage that is not directly attached to the system. You might not be able to boot Solaris Volume Manager. Replicas must be on storage devices that are available at the same point in the boot process as traditional SCSI or IDE drives.


ProcedureHow to Create State Database Replicas

Before You Begin

Check Prerequisites for Creating Solaris Volume Manager Components.

Steps
  1. Become superuser.

  2. To create state database replicas, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the State Database Replicas node. Choose Action⇒Create Replicas and follow the onscreen instructions. For more information, see the online help.

    • Use the following form of the metadb command. See the metadb(1M).


      # metadb  -a -c number -l length-of replica -f ctds-of-slice
      
      -a

      Specifies to add or create a state database replica.

      -f

      Specifies to force the operation, even if no replicas exist. Use the -f to force the creation of the initial replicas.

      -c number

      Specifies the number of replicas to add to the specified slice.

      -l length-of-replica

      Specifies the size of the new replicas, in blocks. The default size is 8192. This size should be appropriate for virtually all configurations, including those configurations with thousands of logical volumes.

      ctds-of-slice

      Specifies the name of the component that will hold the replica.


    Note –

    The metadb command entered on the command line without options reports the status of all state database replicas.



Example 7–1 Creating the First State Database Replica


# metadb -a -f c0t0d0s7
# metadb
        flags         first blk      block count
...
     a      u         16             8192            /dev/dsk/c0t0d0s7

You must use the -f option along with the -a option to create the first state database replica. The -a option adds state database replicas to the system.The -f option forces the creation of the first replica (and may be omitted when you add supplemental replicas to the system).



Example 7–2 Adding Two State Database Replicas to the Same Slice


# metadb -a -c 2 c1t3d0s1
# metadb
        flags         first blk      block count
...
     a        u         16              8192            /dev/dsk/c1t3d0s1
     a        u         8208            8192            /dev/dsk/c1t3d0s1

The -a option adds state database replicas to the system. The -c 2 option places two replicas on the specified slice. The metadb command checks that the replicas are active, as indicated by the a flag in the metadb command output.



Example 7–3 Adding State Database Replicas of a Specific Size

If you are replacing existing state database replicas, you might need to specify a replica size. Particularly if you have existing state database replicas (on a system upgraded from the Solstice DiskSuite product, perhaps) that share a slice with a file system, you must replace existing replicas with other replicas of the same size or add new replicas in a different location.


# metadb -a -c 3 -l 1034 c0t0d0s7
# metadb
        flags         first blk      block count
...
     a      u         16             1034            /dev/dsk/c0t0d0s7
     a      u         1050           1034            /dev/dsk/c0t0d0s7
     a      u         2084           1034            /dev/dsk/c0t0d0s7

The -a option adds state database replicas to the system. The -l option specifies the length in blocks of the replica to add.


Maintaining State Database Replicas

ProcedureHow to Check the Status of State Database Replicas

Steps
  1. Become superuser.

  2. To check the status of state database replicas, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the State Database Replicas node to view all existing state database replicas. For more information, see the online help.

    • Use the metadb command to view the status of state database replicas. Add the -i option to display an explanation of the status flags, as shown in the following example. See the metadb(1M).


Example 7–4 Checking the Status of All State Database Replicas


# metadb -i
        flags           first blk       block count
     a m  p  luo        16              8192            /dev/dsk/c0t0d0s7
     a    p  luo        8208            8192            /dev/dsk/c0t0d0s7
     a    p  luo        16400           8192            /dev/dsk/c0t0d0s7
     a    p  luo        16              8192            /dev/dsk/c1t3d0s1
      W   p  l          16              8192            /dev/dsk/c2t3d0s1
     a    p  luo        16              8192            /dev/dsk/c1t1d0s3
     a    p  luo        8208            8192            /dev/dsk/c1t1d0s3
     a    p  luo        16400           8192            /dev/dsk/c1t1d0s3
 r - replica does not have device relocation information
 o - replica active prior to last mddb configuration change
 u - replica is up to date
 l - locator for this replica was read successfully
 c - replica's location was in /etc/lvm/mddb.cf
 p - replica's location was patched in kernel
 m - replica is master, this is replica selected as input
 W - replica has device write errors
 a - replica is active, commits are occurring to this replica
 M - replica had problem with master blocks
 D - replica had problem with data blocks
 F - replica had format problems
 S - replica is too small to hold current data base
 R - replica had device read errors

A legend of all the flags follows the status. The characters in front of the device name represent the status. Uppercase letters indicate a problem status. Lowercase letters indicate an “Okay” status.


ProcedureHow to Delete State Database Replicas

You might need to delete state database replicas to maintain your Solaris Volume Manager configuration. For example, if you will be replacing disk drives, you want to delete the state database replicas before you remove the drives. Otherwise Solaris Volume Manager will report them as having errors.

Steps
  1. Become superuser.

  2. To remove state database replicas, use one of the following methods:

    • From the Enhanced Storage tool within the Solaris Management Console, open the State Database Replicas node to view all existing state database replicas. Select replicas to delete, then choose Edit⇒Delete to remove them. For more information, see the online help.

    • Use the following form of the metadb command:


      # metadb -d -f ctds-of-slice
      
      -d

      Specifies to delete a state database replica.

      -f

      Specifies to force the operation, even if no replicas exist.

      ctds-of-slice

      Specifies the name of the component that contains the replica.

      Note that you need to specify each slice from which you want to remove the state database replica. See the metadb(1M) man page for more information.


Example 7–5 Deleting State Database Replicas


# metadb -d -f c0t0d0s7

This example shows the last replica being deleted from a slice.

You must add the -f option to force the deletion of the last replica on the system.