This document attempts to explain the steps required to import an EMC SymClone image of an EMC SRDF (R1) VxVM (Veritas Volume Manager) controlled diskgroup using Veritas DMP as the multipathing driver.
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".
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.
Figure 1.0
BCV vs SymClone
EMC provides the ability to create cloned copies of data simultaneously on multiple target devices from a single source device. The data is available to the same (local) or target host instantly.
Note: You can copy data from a single source device to as many as sixteen target devices.
A source device can be either a Symmetrix standard (std) device or a BCV device. The target device is a Symmetrix clone that contains an exact copy of the source device.
The BCV lun is an EMC Symmetrix device with special attributes created when the Symmetrix is configured. It can function either as an additional mirror to an existing Symmetrix device or as an independent device.
Establishing BCV devices as mirror images of active production data, allows multiple simultaneous business continuance tasks to be performed in parallel. The principal (source) device, known as the standard (std) device, remains online for regular Symmetrix operations on the original production server.
Each BCV is unique, making it accessible to the production server, or a separate backup/disaster recovery (DR) server.
The EMC symmir command forms an relationship between the std and BCV device when placed in an "established" state. As a mirror of a standard device, the relationship is known as a BCV pair. The BCV device is temporarily inaccessible to its host until the BCV pair is "split".
A SymClone (clone) can be either an EMC Symmetrix standard (std) device, or an EMC BCV device, that is to be the clone copy (target device) of another EMC Symmetrix device. Unlike a BCV mirror copy, which must be completely synchronized with its source, and then split to access the data, the clone copy activation functionality makes the cloned disk image (data) immediately accessible to its host, even whilst copying is occurring in the background. The EMC symclone commands are used to create and activate a source/target clone pair.
Steps:
In this instance, an EMC SymClone image has been taken of the EMC SRDF lun "emc0_008c" to SymClone(clone) lun "emc0_00f5".
1.] VxVM disk listing:
Dopey # vxdisk -e list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME ATTR<<<< EMC SymClone target lun.
emc0_00f4 auto:cdsdisk - - online c1t5006048C5368E5A0d281s2 bcv
emc0_00f5 auto - - error c1t5006048C5368E580d275s2 bcv-nr
emc0_008c auto:cdsdisk r1-008C DopeyDg online c1t5006048C5368E580d266s2 srdf-r1 <<<< EMC SRDF (R1) source lun.
emc0_008d auto:cdsdisk r1-008D DopeyDg online c1t5006048C5368E5A0d223s2 srdf-r1
emc0_008e auto:cdsdisk r1-008E DopeyDg online c1t5006048C5368E5A0d229s2 srdf-r1
emc0_008f auto:cdsdisk r1-008f DopeyDg online c1t5006048C5368E580d269s2 srdf-r1
2.] As the EMC SRDF lun is already part of an existing EMC "DeviceGroup", a mapping file can be created and parsed by the EMC "symmir" command.
Dopey # cat /symclone_mappings.txt
008C 00F5
The EMC SYMDEV reference in the first column is the source lun "008C", which relates to Veritas disk access (da) name "emc0_008c". The EMC SYMDEV reference in the second column is the target lun "00F5" for the EMC SymClone device, which relates to Veritas disk access (da) name "emc0_00f5".
3.] Using the above "mapping" file, the source to target device mappings will be formed.
The EMC Symmetrix ID (SID) can be obtained from the Veritas DMP CLI command "vxdmpadm listenclosure all".
In this instance, the SID is " 000290300822", for which can be shortened to just three characters in length "822".
Dopey # vxdmpadm listenclosure all
ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS ARRAY_TYPE LUN_COUNT
===================================================================================
emc0 EMC 000290300822 CONNECTED A/A 6
4.] UDID content.
The UDID (Unique Disk Identifier) is composed of the VID (Vendor ID), PID (Product ID), CAB_SERIAL_NO (Enclosure Serial Number) and LUN_SERIAL_NO (LUN serial number).
Note: The "udid" value represents the UDID from the DDL (Device Discovery Layer). The second "udid_asl" value represents the UDID that is held on disk.
Prior to the target (SymClone) lun being overwritten with the contents of the source lun , the UDID values for both disks are aligned.
Dopey # vxdisk -v list emc0_00f5 emc0_008c | egrep '(Device|udid)'
Device: emc0_00f5
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030304635
tag udid_asl=EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030304635
Device: emc0_008c
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
tag udid_asl=EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
5.] The SymClone state is reported with a "100%" PreCopy state.
Dopey # symclone -sid 822 -f /symclone_mappings.txt query
Device File Name : /symclone_mappings.txt
Device's Symmetrix ID : 000290300822
Source Device Target Device State Copy
--------------------------------- ---------------------------- ------------ ----
Protected Modified Modified
Logical Sym Tracks Tracks Logical Sym Tracks CGDP SRC <=> TGT (%)
--------------------------------- ---------------------------- ------------ ----
N/A 008C 0 0 N/A 00F5 0 X..X PreCopy 100
Total -------- -------- --------
Track(s) 0 0 0
MB(s) 0.0 0.0 0.0
Legend:
(C): X = The background copy setting is active for this pair.
. = The background copy setting is not active for this pair.
(G): X = The Target device is associated with this group.
. = The Target device is not associated with this group.
(D): X = The Clone session is a differential copy session.
. = The Clone session is not a differential copy session.
(P): X = The pre-copy operation has completed one cycle
. = The pre-copy operation has not completed one cycle
6.] Refresh VxVM.
Note: The EMC SymClone target (clone) lun "emc0_00f5" will be shown in a "bcv-nr" state by "vxdisk -e list", whilst the PreCopy state is applicable.
Dopey # vxdisk scandisks
Dopey # vxdisk -e list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME ATTR<<<< EMC SymClone target lun.
emc0_00f4 auto:cdsdisk - - online c1t5006048C5368E5A0d281s2 bcv
emc0_00f5 auto - - error c1t5006048C5368E580d275s2 bcv-nr
emc0_008c auto:cdsdisk r1-008C DopeyDg online c1t5006048C5368E580d266s2 srdf-r1 <<<< EMC SRDF (R1) source lun.
emc0_008d auto:cdsdisk r1-008D DopeyDg online c1t5006048C5368E5A0d223s2 srdf-r1
emc0_008e auto:cdsdisk r1-008E DopeyDg online c1t5006048C5368E5A0d229s2 srdf-r1
emc0_008f auto:cdsdisk r1-008f DopeyDg online c1t5006048C5368E580d269s2 srdf-r1
The EMC SymClone VxVM related diskgroup image cannot be imported until the cloned state has been "activated". The SymClone lun is in a Not-Ready (NR) state until activated.
7.] Revised UDID content whilst the SymClone lun (emc0_00f5) is in a PreCopy state.
Dopey # vxdisk -v list emc0_00f5 emc0_008c | egrep '(Device|udid)'
Device: emc0_00f5
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030304635
Device: emc0_008c
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
tag udid_asl=EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
8.] Activate EMC SymClone device.
The SymClone " activate" process activates the internal copy session with the devices in the device or composite group with one or more target devices that are associated with the group.
Whilst the operation is in progress, the state of the device pair is either CopyInProgress, or CopyOnAccess. When the operation completes, the state changes to "Copied".
Dopey # symclone -sid 822 -v -f /symclone_mappings.txt activate
Execute 'Activate' operation for the 1 specified device(s) in device file '/symclone_mappings.txt' (y/[n]) ? y
'Activate' operation execution is in progress for the device list in device file '/symclone_mappings.txt'. Please wait...
SELECTING the list of Source devices in the group:
Device: 008C [SELECTED]
SELECTING Target devices in the group:
Device: 00F5 [SELECTED]
PAIRING of Source and Target devices:
Devices: 008C(S) - 00F5(T) [PAIRED]
STARTING a Clone 'ACTIVATE' operation.
The Clone 'ACTIVATE' operation SUCCEEDED.
'Activate' operation successfully executed for the device list in device file '/symclone_mappings.txt'.
9.] Confirm "Copied" state
Dopey # symclone -sid 822 -v -f /symclone_mappings.txt query
SELECTING the list of Source devices in the group:
Device: 008C [SELECTED]
SELECTING Target devices in the group:
Device: 00F5 [SELECTED]
PAIRING of Source and Target devices:
Devices: 008C(S) - 00F5(T) [PAIRED]
Device File Name : /symclone_mappings.txt
Device's Symmetrix ID : 000290300822
Source Device Target Device State Copy
--------------------------------- ---------------------------- ------------ ----
Protected Modified Modified
Logical Sym Tracks Tracks Logical Sym Tracks CGDP SRC <=> TGT (%)
--------------------------------- ---------------------------- ------------ ----
N/A 008C 0 0 N/A 00F5 0 X... Copied 100
Total -------- -------- --------
Track(s) 0 0 0
MB(s) 0.0 0.0 0.0
Legend:
(C): X = The background copy setting is active for this pair.
. = The background copy setting is not active for this pair.
(G): X = The Target device is associated with this group.
. = The Target device is not associated with this group.
(D): X = The Clone session is a differential copy session.
. = The Clone session is not a differential copy session.
(P): X = The pre-copy operation has completed one cycle
. = The pre-copy operation has not completed one cycle
10.] Refresh the VxVM disk content.
Dopey # vxdisk scandisks
Dopey # vxdisk -eo alldgs list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME ATTR<<<< EMC SymClone target lun.
emc0_00f4 auto:cdsdisk - - online c1t5006048C5368E5A0d281s2 bcv
emc0_00f5 auto:cdsdisk - (DopeyDg) online udid_mismatch c1t5006048C5368E580d275s2 bcv
emc0_008c auto:cdsdisk r1-008C DopeyDg online c1t5006048C5368E580d266s2 srdf-r1 <<<< EMC SRDF (R1) source lun.
emc0_008d auto:cdsdisk r1-008D DopeyDg online c1t5006048C5368E5A0d223s2 srdf-r1
emc0_008e auto:cdsdisk r1-008E DopeyDg online c1t5006048C5368E5A0d229s2 srdf-r1
emc0_008f auto:cdsdisk r1-008f DopeyDg online c1t5006048C5368E580d269s2 srdf-r1
11.] Revised UDID content, now the SymClone has been activated (available for use).
Dopey # vxdisk -v list emc0_00f5 emc0_008c | egrep '(Device|udid)'
Device: emc0_00f5<<<< UDID from the DDL (kernel). The true UDID of the disk itself.
flags: online ready private autoconfig udid_mismatch autoimport
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030304635
tag udid_asl=EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843 <<<< UDID matches that of the source LUN "emc0_008c"
Device: emc0_008c
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
tag udid_asl=EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
Note: The UDID values on the source LUN "emc0_008c" will agree, whereas the UDID values on the SymClone target LUN will disagree. The reason being is that EMC SymClone process will copy block-for-block the contents of the source disk to that of the target disk, which includes the on-disk UDID value from the source LUN.
12.] When importing the EMC SymClone images of the VxVM Diskgroup, use vxdg options " -o useclonedev=on and -o updateid".
In this instance, the **new** diskgroup name for the SymClone image of the VxVM diskgroup "DopeDg" will be named "symcl_DopeyDg".
Dopey # vxdg -n symcl_DopeyDg -o useclonedev=on -o updateid import DopeyDg
VxVM vxdg WARNING V-5-1-560 Disk r1-008D: Not found, last known location: emc0_008d
VxVM vxdg WARNING V-5-1-560 Disk r1-008E: Not found, last known location: emc0_008e
VxVM vxdg WARNING V-5-1-560 Disk r1-008f: Not found, last known location: emc0_008f
Note: As only a single disk has been cloned (SymCloned), the remainder of the disks associated with the source diskgroup image will be reported as "Not found, last known location:
13.] Refreshed VxVM disk listing.
Dopey # vxdisk -e -o alldgs list
DEVICE TYPE DISK GROUP STATUS OS_NATIVE_NAME ATTR<<<< EMC SymClone target lun.
emc0_00f4 auto:cdsdisk - - online c1t5006048C5368E5A0d281s2 bcv
emc0_00f5 auto:cdsdisk r1-008C symcl_DopeyDg online clone_disk c1t5006048C5368E580d275s2 bcv <<<< EMC SRDF (R1) source lun.
emc0_008c auto:cdsdisk r1-008C DopeyDg online c1t5006048C5368E580d266s2 srdf-r1
emc0_008d auto:cdsdisk r1-008D DopeyDg online c1t5006048C5368E5A0d223s2 srdf-r1
emc0_008e auto:cdsdisk r1-008E DopeyDg online c1t5006048C5368E5A0d229s2 srdf-r1
emc0_008f auto:cdsdisk r1-008f DopeyDg online c1t5006048C5368E580d269s2 srdf-r1
Note: The VxVM "clone_disk" attribute states that the device is a clone of another device. The "clone_disk" is set by the vxdg option "-o useclonedev=on".
Dopey # vxdisk -v list emc0_00f5 emc0_008c | egrep '(Device|udid)'
Device: emc0_00f5
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030304635
tag udid_asl=EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030304635
Device: emc0_008c
udid: EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
tag udid_asl=EMC%5FSYMMETRIX%5F000290300822%5F60060480000290300822533030303843
Note: The "UDID" related content for the SymClone lun is synced as part of the import process, as a result of the vxdg option "-o updateid".
14.] Following the successful import process, the volume(s) will need to be started.
a.] Diskgroup content:
Dopey # vxprint -qhtg symcl_DopeyDg
dg symcl_DopeyDg default default 61000 1298402411.73.Dopey
dm r1-008C emc0_00f5 auto 65536 4058368 -
dm r1-008D - - - - NODEVICE
dm r1-008E - - - - NODEVICE
dm r1-008f - - - - NODEVICE
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_00f5 ENA
b.] In this instance, VxVM volume "vol01" is started using the vxrecover command.
Dopey # vxrecover -g symcl_DopeyDg -bs
Dopey # mkdir /symcl_DopeyDg
d.] Mount the vxfs filesystem.
Dopey # mount -F vxfs /dev/vx/dsk/symcl_DopeyDg/vol01 /symcl_DopeyDg
UX:vxfs mount: ERROR: V-3-21268: /dev/vx/dsk/symcl_DopeyDg/vol01 is corrupted. needs checking
e.] Fsck required to mark the super-block as "clean". This is expected behaviour.
Dopey # fsck -F vxfs /dev/vx/rdsk/symcl_DopeyDg/vol01
log replay in progress
replay complete - marking super-block as CLEAN
Dopey # mount -F vxfs /dev/vx/dsk/symcl_DopeyDg/vol01 /symcl_DopeyDg
f.] Confirm the filesystem has been mounted
Dopey # ls /symcl_DopeyDg
hosts lost+found nsswitch.conf vfstab
Process complete.
c.] Once the VxVM volume has been started, the filesystem can be mounted.
Note: Ensure the mount point for the filesystem exists, if not create it.