Sun Cluster Software Installation Guide for Solaris OS

ProcedureHow to Mirror File Systems That Can Be Unmounted

Use this procedure to mirror user-defined file systems that can be unmounted. In this procedure, the nodes do not need to be rebooted.


Note –

This procedure provides the long forms of the Sun Cluster commands. Most commands also have short forms. Except for the forms of the command names, the commands are identical. For a list of the commands and their short forms, see Appendix A, Sun Cluster Object-Oriented Commands, in Sun Cluster System Administration Guide for Solaris OS.


  1. Become superuser.

  2. Unmount the file system to mirror.

    Ensure that no processes are running on the file system.


    phys-schost# umount /mount-point
    

    See the umount(1M) man page and Chapter 18, Mounting and Unmounting File Systems (Tasks), in System Administration Guide: Devices and File Systems for more information.

  3. Place in a single-slice (one-way) concatenation the slice that contains a user-defined file system that can be unmounted.

    Specify the physical disk name of the disk slice (cNtX dYsZ).


    phys-schost# metainit -f submirror1 1 1 diskslice
    
  4. Create a second concatenation.


    phys-schost# metainit submirror2 1 1 submirror-diskslice
    
  5. Create a one-way mirror with one submirror.


    phys-schost# metainit mirror -m submirror1
    

    Note –

    The volume name for this mirror does not need to be unique throughout the cluster.


  6. Repeat Step 1 through Step 5 for each mountable file system to be mirrored.

  7. On each node, edit the /etc/vfstab file entry for each file system you mirrored.

    Replace the names in the device to mount and device to fsck columns with the mirror name.


    phys-schost# vi /etc/vfstab
    #device        device        mount    FS     fsck    mount    mount
    #to mount      to fsck       point    type   pass    at boot  options
    #
    /dev/md/dsk/mirror /dev/md/rdsk/mirror /filesystem ufs 2 no global
  8. Attach the second submirror to the mirror.

    This attachment starts a synchronization of the submirrors.


    phys-schost# metattach mirror submirror2
    
  9. Wait for the synchronization of the mirrors, started in Step 8, to be completed.

    Use the metastat(1M) command to view mirror status.


    phys-schost# metastat mirror
    
  10. If the disk that is used to mirror the user-defined file system is physically connected to more than one node (multihosted), ensure that the device-group node list contains only one node and that the localonly property is enabled.

    Ensure that the device group meets the following requirements:

    • The raw-disk device group must have only one node configured in its node list.

    • The localonly property of the raw-disk device group must be enabled. The localonly property prevents unintentional fencing of a node from its boot device if the boot device is connected to multiple nodes.

    1. If necessary, use the cldevice command to determine the name of the raw-disk device group.


      phys-schost# cldevice show node:/dev/rdsk/cNtXdY
      

      Tip –

      If you issue the command from a node that is physically connected to the disk, you can specify the disk name as cNtXdY instead of by its full device path name.


      In the following example, the raw-disk device-group name dsk/d2 is part of the DID device name.


      === DID Device Instances ===                   
      
      DID Device Name:                                /dev/did/rdsk/d2
        Full Device Path:                               phys-schost-1:/dev/rdsk/c1t1d0
        Full Device Path:                               phys-schost-3:/dev/rdsk/c1t1d0
      …

      See the cldevice(1CL) man page for more information.

    2. View the node list of the raw-disk device group.


      phys-schost# cldevicegroup show dsk/dN
      

      Output looks similar to the following for the device group dsk/d2:


      Device Group Name:                              dsk/d2
      …
        Node List:                                      phys-schost-1, phys-schost-3
      …
        localonly:                                      false
    3. If the node list contains more than one node name, remove all nodes from the node list except the node whose root disk you mirrored.

      Only the node whose root disk you mirrored should remain in the node list for the raw-disk device group.


      phys-schost# cldevicegroup remove-node -n node devicegroup
      
      -n node

      Specifies the node to remove from the device-group node list.

    4. Enable the localonly property of the raw-disk device group, if it is not already enabled.

      When the localonly property is enabled, the raw-disk device group is used exclusively by the node in its node list. This usage prevents unintentional fencing of the node from its boot device if the boot device is connected to multiple nodes.


      phys-schost# cldevicegroup set -p localonly=true devicegroup
      
      -p

      Sets the value of a device-group property.

      localonly=true

      Enables the localonly property of the device group.

      For more information about the localonly property, see the cldevicegroup(1CL) man page.

  11. Mount the mirrored file system.


    phys-schost# mount /mount-point
    

    See the mount(1M) man page and Chapter 18, Mounting and Unmounting File Systems (Tasks), in System Administration Guide: Devices and File Systems for more information.


Example 4–5 Mirroring File Systems That Can Be Unmounted

The following example shows creation of mirror d4 to mirror /export, which resides on c0t0d0s4. Mirror d4 consists of submirror d14 on partition c0t0d0s4 and submirror d24 on partition c2t2d0s4. The /etc/vfstab file entry for /export is updated to use the mirror name d4. Device c2t2d0 is a multihost disk, so the localonly property is enabled.


phys-schost# umount /export
phys-schost# metainit -f d14 1 1 c0t0d0s4
d14: Concat/Stripe is setup
phys-schost# metainit d24 1 1 c2t2d0s4
d24: Concat/Stripe is setup
phys-schost# metainit d4 -m d14
d4: Mirror is setup
phys-schost# vi /etc/vfstab
#device        device        mount    FS     fsck    mount    mount
#to mount      to fsck       point    type   pass    at boot  options
#
# /dev/md/dsk/d4 /dev/md/rdsk/d4 /export ufs 2 no    global
phys-schost# metattach d4 d24
d4: Submirror d24 is attached
phys-schost# metastat d4
d4: Mirror
       Submirror 0: d14
          State: Okay
       Submirror 1: d24
          State: Resyncing
       Resync in progress: 15 % done
…
phys-schost# cldevice show phys-schost-3:/dev/rdsk/c2t2d0
…
DID Device Name:                                /dev/did/rdsk/d2
phys-schost# cldevicegroup show dsk/d2
Device Group Name:                              dsk/d2
…
  Node List:                                      phys-schost-1, phys-schost-2
…
  localonly:                                      false
phys-schost# cldevicegroup remove-node -n phys-schost-3 dsk/d2
phys-schost# cldevicegroup set -p localonly=true dsk/d2 
phys-schost# mount /export

Next Steps

If you need to create disk sets, go to one of the following:

If you have sufficient disk sets for your needs, go to one of the following:

Troubleshooting

Some of the steps in this mirroring procedure might cause an error message that is similar to metainit: dg-schost-1: d1s0: not a metadevice. Such an error message is harmless and can be ignored.