Symantec logo

Incrementally synchronizing the Secondary after SRL overflow

The default protection mode for the SRL is autodcm and every volume in the RVG must have a DCM. When the SRL fills up, whether the RLINK is connected or not, DCM logging is activated and a bit corresponding to the region of the update is turned on for every incoming update. When you are ready to replay the DCM, start the DCM resynchronization process. To start the resynchronization, use the command vradmin resync. Note that you can also use the cache or cachesize parameters with the vradmin resync command. Specifying these attributes will cause the command to first create a space-optimized snapshot of the Secondary data volumes before starting the resynchronization. If the RVG on the Secondary has VxVM ISP volumes, then you cannot use the cachesize attribute. Data is transmitted to the Secondaries only after all the RLINKs taking part in the resynchronization have connected. All the Secondaries taking part in the resynchronization must remain connected for the resynchronization to continue. The resynchronization will pause if any of the Secondary RLINK is paused.

During DCM resynchronization, VVR does not maintain the order of updates to the Secondary. As a result, the Secondary remains inconsistent until the resynchronization operation is complete. Note that if the Primary becomes unavailable during the time the resynchronization is taking place, the applications cannot be restarted on the Secondary.

If the Secondary volumes are mirrored, you can break off mirrors to retain consistent (though out-of-date) copies of data until the resynchronization is complete. However, to overcome this problem, create snapshots of the Secondary volumes before the resynchronization starts by using the following commands:

  1. Create the cache object for the data volumes. For more information, refer to the section Preparing the RVG volumes for snapshot operation. This step is optional if you plan to use the cachesize attribute with vradmin resync command.
  2. To start the resynchronization use the command:

    # vradmin -g diskgroup [-wait] resync local_rvgname \
    [cache=cacheobj | cachesize=size]

    The cache attribute specifies a name for the precreated cache object, on which the snapshots for the volumes in the specified RVG will be created. The cachesize attribute specifies a default size for the cache object with respect to the source volume. You can specify only one of these attributes at one time with the vradmin resync to create one cache object for each snapshot

    The parameters cache and cachesize are optional. If you do not specify either of these parameters then the vradmin resync command will resynchronize the Secondary volumes using the DCM replay, without creating the snapshots.

    The -wait option can be used with the vradmin resync command to wait for the synchronization process to complete.


SRL overflow protection with DCM—flags and definitions

If the SRL Overflow Protection With DCM feature has been activated, VVR sets the following flag on the corresponding RLINK and its RVG:

Flag Value

Definition

dcm_logging 

Log Overflow Protection With DCM has been started and the DCM is in use. 

If the dcm_logging flag is set on an RLINK or RVG and neither the resync_started nor the resync_paused flag is set, the resynchronization (resync) has not been started. After the vradmin resync command has been issued, one or both of the following flags are set:

Flag Value

Definition

resync_started 

Resynchronization is in progress, that is, data is being transferred from the Primary to the Secondary. 

resync_paused 

Resynchronization is paused. 


Prerequisite for incrementally resynchronizing the secondary

  The RVG must have the dcm_logging flag set.

 To incrementally resynchronize the Secondary

# vradmin -g diskgroup resync local_rvgname

The argument local_rvgname is the name of the RVG on the local host and represents its RDS.

Example:

# vradmin -g hrdg resync hr_rvg

 To determine the progress of the incremental synchronization

Determine the progress of the incremental synchronization after SRL overflow by issuing the following command on the Primary host:

# vxrlink -g diskgroup status rlink_name

The argument rlink_name is the name of the Primary RLINK to the Secondary.

The output shows how much data is left to send. To monitor the progress, issue the
vxrlink -i interval status rlink_name command. For example, to see the status every 5 seconds, issue the following command:

# vxrlink -g hrdg -i5 status rlink_name

The output resembles:

VxVM VVR vxrlink INFO V-5-1-4464 Rlink rlink_name is in AUTOSYNC.

100864K remaining.

VxVM VVR vxrlink INFO V-5-1-4464 Rlink rlink_name is in AUTOSYNC.

94464K remaining.

VxVM VVR vxrlink INFO V-5-1-4464 Rlink rlink_name is in AUTOSYNC.

76800K remaining.

Breaking off mirrors before incremental synchronization

During DCM resynchronization, the data volumes on the Secondary are inconsistent and cannot be used to take over the Primary role. To maintain a consistent copy of the data volumes on the Secondary, break off a mirror from each data volume before starting DCM resynchronization. In the case of a disaster, these mirrors can be used to take over the Primary role. If you have FastResync license, make sure FR is set for all the volumes.

When snapshot plexes are available:

To find out if snapshot plexes are available on a data volume, use the vxprint command. The output shows the state of the plex as snapdone. If a snapshot plex is available for each data volume, use the vxrvg snapshot command to take a snapshot of the data volumes in an RVG. If required, the snapshot volumes can be used to take over the Primary role. After the DCM resynchronization is complete, reattach the snapshot plexes back to the original volume using the vxrvg snapback command.

When snapshot plexes are not available:

If snapshot plexes are not available, detach mirrors on each of the data volumes on the Secondary using the vxplex command. After the DCM resynchronization is complete, reattach the plexes using the vxplex att command. To use the data on a detached plex in situations such as takeover, you must create a volume for the detached plex when snapshot plexes are not available.

Example 1—When snapshot plexes are not available

This example explains how to break off a mirror from a data volume and reattach a plex after the DCM resynchronization is complete. This example uses the volume hr_dv01 that has two plexes hr_dv01_01and hr_dv01_02.

  1. On the Secondary, detach a plex from the data volume by typing:

    # vxplex -g hrdg det hr_dv01_02

  2. When the RLINK reconnects, incrementally synchronize the Secondary by typing:

    # vradmin -g hrdg resync hr_rvg

    For multiple Secondary hosts, VVR simultaneously synchronizes all Secondary hosts that are operating in dcm logging mode.

  3. After the DCM resynchronization is complete, reattach the plex to the data volume on the Secondary by typing:

    # vxplex -g hrdg att hr_dv01 hr_dv01_02

Example 2—When snapshot plexes are not available and a disaster occurs

If during the resynchronization process, a disaster occurs and the Secondary takes over, you can recreate the volumes as they were before the resynchronization started. The example uses the RVG hr_rvg and the volume hr_dv01 as in Example 1—When snapshot plexes are not available. All steps are performed on the former Secondary, which is now the Primary (to take over the Primary role, see Taking over from an original Primary).

  1. Detach the Secondary RLINK.

    # vxrlink -g hrdg det rsec

  2. Dissociate the original data volume from the Secondary RVG.

    # vxvol -g hrdg dis hr_dv01

  3. Remove the original data volume.

    # vxedit -g hrdg -rf rm hr_dv01

  4. Create the volume for the detached plex by typing:

    # vxmake -g hrdg -U usetype vol hr_dv01 plex=hr_dv01_02

    If a volume contains a file system, specify the usetype as fsgen; otherwise, specify gen.

  5. Start the data volume by typing:

    # vxvol -g hrdg -f start hr_dv01

  6. Associate the data volume to its RVG.

    # vxvol -g hrdg assoc hr_rvg hr_dv01

  7. The volume is no longer mirrored. To add mirrors, issue the following command:

    # vxassist -g hrdg mirror hr_dv01


Notes on using incremental synchronization on SRL overflow