How to failback following a SRDF failover event when using Veritas Volume Manager and DMP

book

Article ID: 100037832

calendar_today

Updated On:

Description

Description

 

 

 

This document attempts to explain the steps required to failback the EMC SRDF role following a SRDF failover event when using Veritas Volume Manager (VxVM) and DMP.

EMC SRDF logically pairs a device or a group of devices from each array and replicates data from one to the other synchronously or asynchronously. An established pair of devices can be split, so that separate hosts can access the same data independently (maybe for backup), and then resynchronized.

In this instance, the configuration consists of "4" EMC SRDF "R1" devices presented to production server "Dopey" from EMC Symmetrix id (SID) "822".
An additional "4" EMC SRDF "R2" devices have been presented to DR server "Bashful" from EMC Symmetrix ID (SID) "414".


During the SRDF failover operation the R1 devices are write-disabled, the SRDF link is set to Not-Ready (NR), then the R2 devices are write-enabled.

During the SRDF failback operation the R2 devices are write-disabled, the SRDF link is suspended, the disk tracks are then merged, the SRDF link is resumed, then the R1 devices are write-enabled.

In synchronous mode (SRDF/S), the primary array waits until the secondary array has acknowledged each write before the next write is accepted, ensuring that the replicated copy of the data is always as current as the primary. However, the latency due to propagation increases significantly with distance.

In asynchronous mode (SRDF/A) transfers the changes to the secondary array in units called delta sets, which are transferred at defined intervals. Although the remote copy of the data will never be as current as the primary copy, this method can replicate data over considerable distances and with reduced bandwidth requirements and mimimal impact on host performance.


Figure 1.0



 

 

 

 

Note: As of 5.0 MP3 onwards, the VxVM CLI command "vxdisk -e list" is capable of reporting the extended attribute based content for EMC BCV, BCV-NR, MIRROR, SRDF-R1, SRDF-R2, TDEV device states and EMC lun types.


Example


In this instance, the local EMC SYMDEVs are 008C, 008D, 008E and 008F. The remote EMC SYMDEVs are 0072, 0073, 0074 and 0075


The local VxVM Diskgroup named "DopeyDg", consists of four disks replicated to the remote host "Bashful".


1.] The VxVM disks at the local site (Dopey in this instance) are write-disabled.


Local:


Dopey # vxdisk -eo alldgs list | grep DopeyDg
emc0_008c    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E580d266s2 srdf-r1
emc0_008d    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E5A0d223s2 srdf-r1
emc0_008e    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E5A0d229s2 srdf-r1
emc0_008f    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E580d269s2 srdf-r1



2.] The VxVM disks at the remote site (Bashful in this instance) are write-enabled at this time, following the recent SRDF "failover" event.


Remote:



Bashful # vxdisk -eo alldgs list | grep -w DopeyDg
emc1_0072    auto:cdsdisk   r1-008C      DopeyDg     online               c1t5006048C536979A0d65s2 srdf-r2
emc1_0073    auto:cdsdisk   r1-008D      DopeyDg     online               c1t5006048C536979A0d66s2 srdf-r2
emc1_0074    auto:cdsdisk   r1-008E      DopeyDg     online               c1t5006048C536979A0d67s2 srdf-r2
emc1_0075    auto:cdsdisk   r1-008f      DopeyDg     online               c1t5006048C536979A0d68s2 srdf-r2


3.] Prior to performing the SRDF failback operation, umount the related filesystem(s) and deport the VxVM Diskgroup at the remote site, in this instance the remote server is "Dopey".


Note: Prior to the failover attempt, the filesystem at the local site contained the files, "host" and "vfstab".

Dopey # ls /vol01
hosts       lost+found  vfstab


In this instance to validate the resync of the R2 disk tracks back to the R1 devices, an additional file is created on the remote server.


Remote:



Bashful # cp /etc/nsswitch.conf /vol01

Bashful # ls /vol01

hosts          lost+found     nsswitch.conf  vfstab


Bashful # umount /vol01

Bashful # vxdg deport DopeyDg

Bashful # vxdisk -eo alldgs list | grep -w DopeyDg

emc1_0072    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d65s2 srdf-r2
emc1_0073    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d66s2 srdf-r2
emc1_0074    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d67s2 srdf-r2
emc1_0075    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d68s2 srdf-r2


4.] The current SRDF replicated state is shown as "Failed Over" at the remote site.


Remote:


Bashful # symrdf -g DopeyDg query


Device Group (DG) Name             : DopeyDg
DG's Type                          : RDF2
DG's Symmetrix ID                  : 000290301414    (Microcode Version: 5773)
Remote Symmetrix ID                : 000290300822    (Microcode Version: 5773)
RDF (RA) Group Number              :  11 (0A)


       Target (R2) View                 Source (R1) View     MODES
--------------------------------    ------------------------ ----- ------------
             ST                  LI      ST
Standard      A                   N       A
Logical       T  R1 Inv   R2 Inv  K       T  R1 Inv   R2 Inv       RDF Pair
Device  Dev   E  Tracks   Tracks  S Dev   E  Tracks   Tracks MDA   STATE
-------------------------------- -- ------------------------ ----- ------------

DEV072  0072 RW     440        0 NR 008C WD       0        0 S..   Failed Over
DEV073  0073 RW     435        0 NR 008D WD       0        0 S..   Failed Over
DEV074  0074 RW      61        0 NR 008E WD       0        0 S..   Failed Over
DEV075  0075 RW     435        0 NR 008F WD       0        0 S..   Failed Over

Total          -------- --------           -------- --------
  Track(s)         1371        0                  0        0
  MB(s)            85.7      0.0                0.0      0.0

Legend for MODES:

 M(ode of Operation): A = Async, S = Sync, E = Semi-sync, C = Adaptive Copy
 D(omino)           : X = Enabled, . = Disabled
 A(daptive Copy)    : D = Disk Mode, W = WP Mode, . = ACp off


5.] To failback the SRDF roles, use "symrdf failback"


Remote:



Bashful # symrdf -g DopeyDg failback

Execute an RDF 'Failback' operation for device group 'DopeyDg' (y/[n]) ? y

An RDF 'Failback' operation execution is
in progress for device group 'DopeyDg'. Please wait...

    Write Disable device(s) on RA at target (R2)..............Done.
    Suspend RDF link(s).......................................Done.
    Merge device track tables between source and target.......Started.
    Devices: 008C-008F in (1414,011)......................... Merged.
    Merge device track tables between source and target.......Done.
    Resume RDF link(s)........................................Started.
    Resume RDF link(s)........................................Done.
    Read/Write Enable device(s) on SA at source (R1)..........Done.

The RDF 'Failback' operation successfully executed for device group 'DopeyDg'.


After some time, the replicated SRDF state will be shown as "Synchronized".


Bashful # symrdf -g DopeyDg query


Device Group (DG) Name             : DopeyDg
DG's Type                          : RDF2
DG's Symmetrix ID                  : 000290301414    (Microcode Version: 5773)
Remote Symmetrix ID                : 000290300822    (Microcode Version: 5773)
RDF (RA) Group Number              :  11 (0A)


       Target (R2) View                 Source (R1) View     MODES
--------------------------------    ------------------------ ----- ------------
             ST                  LI      ST
Standard      A                   N       A
Logical       T  R1 Inv   R2 Inv  K       T  R1 Inv   R2 Inv       RDF Pair
Device  Dev   E  Tracks   Tracks  S Dev   E  Tracks   Tracks MDA   STATE
-------------------------------- -- ------------------------ ----- ------------

DEV072  0072 WD       0        0 RW 008C RW       0        0 S..   Synchronized
DEV073  0073 WD       0        0 RW 008D RW       0        0 S..   Synchronized
DEV074  0074 WD       0        0 RW 008E RW       0        0 S..   Synchronized
DEV075  0075 WD       0        0 RW 008F RW       0        0 S..   Synchronized

Total          -------- --------           -------- --------
  Track(s)            0        0                  0        0
  MB(s)             0.0      0.0                0.0      0.0

Legend for MODES:

 M(ode of Operation): A = Async, S = Sync, E = Semi-sync, C = Adaptive Copy
 D(omino)           : X = Enabled, . = Disabled
 A(daptive Copy)    : D = Disk Mode, W = WP Mode, . = ACp off


Note: The R2 devices have now been write-disabled. The R1 devices are now write-enabled.



6.] Refresh the VxVM content on both servers.


Remote:

Bashful # vxdisk scandisks

Bashful # vxdisk -eo alldgs list | grep -w DopeyDg

emc1_0072    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d65s2 srdf-r2
emc1_0073    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d66s2 srdf-r2
emc1_0074    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d67s2 srdf-r2
emc1_0075    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C536979A0d68s2 srdf-r2


Local:



Dopey # vxdisk scandisks

Dopey # vxdisk -eo alldgs list | grep DopeyDg

emc0_008c    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E580d266s2 srdf-r1
emc0_008d    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E5A0d223s2 srdf-r1
emc0_008e    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E5A0d229s2 srdf-r1
emc0_008f    auto:cdsdisk   -            (DopeyDg)   online               c1t5006048C5368E580d269s2 srdf-r1


7.] Import the VxVM DiskGroup on the local server.


Local:


a.] Import the diskgroup


Dopey # vxdg import DopeyDg

Dopey # vxprint -qhtg DopeyDg

dg DopeyDg      default      default  36000    1298306534.57.Dopey
dm r1-008C      emc0_008c    auto     65536    4058368  -
dm r1-008D      emc0_008d    auto     65536    4058368  -
dm r1-008E      emc0_008e    auto     65536    4058368  -
dm r1-008f      emc0_008f    auto     65536    4058368  -

v  vol01        -            DISABLED ACTIVE   2097152  SELECT    -        fsgen
pl vol01-01     vol01        DISABLED ACTIVE   2097152  CONCAT    -        RW
sd r1-008C-01   vol01-01     r1-008C  0        2097152  0         emc0_008c ENA


b.] Recover the VxVM in the DiskGroup "DopeyDg"


Dopey # vxrecover -g DopeyDg -bs


c.] Mount the filesystem for the volume "vol01" in "DopeyDg".


Dopey # mount -F vxfs /dev/vx/dsk/DopeyDg/vol01 /vol01


d.] Validate that the dummy (test) file created on the remote server, is visible on the local server.


Dopey # ls /vol01

hosts          lost+found     nsswitch.conf  vfstab


Process complete.

 

Issue/Introduction

How to failback following a SRDF failover event when using Veritas Volume Manager and DMP