Symantec logo

Upgrading existing volumes to use Veritas Volume Manager 5.0

The procedure described in this section describes how to upgrade a volume created using a version older than VxVM 5.0 so that it can take advantage of database FlashSnap.


  Note   The plexes of the DCO volume require persistent storage space on disk to be available. To make room for the DCO plexes, you may need to add extra disks to the disk group, or reconfigure existing volumes to free up space in the disk group. Another way to add disk space is to use the disk group move feature to bring in spare disks from a different disk group.



  Note   Existing snapshot volumes created by the vxassist command are not supported. A combination of snapshot volumes created by vxassist and vxsnap are not supported.


 To upgrade an existing volume created with an earlier version of VxVM

  1. Upgrade the disk group that contains the volume, to a version 120 or higher, before performing the remainder of the procedure described in this section. Use the following command to check the version of a disk group:

    # vxdg list diskgroup

    To upgrade a disk group to the latest version, use the following command:

    # vxdg upgrade diskgroup

  2. If the volume to be upgraded has a DRL plex or subdisk from an earlier version of VxVM, use the following command to remove this:

    # vxassist [-g diskgroup] remove log volume [nlog=n]

    Use the optional attribute nlog=n to specify the number, n, of logs to be removed. By default, the vxassist command removes one log.

  3. For a volume that has one or more associated snapshot volumes, use the following command to reattach and resynchronize each snapshot:

    # vxsnap [-g diskgroup] snapback snapvol

    If persistent FastResync was enabled on the volume before the snapshot was taken, the data in the snapshot plexes is quickly resynchronized from the original volume. If persistent FastResync was not enabled, a full resynchronization is performed.

  4. Use the following command to turn off persistent FastResync for the volume:

    # vxvol [-g diskgroup] set fastresync=off volume

  5. Use the following command to dissociate a DCO object from an earlier version of VxVM, DCO volume and snap objects from the volume:

    # vxassist [-g diskgroup] remove log volume logtype=dco

  6. Use the following command on the volume to upgrade it:

    # vxsnap [-g diskgroup] prepare volume

    alloc="disk_name1,disk_name2"

    Provide two disk names to avoid overlapping the storage of the snapshot DCO plex with any other non-moving data or DCO plexes.


      Note   The vxsnap prepare command automatically enables persistent FastResync on the volume and on any snapshots that are generated from it. It also associates a DCO and DCO log volume with the volume to be snapshot.


  7. To view the existing DCO plexes and see whether there are enough for the existing data plexes, enter:

    # vxprint -g diskgroup

    There needs to be one DCO plex for each existing data plex.

  8. If there are not enough DCO plexes for the existing data plexes, create more DCO plexes:

    # vxsnap [-g diskgroup] addmir dco_volume_name
    [alloc=disk_name]

    where dco_volume_name is the name of the DCO volume you are creating.

  9. If the plex is in a SNAPDONE state, convert it to an ACTIVE state:

    # vxplex [-g diskgroup] convert state=ACTIVE data_plex

  10. Convert the data plexes to a SNAPDONE state and associate a DCO plex with the data plex that will be used for snapshot operations:

    # vxplex [-g diskgroup] -o dcoplex=dco_plex_name convert \
    state=SNAPDONE data_plex

    where dco_plex_name is the name of the DCO plex you are creating.

In this example, the volume, data_vol, is upgraded to make use of VxVM 5.0 features.

Upgrade the disk group, PRODdg.

# vxdg upgrade PRODdg

Remove the DRL plexes or subdisks, belonging to an earlier version of VxVM, from the volume to be upgraded.

# vxassist -g PRODdg remove log data_vol logtype=drl

Reattach any snapshot volume back to the primary volume to be upgraded.

# vxsnap -g PRODdg snapback SNAP-data_vol

Turn off FastResync on the volume to be upgraded.

# vxvol -g PRODdg set fastresync=off data_vol

Disassociate and remove any older DCO object and DCO volumes.

# vxassist -g PRODdg remove log data_vol logtype=dco

Upgrade the volume by associating a new DCO object and DCO volume.

# vxsnap -g PRODdg prepare data_vol alloc="PRODdg01 PRODdg02"

View the existing DCO plexes and plex state.

Scenario 1

In this scenario, there are enough DCO plexes for the data plexes. Also, no data plex is associated with a DCO plex.

# vxprint -g PRODdg

TY NAME ASSOC KSTATE LENGTH PLOFFS STATE TUTIL0 PUTIL0

dg PRODdg PRODdg - - - - - -

dm PRODdg01 c1t2d0s2 - 35358848 - - - -

dm PRODdg02 c1t3d0s2 - 17674896 - - - -

dm PRODdg03 c1t1d0s2 - 17674896 - - - -

v data_vol fsgen ENABLED 4194304 - ACTIVE - -

pl data_vol-01 data_vol ENABLED 4194304 - ACTIVE - -

sd PRODdg01-01 data_vol-01 ENABLED 4194304 0 - - -

pl data_vol-04 data_vol ENABLED 4194304 - SNAPDONE - -

sd PRODdg02-03 data_vol-04 ENABLED 4194304 0 - - -

dc data_vol_dco data_vol - - - - - -

v data_vol_dcl gen ENABLED 560 - ACTIVE - -

pl data_vol_dcl-01 data_vol_dcl ENABLED 560 - ACTIVE - -

sd PRODdg01-02 data_vol_dcl-01 ENABLED 560 0 - - -

pl data_vol_dcl-02 data_vol_dcl ENABLED 560 - ACTIVE - -

sd PRODdg02-02 data_vol_dcl-02 ENABLED 560 0 - - -

Convert the data plex state from SNAPDONE to ACTIVE.

# vxplex -g PRODdg convert state=ACTIVE data_vol-04

Associate the data plex with a new DCO plex and convert it back to a SNAPDONE state.

# vxplex -g PRODdg -o dcoplex=data_vol_dcl-02 convert state=SNAPDONE data_vol-04

# vxprint -g PRODdg

TY NAME ASSOC KSTATE LENGTH PLOFFS STATE TUTIL0 PUTIL0

dg PRODdg PRODdg - - - - - -

dm PRODdg01 c1t2d0s2 - 35358848 - - - -

dm PRODdg02 c1t3d0s2 - 17674896 - - - -

dm PRODdg03 c1t1d0s2 - 17674896 - - - -

pl data_vol-03 - DISABLED 4194304 - - - -

sd PRODdg02-01 data_vol-03 ENABLED 4194304 0 - - -

v data_vol fsgen ENABLED 4194304 - ACTIVE - -

pl data_vol-01 data_vol ENABLED 4194304 - ACTIVE - -

sd PRODdg01-01 data_vol-01 ENABLED 4194304 0 - - -

pl data_vol-04 data_vol ENABLED 4194304 - SNAPDONE - -

sd PRODdg02-03 data_vol-04 ENABLED 4194304 0 - - -

dc data_vol_dco data_vol - - - - - -

v data_vol_dcl gen ENABLED 560 - ACTIVE - -

pl data_vol_dcl-01 data_vol_dcl ENABLED 560 - ACTIVE - -

sd PRODdg01-02 data_vol_dcl-01 ENABLED 560 0 - - -

pl data_vol_dcl-02 data_vol_dcl DISABLED 560 - DCOSNP - -

sd PRODdg02-02 data_vol_dcl-02 ENABLED 560 0 - - -

Scenario 2

In this scenario, there are fewer DCO plexes than data plexes.

# vxprint -g PRODdg

TY NAME ASSOC KSTATE LENGTH PLOFFS STATE TUTIL0 PUTIL0

dg PRODdg PRODdg - - - - - -

dm PRODdg01 c1t2d0s2 - 35358848 - - - -

dm PRODdg02 c1t3d0s2 - 17674896 - - - -

dm PRODdg03 c1t1d0s2 - 17674896 - - - -

pl data_vol-03 - DISABLED 4194304 - - - -

sd PRODdg02-01 data_vol-03 ENABLED 4194304 0 - - -

v data_vol fsgen ENABLED 4194304 - ACTIVE - -

pl data_vol-01 data_vol ENABLED 4194304 - ACTIVE - -

sd PRODdg01-01 data_vol-01 ENABLED 4194304 0 - - -

pl data_vol-04 data_vol ENABLED 4194304 - ACTIVE - -

sd PRODdg02-03 data_vol-04 ENABLED 4194304 0 - - -

dc data_vol_dco data_vol - - - - - -

v data_vol_dcl gen ENABLED 560 - ACTIVE - -

pl data_vol_dcl-01 data_vol_dcl ENABLED 560 - ACTIVE - -

sd PRODdg01-02 data_vol_dcl-01 ENABLED 560 0 - - -

Add a DCO plex to the DCO volume using the vxassist mirror command.

# vxsnap -g PRODdg addmir data_vol_dcl alloc=PRODdg02

Associate the data plex with the new DCO plex and convert it to a SNAPDONE state.

# vxplex -g PRODdg -o dcoplex=data_vol_dcl-02 convert state=SNAPDONE data_vol-04

# vxprint -g PRODdg

TY NAME ASSOC KSTATE LENGTH PLOFFS STATE TUTIL0 PUTIL0

dg PRODdg PRODdg - - - - - -

dm PRODdg01 c1t2d0s2 - 35358848 - - - -

dm PRODdg02 c1t3d0s2 - 17674896 - - - -

dm PRODdg03 c1t1d0s2 - 17674896 - - - -

pl data_vol-03 - DISABLED 4194304 - - - -

v data_vol fsgen ENABLED 4194304 - ACTIVE - -

pl data_vol-01 data_vol ENABLED 4194304 - ACTIVE - -

sd PRODdg01-01 data_vol-01 ENABLED 4194304 0 - - -

pl data_vol-04 data_vol ENABLED 4194304 - SNAPDONE - -

sd PRODdg02-03 data_vol-04 ENABLED 4194304 0 - - -

dc data_vol_dco data_vol - - - - - -

v data_vol_dcl gen ENABLED 560 - ACTIVE - -

pl data_vol_dcl-01 data_vol_dcl ENABLED 560 - ACTIVE - -

sd PRODdg01-02 data_vol_dcl-01 ENABLED 560 0 - - -

pl data_vol_dcl-02 data_vol_dcl DISABLED 560 - DCOSNP - -

sd PRODdg02-02 data_vol_dcl-02 ENABLED 560 0 - - -