Dell EMC VMAX, VMAX3 Configuration And Best Practices Technical Notes

Page 1

VMAX NON-DISRUPTIVE MIGRATION

Configuration and Best Practices Technical Notes

ABSTRACT

Data migrations have always been challenging in an enterprise environment. The complexity and size of very large storage environments makes planning for, scheduling, and executing migrations extremely difficult. Migrations also often involve applications that cannot be taken offline, even briefly for cutover to a new storage array. Dell EMC’s VMAX Non-Disruptive Migration, or NDM, allows customers to perform online data migrations that are simple as well as completely non-disruptive to the host and application.
May, 2017
NON-DISRUPTIVE MIGRATION : CONFIGURATION AND BEST PRACTICES TECHNICAL NOTES
Page 2
© 2017 Dell Inc. or its subsidiaries. All Rights Reserved. Dell, EMC and other trademarks are trademarks of Dell Inc. or its subsidiaries. Other trademarks may be trademarks of their respective owners. Reference Number: H15464.2
2
Page 3

TABLE OF CONTENTS

VMAX NON-DISRUPTIVE MIGRATION............................................................................................... 1
EXECUTIVE SUMMARY ...................................................................................................................... 5
AUDIENCE ......................................................................................................................................................................... 5
NON-DISRUPTIVE MIGRATION OVERVIEW ...................................................................................... 5
NDM MIGRATION OPERATIONS ........................................................................................................ 7
BENEFITS .......................................................................................................................................................................... 7
MANIPULATION OF DEVICE IDS AND HOST PATHS ..................................................................................................... 7
SUPPORTED DISTANCE BETWEEN THE SOURCE AND TARGET .............................................................................. 8
EFFECTS ON DEVICES AND EXISTING REPLICATION SESSIONS ............................................................................. 8
BOOT FROM SAN SUPPORT ........................................................................................................................................... 9
RECOGNIZING THE NDM RDF GROUP .......................................................................................................................... 9
SETTING UP MULTIPE NDM RELATIONSHIPS .............................................................................................................. 9
HOW NDM HANDLES MASKING GROUPS AND VIEWS .............................................................................................. 10
RULES REGARDING MASKING GROUPS AND VIEWS ............................................................................................... 10
GENERAL CONSIDERATIONS AND LIMITATIONS ....................................................................................................... 11
SESSION LIMITS ............................................................................................................................................................. 11
HARDWARE AND SOFTWARE REQUIREMENTS ......................................................................................................... 11
CONFIGURATION REQUIREMENTS AND PREREQUISITES ...................................................................................... 11
SUPPORT MATRIX .......................................................................................................................................................... 12
PREFORMING NDM OPERATIONS USING SOLUTIONS ENABLER ............................................. 13
EXAMINE THE PRE-MIGRATION ENVIRONMENT ........................................................................................................ 13
SET UP THE ENVIRONMENT ......................................................................................................................................... 15
VALIDATE AND CREATE MIGRATION SESSIONS ....................................................................................................... 16
PERFORM A HOST RESCAN ......................................................................................................................................... 19
CUTOVERREADY AND PASSTHROUGH MODE .......................................................................................................... 19
LIST THE NDM SESSIONS ............................................................................................................................................. 21
EXAMINE THE DEVICE PAIRING AND IDENTITIES FOLLOWING A CREATE ............................................................ 25
CANCEL A MIGRATION .................................................................................................................................................. 28
PERFORM A CUTOVER TO THE TARGET ARRAY ...................................................................................................... 29
EXAMINE THE DEVICE IDENTITIES FOLLOWING A CUTOVER ................................................................................. 34
REVERT TO THE SOURCE ARRAY ............................................................................................................................... 35
COMMIT A MIGRATION .................................................................................................................................................. 37
PERFORM A HOST RESCAN ......................................................................................................................................... 38
COMPARE THE PRE AND POST DEVICE IDENTITIES FOLLOWING A COMMIT ...................................................... 41
USE THE RECOVER COMMAND ................................................................................................................................... 43
REMOVE THE MIGRATION ENVIRONMENT ................................................................................................................. 44
PRERFORMING NDM OPERATIONS USING UNISPHERE ............................................................. 45
EXAMINE THE MULTIPATHING CONFIGURATION ...................................................................................................... 47
SET UP THE ENVIRONMENT ......................................................................................................................................... 47
CREATE MIGRATION SESSIONS .................................................................................................................................. 49
PERFORM A HOST RESCAN ......................................................................................................................................... 53
CUTOVERREADY AND PASSTHROUGH MODE .......................................................................................................... 53
VIEW MIGRATION SESSION DETAILS .......................................................................................................................... 54
EXAMINE THE DEVICE IDENTITIES FOLLOWING A CREATE .................................................................................... 55
CANCEL A MIGRATION .................................................................................................................................................. 57
PERFORM A RESCAN FOLLOWING A CANCEL ........................................................................................................... 59
PERFORM A CUTOVER TO THE TARGET ARRAY ...................................................................................................... 59
EXAMINE THE DEVICE IDENTITIES FOLLOWING A CUTOVER ................................................................................. 64
REVERT TO THE SOURCE ARRAY ............................................................................................................................... 66
PERFORM A RESCAN FOLLOWING A CANCEL REVERT ........................................................................................... 68
3
Page 4
COMMIT A MIGRATION .................................................................................................................................................. 69
COMPARING THE PRE AND POST DEVICE IDENTITIES FOLLOWING A COMMIT .................................................. 71
USE THE RECOVER COMMAND ................................................................................................................................... 74
REMOVE THE ENVIRONMENT ...................................................................................................................................... 76
ADD DISASTER RECOVERY TO THE TARGET ARRAY............................................................................................... 77
APPENDIX A: HOST MULTIPATHING SOFTWARE NOTES AND SETTINGS ................................ 79
AIX NATIVE MULTI-PATHING SOFTWARE ................................................................................................................... 79
LINUX NATIVE MULTI-PATHING SOFTWARE (DEVICE MAPPER) ............................................................................. 79
POWERPATH (VERSION 5.7 AND ABOVE) ................................................................................................................... 79
POWERPATH WITH SOLARIS ........................................................................................................................................ 79
WINDOWS 2012 WITH MPIO .......................................................................................................................................... 80
VERITAS DYNAMIC MULTI-PATHING ............................................................................................................................ 80
ESXI WITH NATIVE MULTI-PATHING ............................................................................................................................ 80
APPENDIX B: AIX, GPFS, ORACLE RAC, POWERHA AND POWERPATH WITH NDM ................ 80
4
Page 5

EXECUTIVE SUMMARY

Data migrations have always been challenging in an enterprise environment. The complexity and size of very large storage environments makes planning for, scheduling, and executing migrations extremely difficult. Migrations also often involve applications that cannot be taken offline, even briefly for cutover to a new storage array. Dell EMC’s VMAX Non-Disruptive Migration, or NDM, allows customers to perform online data migrations that are simple as well as completely non-disruptive to the host and application.

AUDIENCE

These Technical Notes are intended for:
Customers, including IT management and planners, storage architects, and administrators involved in evaluating, acquiring,
managing, operating, or designing and implementing VMAX3 or VMAX All Flash storage arrays.
EMC field personnel and partners involved in designing VMAX3 or VMAX All Flash solutions and planning for and
implementing migrations to VMAX3 or VMAX All Flash arrays.
Please ensure you are working off the latest version of this document as there are frequent updates made. The latest version can always be found here:
https://www.emc.com/collateral/technical-documentation/h15464-vmax-non-disruptive-migration.pdf

NON-DISRUPTIVE MIGRATION OVERVIEW

Non-Disruptive Data Migration (NDM) is available for VMAX3 and VMAX All Flash storage arrays running HYPERMAX OS 5977 Q3 2016 Service Release or later and Solutions Enabler 8.3 or later. NDM is designed to help automate the process of migrating hosts and applications to a new VMAX3 or VMAX All Flash array with no downtime.
Non-Disruptive Migration leverages VMAX SRDF replication technologies to move the application data to the new array. It also uses VMAX auto-provisioning, in combination with PowerPath or a supported host multi-pathing solution, to manage host access to the data during the migration process. Note - Migrations should take place during low IO activity to minimize Performance Impact.
5
Page 6
Figure 1. NDM Overview
6
Page 7

NDM MIGRATION OPERATIONS

The migration of an application from the source to the target array is completed using a sequence of user-initiated operations, each which is fully automated. These migrations are performed at the Storage Group (SG) level. The entire migration of a storage group can be accomplished with a few clicks in Unisphere or simple, short Solutions Enabler commands that perform the following five operations:
Environment Setup Setup configures the migration environment that will be required to migrate any application from the
source array to the target array. It confirms that both the source and target arrays can support the NDM operations. This includes ensuring that a useable replication pathway for data migration is available between the source and target arrays. Once the Environment Setup has completed successfully, a Create operation can be run. The environment setup command is run only once prior to the initial migration between two arrays. All other storage groups migrating between those arrays will use the same migration environment.
Create Solutions Enabler examines a specific application’s storage on the source array and automatically provisions
equivalent storage on the target array. The target devices are assigned the identity of the source devices and are configured in a pass-through mode that allows the data to be accessed from both the source and target devices.
o After the create operation completes the administrator issues a host rescan to allow the host to discover the paths to
the newly created devices. After this is complete, I/O issued by the application will be directed to either the source or the target arrays through the host multi-pathing software. HYPERMAX OS will ensure that all I/Os that are directed to the target by the host are actually serviced by the source array until the cutover.
Cutover A cutover operation moves the target devices out of pass-through mode, initiates data synchronization from the
source to the target and makes the paths to the source array inactive so that all I/Os are being serviced by the target array.
Commit After the source to target data synchronization is complete and all application data has been migrated to the target
array, a commit operation is performed. During a commit operation, Solutions Enabler completes the migration by releasing temporary resources allocated to perform the migration, permanently disabling access to the source devices, and assigning the target device ID to the source devices.
Environment Remove This is performed after all migrations have been completed to remove the migration environment. The
array to array connectivity configured for the data migration pathway is removed along with the rest of the infrastructure on both arrays that was configured by HYPERMAX OS to support the migrations.

Other supported NDM operations

Cancel Ends a migration that has not been committed. It removes storage provisioned for the migration on the target array,
releases resources allocated by Solutions Enabler to perform the migration, and places the source devices into the state they were in before the Create operation was run.
Cancel with Revert - Run after a cutover operation to move the application’s data access back to the source array from the
target array and cancel the migration.
Recover Attempts to complete a failed migration operation. Recover is run following a failure after the cause of the failure,
such as a connectivity issue, has been resolved.
Sync Controls the replication from the target side devices to the source side devices after a cutover is done and all data has
been migrated to the target side.
List Shows a list of migrations to or from a specified array, with the current status for each.

BENEFITS

Allows migration from VMAX to VMAX3 or VMAX All Flash with hosts and applications completely online  Designed for ease of use with control operations that automate the setup and configuration of the migration environment  Managed by familiar and simple user interfaces via Solutions Enabler and Unisphere for VMAX  Migrations can be easily cancelled and failed back to the source array for any reason prior to commit

MANIPULATION OF DEVICE IDS AND HOST PATHS

NDM is able to migrate data and cutover to the target array non-disruptively by both swapping device IDs between the source and target devices and manipulating the paths from the host to both arrays. The device ID contains the device’s unique WWN and other information about it, such as a device identifier that the user has assigned to a device through Solutions Enabler or Unisphere. All of this information is copied to the target devices.
7
Page 8
NDM performs the data migration and device ID swap without the host being aware. The path management changes appear as either the addition of paths or the removal of paths to the existing source device. To the host and application, there is no change in the device that it is accessing and access to the device is maintained throughout the entire migration process.

SUPPORTED DISTANCE BETWEEN THE SOURCE AND TARGET

NDM is supported across SRDF synchronous distance. However, because of the requirement that the host see both the source and target storage, migrations will typically be performed between arrays within a data center.

EFFECTS ON DEVICES AND EXISTING REPLICATION SESSIONS

Devices that are included in migration session in both the source array can remain in existing replication sessions throughout the migration. NDM will evaluate the states of any current replication sessions before proceeding with the migration and make sure that they are in the proper state to allow the migration to succeed.
Though existing replication sessions can be left in place during the migration, replication relationships will not be migrated to the target array. These replication resources will need to be created on the target array, if required, at the appropriate point in the migration.
For example, SRDF replication can be configured between the target array and its remote array while in the CutoverSyncing state or after the CutoverSync state is reached. The new DR RDF pairs can then be allowed to synchronize before the Commit so that DR is maintained throughout the migration. SRDF can also be setup in the CutoverNoSync state, which is reached when the sync command is used to stop replication. For local Snap/VX sessions running against the source volumes, existing session on the source array can continue as normal during the migration and new sessions can also be created at the same time that the new SRDF replication is configured.
Storage on the source and target arrays that is involved in the migration of an application should never be altered, and the migration resources should not be managed, outside of the NDM commands. If any changes in the migration session are detected when a migration operation is executed, the operation will be blocked until the changes that were made are undone, allowing the migration operation to proceed as expected.

SRDF Restrictions:

Migrating devices cannot be R2 devices.  Cannot be concurrent RDF devices.  The devices must not be enabled for RDF Consistency.  The R1 may not be part of an SRDF/Star configuration.  The RDF relationship may not be part of an SRDF/Metro configuration.  SRDF must not be replicating data from the target to the source, such as during an in-progress restore.

TimeFinder Restrictions:

The migration source or target may not be the target of a TimeFinder copy session.  SRDF must not be replicating data from a local replication operation, such as during an in-progress TimeFinder restore.

Open Replicator Restrictions:

The migration source device may not be the control device in an Open Replicator pull operation.  Open Replicator must not be replicating data from a remote device to a control device, such as during an in-progress restore.
8
Page 9

BOOT FROM SAN SUPPORT

NDM supports hosts that boot directly from the VMAX. The host boot BIOS must be updated to point to the target volume so that when the host is rebooted at a later date it will find the volume containing the operating system. For details on boot drive configuration please refer to the vendor specific HBA management guide or BIOS guides.
Please refer to one of the Dell EMC’s host connectivity guides for more additional information regarding Boot from SAN configuration guidelines.

RECOGNIZING THE NDM RDF GROUP

The RDF group created for NDM between two arrays can be identified by its label. The label follows the format of M_XXXXYYYY, where ‘XXXX’ is the last four digits of the lower numbered VMAX and ‘YYYY’ is the last four digits of the higher numbered VMAX. This group will be used for all NDM migrations between the two arrays.
In this example, the arrays are 000197800129 and 000195703184, making the NDM RDF group label M_01293184. Unisphere will detect and use best available RDF ports for the NDM RDF group.
Note: The NDM RDF group should not be removed or relabeled. Doing either will cause NDM operations to fail.
Figure 2. NDM RDF Group

SETTING UP MULTIPE NDM RELATIONSHIPS

Multiple environment setup operations can be performed for a single source array, provided that a different target array is specified for each migration environment. All NDM RDF groups on a source or target array can be in use simultaneously, for concurrent migrations to, or from, an array.
For example, a single VMAX3 or All Flash target array can have multiple NDM RDF groups, each connected to one of four different source VMAX arrays. This means that the VMAX3 array can be the target of migrations from each of those four VMAX arrays.
Likewise, a single VMAX source array can have multiple NDM RDF groups, each connected to one of four different target VMAX3 or All Flash arrays. This means that the VMAX array can be the source of migrations to each of those four VMAX3 or All Flash arrays.
When migrations are completed, separate environment remove operations are required for each array pair. The environment remove operation removes the NDM RDF group between the two arrays, provided that no devices on either array have an RDF mirror in the NDM RDF group.
9
Page 10

HOW NDM HANDLES MASKING GROUPS AND VIEWS

When NDM sessions are created, NDM configures storage groups (SGs), initiator groups (IGs), port groups (PGs), and masking views (MVs) on the target array that exactly match the group names on the source array. Both initiator groups and port groups can exist in multiple masking views, so these groups will be reused when applicable.
When the first SG on the first array is migrated to the target array, a SG will be created on the target with the same name that contains the migration target devices, an IG will be created on the target with the same name that contains the host initiators, and a PG will be created on the target based on which ports the host HBAs are logged into.
When an SG on the second source array is migrated to the target array, the SG name must be different. If necessary, the SG can be renamed before it is migrated. The IG must have the same name because an initiator can only exist in one IG. If the PG on the second array has the same name as the PG on the first array, then the PG built by NDM during the first migration will be reused. If it has a different name, a new PG will be created with the same ports used in the PG created during the first migration.
NDM also supports migration of a Parent IG which has child IG’s.

RULES REGARDING MASKING GROUPS AND VIEWS

All migrations are performed against a Storage Group (SG), which is the data container that is migrated with NDM. The following rules must be met:
Only SGs contained in masking views can be migrated. If the device is mapped to a port that it is not masked to for this SG, the
create operation will not be permitted.
A SG will not be able to be migrated using NDM if it contains devices that have been added to a second SG that belongs to a
masking view.
Multiple masking views on the SG using the same IG are not allowed unless PGs on the target array already exist for each view
and the ports in the PGs are selected to avoid duplicate host paths.
Only parent SGs and standalone SGs with masking views can be migrated. A child SG with a masking view on the child SG is not
supported.
If the SG is a parent, its child SGs will also be migrated.  Devices in the SG which are considered to be GKs (20 cylinders or less) will not be migrated to the target array.  Devices must not be masked to FCoE ports.  Devices must not be masked to iSCSI ports.  Devices must not be mapped to ports where the ACLX is not enabled.
There are restrictions on the entities that might already exist on the target array.
If a Storage Resource Pool (SRP) on the target array is specified for the migration, that SRP must already exist on the target array.  The names of the SGs (parent and children) that are being migrated must not exist on the target array.  The names of the masking views that are being migrated must not exist on the target array.  The names of the initiator groups that are being migrated may exist on the target array, provided that the groups on the target array
have the exact same initiators, child groups and port flags as the groups on the source array with the same names. Port flags that are not supported on the VMAX3 are ignored. One exception to this is if the source IG was a parent IG that contained both group names and initiators. With SE 8.4 on the target array, the IG will only need to have the same group names since when SE migrates this IG; it will move all the initiators to a separate IG and will make it a child of the parent.
10
Page 11
The names of the port groups that are being migrated may exist on the target array, provided that the groups on the target array
have the initiators logged in into at least one port in the port group, or are visible in the LHT (Login History Table).

GENERAL CONSIDERATIONS AND LIMITATIONS

Migrating hosts must have access and be zoned to both the source and target array  Migrating hosts must use fibre channel connectivity

SESSION LIMITS

16 Storage Groups can be migrated concurrently.
o Child SGs do not count towards this limit.
Each Storage Group can contain up to 4096 devices.

HARDWARE AND SOFTWARE REQUIREMENTS

For full connectivity information see the following:
o RDF Interfamily Connectivity Guide o NDM Connectivity Support Article (support.emc.com)
Solutions Enabler 8.3 or later  Unisphere for VMAX 8.3 or later  Solutions Enabler or Unisphere control host  Supported host operating system and multi-pathing software  Supported cluster software (if applicable)  To enable the ability for SGs with existing DR in SRDF/S mode to be migrated the following minimum code levels are required:
Vmax with Enginuity 5876.309.xxx & Fix 90270 (Epack)  VMAX3 or All Flash with HYPERMAX 0S 5977 Q2 2017 Release  Unisphere 8.4  Solutions Enabler 8.4 or later

CONFIGURATION REQUIREMENTS AND PREREQUISITES

Most of the steps for configuring and un-configuring NDM is done automatically using the environment setup and remove commands. Prior to running the setup, the following is required:
SRDF must be enabled in the bin file.
The source and target arrays must have SRDF directors and ports configured.
SRDF Ports on the Target array must be configured across at least two Directors with a minimum of 2 Ports up to a maximum
of 8.
The SRDF ports between the source and target arrays in a Fibre Channel environment must be zoned to each other.
A Solutions Enabler or Unisphere management host that sees at least one of the arrays must be available.
Both the source and target array are connected to the same SAN.
For more information on the process to enable SRDF on the array for use with NDM, please visit KB article#495041 (web link below).
https://support.emc.com/kb/495041
Prior to running the Create, the following is required:
The host with the application being migrated must be zoned to the VMAX3 or VMAX All Flash. 11
Page 12
All devices that will be migrated must be set for dynamic SRDF capability (must be RDF1 or RDF2 Capable).
Note: RDF ports do not need to be dedicated to NDM operations. Ports involved in ongoing SRDF disaster recovery operations may be shared with NDM sessions, but analysis should be performed prior to setting up NDM to make certain there is adequate bandwidth to handle both DR and migration traffic.

SUPPORT MATRIX

Information on supported host operating systems, multipathing software, and cluster software can be found at the E-Lab Navigator (ELN) on Dell EMC’s support site below.
https://elabnavigator.emc.com/eln/elnhome
Please ensure that the environment you are planning to migrate has a match in the support matrix prior to starting the migration. The E­Lab Advisor (ELA) application available at the weblink below provides a way for Dell EMC employees and authorized partners and customers to upload host grab files to validate the environment against NDM support matrix and generate a Migration Readiness report.
https://elabadvisor.psapps.emc.com/app/home/index
12
Page 13

PREFORMING NDM OPERATIONS USING SOLUTIONS ENABLER

EXAMINE THE PRE-MIGRATION ENVIRONMENT

Prior to any NDM operation, the application is running in production against the source VMAX array. A VMAX All Flash, which will be the target of the migration in this example, has been attached physically, zoned to the host, and has been discovered by Solutions Enabler.
Figure 3. Pre-Migration with Prerequisites Completed
The All Flash, along with the source 40K, is locally attached, meaning directly connected to the host and not discovered as a remote array via SRDF. Both arrays will appear as local arrays if the Solutions Enabler host is directly attached to both. This is not required for NDM operations. Only the host being migrated is required to be directly attached to both arrays.
Note: In the lab environment used here, the Solutions Enabler commands are run from the host that is being migrated. That is acceptable for non-production environments but it is not recommended for production hosts. The SE or Unisphere control host should be a separate management host, not a host with volumes being migrated.
C:\>symcfg list
S Y M M E T R I X
Mcode Cache Num Phys Num Symm SymmID Attachment Model Version Size (MB) Devices Devices
000195703184 Local VMAX40K 5876 43008 2 348 000197800129 Local VMAX250F 5977 84992 4 231
000196701630 Remote VMAX200K 5977 214016 0 216 000197000002 Remote VMAX450F 5977 472064 0 227
13
Page 14
There are four, 50 GB data volumes presented to the host from the source array (volumes 0158 to 015B). They are non-SRDF volumes.
C:\>syminq
Device Product Device
-------------------------- --------------------------- --------------------------­Name Type Vendor ID Rev Ser Num Cap (KB)
-------------------------- --------------------------- --------------------------­\\.\PHYSICALDRIVE0 DGC VRAID 0533 255723B2 125829120
\\.\PHYSICALDRIVE1 EMC SYMMETRIX 5876 8400158000 52429440 \\.\PHYSICALDRIVE2 EMC SYMMETRIX 5876 8400159000 52429440 \\.\PHYSICALDRIVE3 EMC SYMMETRIX 5876 840015A000 52429440 \\.\PHYSICALDRIVE4 EMC SYMMETRIX 5876 840015B000 52429440
\\.\PHYSICALDRIVE5 GK EMC SYMMETRIX 5876 8400028000 2880 \\.\PHYSICALDRIVE6 GK EMC SYMMETRIX 5977 2900001000 5760 \\.\PHYSICALDRIVE7 GK EMC SYMMETRIX 5977 2900001000 5760 \\.\PHYSICALDRIVE8 GK EMC SYMMETRIX 5876 8400028000 2880 \\.\PHYSICALDRIVE9 GK EMC SYMMETRIX 5977 2900001000 5760 \\.\PHYSICALDRIVE10 GK EMC SYMMETRIX 5977 2900001000 5760

Note: Using the –native parameter with the inq utility will allow the user to display native WWNs of specific devices

These devices are in a storage group (SG) called lcseb246_sg.
C:\>symaccess show lcseb246_sg -type storage -sid 84
Symmetrix ID : 000195703184
Storage Group Name : lcseb246_sg Last update time : 10:39:08 AM on Fri May 27,2016 Group last update time : 10:39:08 AM on Fri May 27,2016
Number of Storage Groups : 0 Storage Group Names : None
Devices : 00158:0015B
Masking View Names { lcseb246_mv }
There are two paths to the four devices on the source array.
C:\>powermt display dev=all Pseudo name=harddisk1 Symmetrix ID=000195703184 Logical device ID=0158 Device WWN=60000970000195703184533030313538 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt4\lun0 c2t4d0 FA 7e:00 active alive 0 0
14
Page 15
1 port1\path0\tgt4\lun0 c1t4d0 FA 8e:00 active alive 0 0
Pseudo name=harddisk2 Symmetrix ID=000195703184 Logical device ID=0159 Device WWN=60000970000195703184533030313539 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt4\lun1 c2t4d1 FA 7e:00 active alive 0 0 1 port1\path0\tgt4\lun1 c1t4d1 FA 8e:00 active alive 0 0
Pseudo name=harddisk3 Symmetrix ID=000195703184 Logical device ID=015A Device WWN=60000970000195703184533030313541 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt4\lun2 c2t4d2 FA 7e:00 active alive 0 0 1 port1\path0\tgt4\lun2 c1t4d2 FA 8e:00 active alive 0 0
Pseudo name=harddisk4 Symmetrix ID=000195703184 Logical device ID=015B Device WWN=60000970000195703184533030313542 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt4\lun3 c2t4d3 FA 7e:00 active alive 0 0 1 port1\path0\tgt4\lun3 c1t4d3 FA 8e:00 active alive 0 0
After completing the prerequisites, the application host or cluster is zoned to the target array FA ports. The ports that the target devices will be masked to is determined automatically by NDM based on where the host HBAs are zoned.
Note: Workload Planner (WLP) is a Unisphere utility that can be used to determine the ideal target ports to use for an NDM migration. If WLP is used, it must be run from a control host that has access to both arrays. It cannot be run from Embedded Unisphere for VMAX.

SET UP THE ENVIRONMENT

Once the required pre-migration tasks are completed, the environment can be setup using NDM. All further steps required to setup and perform the migrations will now be handled automatically by NDM.
The Environment Setup configures the migration environment that will be required to migrate any application from the source array to the target array. It confirms that both the source and target arrays can support the NDM operations. This includes ensuring that a useable replication pathway for data migration is available between the source and target arrays and creating an SRDF group for the migration. The setup only must be run once. When the migration pathways and SRDF group are configured, all storage groups on the source array can be migrated until all migrations from the source to the target have been completed.
15
Page 16
C:\>symdm environment -src_sid 3184 -tgt_sid 0129 -setup
A DM 'Environment Setup' operation is in progress. Please wait...
Analyze Configuration..........................................Started.
Source SID:000195703184 Target SID:000197800129
Analyze Configuration..........................................Done.
Setup Configuration............................................Started.
Setup Configuration............................................Done.
The DM 'Environment Setup' operation successfully executed.
Once the setup is complete, the migration sessions can be created.
Note: NDM Environment setup will create RDF links between the Source and Target arrays using one port per Director for each zoned link. However post Setup the user has the ability to add extra links manually using: symrdf modifygrp –rdfg 250 –add dir xx –remote_dir xx

VALIDATE AND CREATE MIGRATION SESSIONS

Solutions Enabler examines a specific application’s storage on the source array and automatically provisions equivalent storage on the target array. The target devices are assigned the identity of the source devices and are configured in pass-through mode which allows the data to be accessed through both the source and target devices.
Prior to running the create operation, the target array resources can be validated to ensure that the target array has the resources required to configure the migration sessions:
C:\>symdm create -src_sid 3184 -tgt_sid 0129 -sg lcseb246_sg -validate -nop
A DM 'Validate Create' operation is in progress for storage group 'lcseb246_sg'. Please wait...
Analyze Configuration..........................................Validated.
Create Storage Group(s) on Target..............................Validated.
Duplicate Device(s) on Target..................................Validated.
Create Initiator Group(s) on Target............................Validated.
Create Port Group(s) on Target.................................Validated.
Create Masking View(s) on Target...............................Validated.
The DM 'Validate Create' operation successfully executed for storage group 'lcseb246_sg'.
The lcseb246_sg storage group and devices are configured properly and the create operation will succeed. If there are
configuration issues that will prevent the create from completing, the validate, as in this example with another storage group, will fail and reference the SYMAPI logs for more information:
C:\>symdm create -src_sid 3184 -tgt_sid 0129 -sg lcseb246_TEST_sg -nop -validate
A DM 'Validate Create' operation is in progress for storage group 'lcseb246_TEST_sg'. Please wait...
An invalid DM configuration has been detected. Operation not allowed. Check the symapi log file
The log file shows the reason for the failure:
06/09/2016 15:20:48.791 904 1320 EMC:SYMDM emcValidateNDMDevice SG: lcseb246_TEST_sg SrcSymm: 000195703184 TgtSymm: 000197800129. Source device: 00164 is not valid for migration, status: 6002 (The specified device does not have the 'dynamic RDF1 OR RDF2 capable' attribute set)
16
Page 17
The validate operation on lcseb246_sg confirms that the devices and masking can be configured on the target array. The create operation can now be run to create the migration sessions:
C:\>symdm create -src_sid 3184 -tgt_sid 0129 -sg lcseb246_sg -nop
A DM 'Create' operation is in progress for storage group 'lcseb246_sg'. Please wait...
Analyze Configuration..........................................Started.
Source SID:000195703184 Target SID:000197800129
Analyze Configuration..........................................Done.
Create Storage Group(s) on Target..............................Started.
Create Storage Group(s) on Target..............................Done.
Duplicate Device(s) on Target..................................Started.
Duplicate Device(s) on Target..................................Done.
Create Initiator Group(s) on Target............................Started
Create Initiator Group(s) on Target............................Done.
Create Port Group(s) on Target.................................Started.
Create Port Group(s) on Target.................................Done.
Setup Data Replication.........................................Started.
Setup Data Replication.........................................In Progress.
Setup Data Replication.........................................Done.
Create Masking View(s) on Target...............................Started.
Create Masking View(s) on Target...............................Done.
Update Device State............................................Started.
Update Device State............................................Done.
The DM 'Create' operation successfully executed for storage group 'lcseb246_sg'.
17
Page 18
Figure 4. Created
The sessions can be viewed, in this case from the source VMAX. No user data has copied between the source and target devices, but SCSI reservations put in place by PowerPath, the host LVM, or cluster software are copied to the target.
The session is initially in a Created state:
C:\>symdm -sid 3184 -sg lcseb246_sg list
Symmetrix ID : 000195703184 Storage Group: lcseb246_sg
Total Source Target Capacity Done Array Array State (GB) (%)
------------ ------------ -------------- --------- ---­000195703184 000197800129 Created 200.0 N/A
Note: During an NDM migration, the source of the migration will be an R2 or an R21 device (if there is existing SRDF DR replication from the source device) and the target will be an R1 device. This is different than basic SRDF operations and is required to allow DR protection during a migration using a cascaded SRDF configuration. See the section entitled ADDING DISASTER RECOVERY TO THE TARGET ARRAY” for more details.
18
Page 19

PERFORM A HOST RESCAN

After the create operation completes the systems administrator must issue a host rescan to allow the host to discover the paths to the newly created devices. This host rescan is OS specific and also should include a rescan using the host multipathing software if it must be performed separately from the host rescan, as with PowerPath.
Devices go into a CutoverReady state from a Created state after the host rescan is performed and the target devices are discoverable. After this is complete, I/O issued by the application will be directed to either the source or the target arrays through the host multipathing software. This is possible because the target devices are in pass-through mode. See Appendix A for more details on host multipathing software settings.

CUTOVERREADY AND PASSTHROUGH MODE

Passthrough mode allows the host to write to or read from either the source or target array. Any write that in sent to the target array will be sent across the SRDF link and serviced by the source array. No data will be kept on the target array while in a CutoverReady state.
The CutoverReady state is a transitional state. The devices should only be in a CutoverReady state and using pass-through mode for as long as it takes to check that the Create has succeeded properly, to run the host rescan, and to run the Cutover operation.

Figure 5. Cutover Ready and Passthrough Mode

PowerPath shows all paths to the source and target devices as alive. HYPERMAX OS will ensure that all I/Os that are directed to the target by the host are actually serviced by the source array until the cutover.
The paths will all remain in an alive state until after the commit operation.
Note: A Host rescan that will result in the permanent removal of the now “inactive” paths should not be undertaken at this point, this will limit the ability for the migration to be seamlessly cancelled and normal operation reverted back to the source array.
19
Page 20
C:\>powermt display dev=all Pseudo name=harddisk1 Symmetrix ID=000195703184 Logical device ID=0158 Device WWN=60000970000195703184533030313538 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun1 c2t6d1 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun1 c2t5d1 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun0 c2t4d0 FA 7e:00 active alive 0 0 1 port1\path0\tgt6\lun1 c1t6d1 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun1 c1t5d1 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun0 c1t4d0 FA 8e:00 active alive 0 0
Pseudo name=harddisk2 Symmetrix ID=000195703184 Logical device ID=0159 Device WWN=60000970000195703184533030313539 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun2 c2t6d2 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun2 c2t5d2 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun1 c2t4d1 FA 7e:00 active alive 0 0 1 port1\path0\tgt6\lun2 c1t6d2 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun2 c1t5d2 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun1 c1t4d1 FA 8e:00 active alive 0 0
Pseudo name=harddisk3 Symmetrix ID=000195703184 Logical device ID=015A Device WWN=60000970000195703184533030313541 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun3 c2t6d3 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun3 c2t5d3 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun2 c2t4d2 FA 7e:00 active alive 0 0 1 port1\path0\tgt6\lun3 c1t6d3 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun3 c1t5d3 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun2 c1t4d2 FA 8e:00 active alive 0 0
Pseudo name=harddisk4 Symmetrix ID=000195703184 Logical device ID=015B Device WWN=60000970000195703184533030313542 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats ---
20
Page 21
### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun4 c2t6d4 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun4 c2t5d4 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun3 c2t4d3 FA 7e:00 active alive 0 0 1 port1\path0\tgt6\lun4 c1t6d4 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun4 c1t5d4 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun3 c1t4d3 FA 8e:00 active alive 0 0
Note: When device ID information from the source device is assigned by NDM to the target device, 32 is added to the port numbers for the target FA ports. This is done so that the host will not see the same device ID being accessed through the same director and port when the new paths are configured. In the above example, the devices are mapped to ports 28 and 29, which are displayed as ports 60 and 61. This does not apply to PP 6.2 and above where the ports are displayed correctly.

LIST THE NDM SESSIONS

There are different options that can be used to list the NDM sessions. Adding –v to the symdm list command provides more detail about the session.
C:\>symdm -sid 3184 -sg lcseb246_sg list -v
Symmetrix ID : 000195703184
Storage Group : lcseb246_sg Source Array : 000195703184 Target Array : 000197800129
Migration State : CutoverReady Total Capacity (GB) : 200.0 Done (%) : N/A
Source Configuration: OK { Storage Groups (1) : OK Masking Views (1) : OK Initiator Groups (1): OK Port Groups (1) : OK }
Target Configuration: OK { Storage Groups (1) : OK Masking Views (1) : OK Initiator Groups (1): OK Port Groups (1) : OK }
Device Pairs (4): OK
Adding -detail to -v provides information broken down by Storage Group, Masking View, Initiator Group, and Port Group from each array as well as a listing and status of the device pairs:
C:\>symdm -sid 0129 -sg lcseb246_sg list -v -detail
Symmetrix ID : 000197800129
Storage Group : lcseb246_sg
21
Page 22
Source Array : 000195703184 Target Array : 000197800129
Migration State : CutoverReady Total Capacity (GB) : 200.0 Done (%) : N/A
Source Configuration: OK { Storage Groups (1): OK { Name : lcseb246_sg Status : OK { Dev
---------------------------------------------------------------­ 00158:0015B } }
Masking Views (1): OK { Masking View Name Initiator Group Port Group Status
--------------------- --------------------- --------------------- --------­ lcseb246_mv lcseb246_ig lcseb246_pg OK }
Initiator Groups (1): OK { Name : lcseb246_ig Status : OK { Initiator WWN
---------------­ 20000025b570a00f 20000025b570b00f } }
Port Groups (1): OK { Name : lcseb246_pg Status : OK { Dirport Status
------- -----­ 08E:000 OK 07E:000 OK } } }
Target Configuration: OK { Storage Groups (1): OK { Name : lcseb246_sg
22
Page 23
Status : OK { Dev
---------------------------------------------------------------­ 00013:00016 } }
} Target Configuration: OK { Storage Groups (1): OK { Name : lcseb246_sg Status : OK { Dev
---------------------------------------------------------------­ 00013:00016 } }
Masking Views (1): OK { Masking View Name Initiator Group Port Group Status
--------------------- --------------------- --------------------- --------­ lcseb246_mv lcseb246_ig lcseb246_pg OK }
Initiator Groups (1): OK { Name : lcseb246_ig Status : OK { Initiator WWN
---------------­ 20000025b570a00f 20000025b570b00f } }
Port Groups (1): OK { Name : lcseb246_pg Status : OK { Dirport Status
------- -----­ 01D:028 OK 01D:029 OK 02D:028 OK 02D:029 OK } } }
23
Page 24
Device Pairs (4): OK { Source Target Dev Status Dev Status
------ ------ ------ -----­ 00158 OK 00013 OK 00159 OK 00014 OK 0015A OK 00015 OK 0015B OK 00016 OK }
All of the group, view, and pair information can also be listed individually. As an example, by pairs and then by storage group:
C:\>symdm -sid 0129 -sg lcseb246_sg list -v -pairs_info -detail
Symmetrix ID : 000197800129
Storage Group : lcseb246_sg Source Array : 000195703184 Target Array : 000197800129
Migration State : CutoverReady Total Capacity (GB) : 200.0 Done (%) : N/A
Device Pairs (4): OK { Source Target Dev Status Dev Status
------ ------ ------ -----­ 00158 OK 00013 OK 00159 OK 00014 OK 0015A OK 00015 OK 0015B OK 00016 OK }
C:\>symdm -sid 0129 -sg lcseb246_sg list -v -detail -sg_info
Symmetrix ID : 000197800129
Storage Group : lcseb246_sg Source Array : 000195703184 Target Array : 000197800129
Migration State : CutoverReady Total Capacity (GB) : 200.0 Done (%) : N/A
Source Configuration: OK { Storage Groups (1): OK { Name : lcseb246_sg Status : OK { Dev
24
Page 25
---------------------------------------------------------------­ 00158:0015B } }
}
Target Configuration: OK { Storage Groups (1): OK { Name : lcseb246_sg Status : OK { Dev
---------------------------------------------------------------­ 00013:00016 } }
}
A syminq run from the host following the create shows the four devices listed as SRDF R2 devices:
C:\>syminq
Device Product Device
-------------------------- --------------------------- --------------------------­Name Type Vendor ID Rev Ser Num Cap (KB)
-------------------------- --------------------------- --------------------------­\\.\PHYSICALDRIVE0 DGC VRAID 0533 255723B2 125829120
\\.\PHYSICALDRIVE1 R2 EMC SYMMETRIX 5876 8400158000 52429440 \\.\PHYSICALDRIVE2 R2 EMC SYMMETRIX 5876 8400159000 52429440 \\.\PHYSICALDRIVE3 R2 EMC SYMMETRIX 5876 840015A000 52429440 \\.\PHYSICALDRIVE4 R2 EMC SYMMETRIX 5876 840015B000 52429440

EXAMINE THE DEVICE PAIRING AND IDENTITIES FOLLOWING A CREATE

The create operation automatically configures matching volumes on the target array. These volumes will be the same size and configuration, though they will most likely not have the same VMAX volume numbers. Following the create operation the 4 new volumes on the target array are 0013 through 0016. Volume 0158 and volume 0013 are paired for NDM operations. The RDF pairing information can also be seen in the symdev show output.
C:\>symdev list -sid 3184
Symmetrix ID: 000195703184
Device Name Dir Device
---------------------------- ------- ------------------------------------­ Cap Sym Physical SA :P Config Attribute Sts (MB)
---------------------------- ------- ------------------------------------­00028 \\.\PHYSICALDRIVE5 08E:000 2-Way Mir N/Grp'd ACLX RW 3
...
00158 Not Visible ???:??? TDEV N/Grp'd RW 51201 00159 Not Visible ???:??? TDEV N/Grp'd RW 51201 0015A Not Visible ???:??? TDEV N/Grp'd RW 51201
25
Page 26
0015B Not Visible ???:??? TDEV N/Grp'd RW 51201
C:\>symdev list -sid 0129
Symmetrix ID: 000197800129
Device Name Dir Device
---------------------------- ------- ------------------------------------­ Cap Sym Physical SA :P Config Attribute Sts (MB)
---------------------------- ------- ------------------------------------­00001 \\.\PHYSICALDRIVE6 02D:028 TDEV N/Grp'd ACLX RW 6
00013 \\.\PHYSICALDRIVE7 02D:028 TDEV N/Grp'd RW 51201 00014 \\.\PHYSICALDRIVE8 02D:028 TDEV N/Grp'd RW 51201 00015 \\.\PHYSICALDRIVE9 02D:028 TDEV N/Grp'd RW 51201 00016 \\.\PHYSICALDRIVE10 02D:028 TDEV N/Grp'd RW 51201

Source Device IDs:

The native and effective device IDs are the same on the source device (0158).
C:\>symdev show 0158 -sid 3184
Device Physical Name : Not Visible
Device Symmetrix Name : 00158 Device Serial ID : N/A Symmetrix ID : 000195703184
Number of RAID Groups : 0 Encapsulated Device : No Encapsulated WWN : N/A Encapsulated Device Flags: None
Encapsulated Array ID : N/A Encapsulated Device Name : N/A Attached BCV Device : N/A
Attached VDEV TGT Device : N/A
Vendor ID : EMC Product ID : SYMMETRIX Product Revision : 5876
Device WWN : 60000970000195703184533030313538
Device Emulation Type : FBA Device Defined Label Type: N/A Device Defined Label : N/A Device Sub System Id : 0x0001 Cache Partition Name : DEFAULT_PARTITION Bound Pool Name : lcseb245-246
Device Block Size : 512
26
Page 27
Device Capacity { Cylinders : 54614 Tracks : 819210 512-byte Blocks : 104858880 MegaBytes : 51201 KiloBytes : 52429440
Geometry Limited : No }
Device External Identity { Device WWN : 60000970000195703184533030313538
...

Target Device IDs:

The native and effective target device IDs are not the same on the target device (0013). Device 0013 has a unique native device ID, but its effective ID is the same as device 0158. This is required at this stage of the migration because all device paths are active.
C:\ >symdev show 0013 -sid 0129
Device Physical Name : Not Visible
Device Symmetrix Name : 00013 Device Serial ID : N/A Symmetrix ID : 000197800129
Number of RAID Groups : 0 Encapsulated Device : No Encapsulated WWN : N/A Encapsulated Device Flags: None
Encapsulated Array ID : N/A Encapsulated Device Name : N/A Attached BCV Device : N/A
Attached VDEV TGT Device : N/A
Vendor ID : EMC Product ID : SYMMETRIX Product Revision : 5977
Device WWN : 60000970000197800129533030303133
Device Emulation Type : FBA Device Defined Label Type: N/A Device Defined Label : N/A Device Sub System Id : N/A Cache Partition Name : DEFAULT_PARTITION Bound Pool Name : SRP_1
Device Block Size : 512
27
Page 28
Device Capacity { Cylinders : 27307 Tracks : 409605 512-byte Blocks : 104858880 MegaBytes : 51201 KiloBytes : 52429440
Geometry Limited : No }
Device External Identity
{ Device WWN : 60000970000195703184533030313538
...

CANCEL A MIGRATION

At any point before a commit operation is run on a Storage Group, a migration that has not been committed may be canceled. In this example, the cancel is occurring before the cutover. This operation does not require the –revert flag because processing has not moved to the target array.
Cancelling a migration removes the storage and groups provisioned for the migration on the target array, releases resources allocated by Solutions Enabler to perform the migration, and places the source devices into the state they were in before the Create operation was run. It does not affect the replication pathways put in place with the environment setup.
C:\>symdm -sid 0129 -sg lcseb246_sg cancel -nop
A DM 'Cancel' operation is in progress for storage group 'lcseb246_sg'. Please wait...
Analyze Configuration..........................................Started.
Source SID:000195703184 Target SID:000197800129
Analyze Configuration..........................................Done.
Remove Masking View(s) on Target...............................Started.
Remove Masking View(s) on Target...............................In Progress.
Remove Masking View(s) on Target...............................Done.
Remove Data Replication........................................Started.
Remove Data Replication........................................Done.
Remove Port Group(s) on Target.................................Started.
Remove Port Group(s) on Target.................................Done.
Remove Initiator Group(s) on Target............................Started
Remove Initiator Group(s) on Target............................Done.
Remove Duplicate Device(s) on Target...........................Started.
Wait for deallocation to complete..............................Started.
Wait for deallocation to complete..............................Done.
Remove Duplicate Device(s) on Target...........................In Progress.
Remove Duplicate Device(s) on Target...........................Done.
Remove Storage Group(s) on Target..............................Started.
Remove Storage Group(s) on Target..............................Done.
The DM 'Cancel' operation successfully executed for storage group 'lcseb246_sg'.
Following the cancel operation, the host paths to the target array are no longer available. The host systems administrator should perform a rescan to remove the dead paths to the target array.
28
Page 29

PERFORM A CUTOVER TO THE TARGET ARRAY

Prior to this step, the migration session that was canceled in the last section was simply created again. The host rescan has been performed and the devices are CutoverReady:
C:\>symdm -sid 0129 -sg lcseb246_sg list -v -detail -pairs_info
Symmetrix ID : 000197800129
Storage Group : lcseb246_sg Source Array : 000195703184 Target Array : 000197800129
Migration State : CutoverReady
Total Capacity (GB) : 200.0 Done (%) : N/A
Device Pairs (4): OK { Source Target Dev Status Dev Status
------ ------ ------ -----­ 00158 OK 00013 OK 00159 OK 00014 OK 0015A OK 00015 OK 0015B OK 00016 OK }
A cutover operation moves the target devices out of pass-through mode, initiates data synchronization from the source to the target and makes the host paths to the source array inactive so that all I/Os are being serviced by the target array.
29
Page 30
Figure 5. Cutover
C:\>symdm -sg lcseb246_sg cutover -sid 0129 -nop
A DM 'Cutover' operation is in progress for storage group 'lcseb246_sg'. Please wait...
Analyze Configuration..........................................Started.
Source SID:000195703184 Target SID:000197800129
Analyze Configuration..........................................Done.
Cutover........................................................Started.
Cutover........................................................Done.
The DM 'Cutover' operation successfully executed for storage group 'lcseb246_sg'.
When the cutover operation completes, the data copy begins. The session is in a Migrating state and will remain in that state until either the pairs are cutover to the new array or other action is taken. The data movement can be monitored with symdm list using any of the options for displaying Storage Group, Masking View, Initiator Group, Port Group, and device pairs or run without any of the details:
C:\>symdm -sid 0129 -sg lcseb246_sg list
Symmetrix ID : 000197800129 Storage Group: lcseb246_sg Total Source Target Capacity Done Array Array State (GB) (%)
------------ ------------ -------------- --------- ---­000195703184 000197800129 Migrating 200.0 67
30
Page 31
C:\>symdm -sid 0129 -sg lcseb246_sg list -v -detail -pairs_info
Symmetrix ID : 000197800129
Storage Group : lcseb246_sg Source Array : 000195703184 Target Array : 000197800129
Migration State : Migrating Total Capacity (GB) : 200.0 Done (%) : 37
Device Pairs (4): OK { Source Target Dev Status Dev Status
------ ------ ------ -----­ 00158 OK 00013 OK 00159 OK 00014 OK 0015A OK 00015 OK 0015B OK 00016 OK }
C:\>symdm -sid 0129 -sg lcseb246_sg list
Symmetrix ID : 000197800129 Storage Group: lcseb246_sg Total Source Target Capacity Done Array Array State (GB) (%)
------------ ------------ -------------- --------- ---­000195703184 000197800129 Migrating 200.0 100
The volumes are now in a CutoverSync state.
C:\>symdm -sid 0129 -sg lcseb246_sg list
Symmetrix ID : 000197800129 Storage Group: lcseb246_sg Total Source Target Capacity Done Array Array State (GB) (%)
------------ ------------ -------------- --------- ---­000195703184 000197800129 CutoverSync 200.0 N/A
Note: The symdm list command will only show 100% done for a very brief period of time. When the session transitions to a CutoverSync state it will always be 100% synchronized.
31
Page 32
Figure 6. CutoverSynchronized
Following a cutover, the two paths to the source array are inactive (FAs 7e:00 and 8e:00) and the four paths to the target are active. In PowerPath, the terms used are "dead" and "alive".
Note: The PowerPath mode is "active" for all paths. This is a PowerPath term and is unrelated to the active and inactive path states in NDM terminology. PowerPath will show the state of the path and whether it is alive or dead in the “state” field.
C:>powermt display dev=all Pseudo name=harddisk1 Symmetrix ID=000195703184 Logical device ID=0158 Device WWN=60000970000195703184533030313538 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun1 c2t6d1 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun1 c2t5d1 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun0 c2t4d0 FA 7e:00 active dead 0 0 1 port1\path0\tgt6\lun1 c1t6d1 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun1 c1t5d1 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun0 c1t4d0 FA 8e:00 active dead 0 0
Pseudo name=harddisk2 Symmetrix ID=000195703184
32
Page 33
Logical device ID=0159 Device WWN=60000970000195703184533030313539 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun2 c2t6d2 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun2 c2t5d2 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun1 c2t4d1 FA 7e:00 active dead 0 0 1 port1\path0\tgt6\lun2 c1t6d2 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun2 c1t5d2 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun1 c1t4d1 FA 8e:00 active dead 0 0
Pseudo name=harddisk3 Symmetrix ID=000195703184 Logical device ID=015A Device WWN=60000970000195703184533030313541 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun3 c2t6d3 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun3 c2t5d3 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun2 c2t4d2 FA 7e:00 active dead 0 0 1 port1\path0\tgt6\lun3 c1t6d3 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun3 c1t5d3 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun2 c1t4d2 FA 8e:00 active dead 0 0
Pseudo name=harddisk4 Symmetrix ID=000195703184 Logical device ID=015B Device WWN=60000970000195703184533030313542 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun4 c2t6d4 FA 1d:61 active alive 0 0 2 port2\path0\tgt5\lun4 c2t5d4 FA 1d:60 active alive 0 0 2 port2\path0\tgt4\lun3 c2t4d3 FA 7e:00 active dead 0 0 1 port1\path0\tgt6\lun4 c1t6d4 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun4 c1t5d4 FA 2d:60 active alive 0 0 1 port1\path0\tgt4\lun3 c1t4d3 FA 8e:00 active dead 0 0
Once the data copy is done, the migration for that storage group can be completed with a commit or the host access can be reverted back to the source array from the target array and the migration can be cancelled.
33
Page 34

EXAMINE THE DEVICE IDENTITIES FOLLOWING A CUTOVER

The device IDs used on the source and target devices have not changed following the Cutover operation. The target devices are still using the effective WWN of the source devices. The source devices still have the same native and effective IDs.

Source device:

C:\>symdev show 0158 -sid 3184
Device Physical Name : Not Visible
Device Symmetrix Name : 00158 Device Serial ID : N/A Symmetrix ID : 000195703184
Number of RAID Groups : 0 Encapsulated Device : No Encapsulated WWN : N/A Encapsulated Device Flags: None
Encapsulated Array ID : N/A Encapsulated Device Name : N/A Attached BCV Device : N/A
Attached VDEV TGT Device : N/A
Vendor ID : EMC Product ID : SYMMETRIX Product Revision : 5876
Device WWN : 60000970000195703184533030313538
Device Emulation Type : FBA Device Defined Label Type: N/A Device Defined Label : N/A Device Sub System Id : 0x0001 Cache Partition Name : DEFAULT_PARTITION Bound Pool Name : lcseb245-246
Device Block Size : 512
Device Capacity { Cylinders : 54614 Tracks : 819210 512-byte Blocks : 104858880 MegaBytes : 51201 KiloBytes : 52429440
Geometry Limited : No }
Device External Identity { Device WWN : 60000970000195703184533030313538
...

Target device:

34
Page 35
C:\>symdev show 013 -sid 0129
Device Physical Name : Not Visible
Device Symmetrix Name : 00013 Device Serial ID : N/A Symmetrix ID : 000197800129
Number of RAID Groups : 0 Encapsulated Device : No Encapsulated WWN : N/A Encapsulated Device Flags: None
Encapsulated Array ID : N/A Encapsulated Device Name : N/A Attached BCV Device : N/A
Attached VDEV TGT Device : N/A
Vendor ID : EMC Product ID : SYMMETRIX Product Revision : 5977
Device WWN : 60000970000197800129533030303133
Device Emulation Type : FBA Device Defined Label Type: N/A Device Defined Label : N/A Device Sub System Id : N/A Cache Partition Name : DEFAULT_PARTITION Bound Pool Name : SRP_1
Device Block Size : 512
Device Capacity { Cylinders : 27307 Tracks : 409605 512-byte Blocks : 104858880 MegaBytes : 51201 KiloBytes : 52429440
Geometry Limited : No }
Device External Identity {
Device WWN : 60000970000195703184533030313538
...

REVERT TO THE SOURCE ARRAY

Because the migration is not permanent until the commit operation is run, after a cutover, the migration can still be cancelled and reverted to the source array. To revert back to the source array following a cutover, a cancel is run with the -revert option.
The -revert option moves the processing back to the source array and the cancel removes all of the target side entities created for the migration. This operation will leave the environment in the same state as it was prior to the create operation.
35
Page 36
The revert operation may take some time to run. As the revert is running, the host will discover that the paths to the source array are active again. This is monitored by the VMAX, which will wait for the rediscovery before proceeding.
C:\>symdm cancel -sid 0129 -sg lcseb246_sg -revert -nop
A DM 'Cancel Revert' operation is in progress for storage group 'lcseb246_sg'. Please wait...
Analyze Configuration..........................................Started.
Source SID:000195703184 Target SID:000197800129
Analyze Configuration..........................................Done.
Revert Data Replication........................................Started.
Revert Data Replication........................................In Progress.
Revert Data Replication........................................Done.
Remove Masking View(s) on Target...............................Started.
Remove Masking View(s) on Target...............................In Progress.
Remove Masking View(s) on Target...............................Done.
Remove Data Replication........................................Started.
Remove Data Replication........................................Done.
Remove Port Group(s) on Target.................................Started.
Remove Port Group(s) on Target.................................Done.
Remove Initiator Group(s) on Target............................Started
Remove Initiator Group(s) on Target............................Done.
Remove Duplicate Device(s) on Target...........................Started.
Wait for deallocation to complete..............................Started.
Wait for deallocation to complete..............................Done.
Remove Duplicate Device(s) on Target...........................In Progress.
Remove Duplicate Device(s) on Target...........................Done.
Remove Storage Group(s) on Target..............................Started.
Remove Storage Group(s) on Target..............................Done.
The DM 'Cancel Revert' operation successfully executed for storage group 'lcseb246_sg'.
After a revert operation, the state of the devices and the systems are the same as they were prior to the create operation.
Note: Following the cancel -revert operation, the host paths to the target array are no longer available. The paths to the source array should be returned to the original configuration to avoid Data Unavailability. A host HBA rescan should be undertaken to ensure application stability. Note: The revert operation may take some time to complete. The “Revert Data Replication” step will repeat and remain “In Progress” until the step is complete. However the application will immediately be reverted back to operating on the source array. The length of the revert task is based around the time the target array takes to deallocate the target devices and clean up after the cancelled migration.
36
Page 37

COMMIT A MIGRATION

When the data copy is complete, the migration can be committed. The commit operation completes the migration by removing the migrated application resources from the source array and temporary system resources used for the migration. To commit, the state of the migration sessions must be CutoverSync or CutoverNoSync.
Figure 7. Commit
Once the commit is complete, replication between the source and target arrays is terminated. The source devices are no longer be visible to a host because the masking has been removed. The source device IDs have also been permanently swapped with the target device IDs.
C:\>symdm commit -sid 0129 -sg lcseb246_sg -nop
A DM 'Commit' operation is in progress for storage group 'lcseb246_sg'. Please wait...
Analyze Configuration..........................................Started.
Source SID:000195703184 Target SID:000197800129
Analyze Configuration..........................................Done.
Remove Masking View(s) on Source...............................Started.
Remove Masking View(s) on Source...............................Done.
Remove Data Replication........................................Started.
37
Page 38
Remove Data Replication........................................Done.
The DM 'Commit' operation successfully executed for storage group 'lcseb246_sg'.

PERFORM A HOST RESCAN

After commit operation completes the systems administrator can issue a host rescan to allow the host to clean up the dead paths left by the removed paths to the source array. This host rescan is OS specific and also should include a rescan using the host multipathing software if it must be performed separately from the host rescan, as with PowerPath. See Appendix A for more details on the host multipathing software.
Because the commit completes the migration and removes all of the source side masking, there are no longer any paths seen to the source array. Only the four paths to the target array remain configured:
C:\>powermt display dev=all Pseudo name=harddisk1 Symmetrix ID=000195703184 Logical device ID=0158 Device WWN=60000970000195703184533030313538 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun1 c2t6d1 FA 1d:60 active alive 0 0 2 port2\path0\tgt5\lun1 c2t5d1 FA 1d:61 active alive 0 0 1 port1\path0\tgt6\lun1 c1t6d1 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun1 c1t5d1 FA 2d:60 active alive 0 0
Pseudo name=harddisk2 Symmetrix ID=000195703184 Logical device ID=0159 Device WWN=60000970000195703184533030313539 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun2 c2t6d2 FA 1d:60 active alive 0 0 2 port2\path0\tgt5\lun2 c2t5d2 FA 1d:61 active alive 0 0 1 port1\path0\tgt6\lun2 c1t6d2 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun2 c1t5d2 FA 2d:60 active alive 0 0
Pseudo name=harddisk3 Symmetrix ID=000195703184 Logical device ID=015A Device WWN=60000970000195703184533030313541 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun3 c2t6d3 FA 1d:60 active alive 0 0 2 port2\path0\tgt5\lun3 c2t5d3 FA 1d:61 active alive 0 0
38
Page 39
1 port1\path0\tgt6\lun3 c1t6d3 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun3 c1t5d3 FA 2d:60 active alive 0 0
Pseudo name=harddisk4 Symmetrix ID=000195703184 Logical device ID=015B Device WWN=60000970000195703184533030313542 state=alive; policy=SymmOpt; queued-IOs=0 ==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats --­### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 2 port2\path0\tgt6\lun4 c2t6d4 FA 1d:60 active alive 0 0 2 port2\path0\tgt5\lun4 c2t5d4 FA 1d:61 active alive 0 0 1 port1\path0\tgt6\lun4 c1t6d4 FA 2d:61 active alive 0 0 1 port1\path0\tgt5\lun4 c1t5d4 FA 2d:60 active alive 0 0
The devices are no longer SRDF devices and the host is accessing devices on the target array only. The source devices are no longer accessible, though they are not removed by NDM.
C:\>symdev show 013 -sid 0129
Device Physical Name : \\.\PHYSICALDRIVE11
Device Symmetrix Name : 00013 Device Serial ID : 2900013000 Symmetrix ID : 000197800129
Number of RAID Groups : 0 Encapsulated Device : No Encapsulated WWN : N/A Encapsulated Device Flags: None
Encapsulated Array ID : N/A Encapsulated Device Name : N/A Attached BCV Device : N/A
Attached VDEV TGT Device : N/A
Vendor ID : EMC Product ID : SYMMETRIX Product Revision : 5977 Device WWN : 60000970000197800129533030303133 Device Emulation Type : FBA Device Defined Label Type: N/A Device Defined Label : N/A Device Sub System Id : N/A Cache Partition Name : DEFAULT_PARTITION Bound Pool Name : SRP_1
Device Block Size : 512
Device Capacity { Cylinders : 27307 Tracks : 409605 512-byte Blocks : 104858880
39
Page 40
MegaBytes : 51201 KiloBytes : 52429440
Geometry Limited : No }
Device External Identity { Device WWN : 60000970000195703184533030313538
Front Director Paths (4): {
-----------------------------------­ DIRECTOR PORT LUN
------------ ---- -------- --------­ Type Num Sts VBUS TID SYMM Host
-----------------------------------­ FA 02D:030 RW N/A N/A N/A 001 FA 01D:030 RW N/A N/A N/A N/A FA 01D:031 RW N/A N/A N/A N/A FA 02D:031 RW N/A N/A N/A N/A } Geometry : User Defined { Sectors/Track : 128 Tracks/Cylinder : 15 Cylinders : 54614 512-byte Blocks : 104858880 MegaBytes : 51201 KiloBytes : 52429440 } } Device Configuration : TDEV
SCSI-3 Persistent Reserve: Enabled
Dynamic Spare Invoked : No
Dynamic RDF Capability : RDF1_OR_RDF2_Capable
STAR Mode : No STAR Recovery Capability : None STAR Recovery State : NA SQAR_MODE : No
Device Service State : Normal
Device Status : Ready (RW) Device SA Status : Ready (RW) Device User Pinned : False Host Access Mode : Active Device Tag(s) : None
Extent Based Clone : None Snapvx Source : False Snapvx Target : False Data Destaged : True
40
Page 41
DIF1 Flag : False Gatekeeper Device : False AS400_GK : False Host Cache Registered : False Optimized Read Miss : N/A
Front Director Paths (4): {
----------------------------------------------------------------------­ POWERPATH DIRECTOR PORT LUN
--------- ------------ ---- -------- --------­ PdevName Type Type Num Sts VBUS TID SYMM Host
----------------------------------------------------------------------­ \\.\PHYSICALDRIVE11 N/A FA 02D:028 RW N/A N/A N/A 001 Not Visible N/A FA 01D:028 RW N/A N/A N/A N/A Not Visible N/A FA 01D:029 RW N/A N/A N/A N/A Not Visible N/A FA 02D:029 RW N/A N/A N/A N/A }
Mirror Set Type : [Thin,N/A,N/A,N/A]
Mirror Set DA Status : [RW,N/A,N/A,N/A]
Mirror Set Inv. Tracks : [0,0,0,0]
Mirror Configuration Information { Mirror Number : 1 Mirror Type : Thin Mirror Status : Ready (RW) }

COMPARE THE PRE AND POST DEVICE IDENTITIES FOLLOWING A COMMIT

Following the commit operation, each device presents the opposite device ID. The source device now presents the target device ID as its external identity and the target presents the source device ID as its external identity. These changes are permanent and will persist across system power cycles and even the deletion and recreation of the devices. In other words, if device 158 is deleted, when recreated, it will still show the identity of device 0013.

Source Device:

C:\>symdev show 0158 -sid 3184
Device Physical Name : Not Visible
Device Symmetrix Name : 00158 Device Serial ID : N/A Symmetrix ID : 000195703184
Number of RAID Groups : 0 Encapsulated Device : No Encapsulated WWN : N/A Encapsulated Device Flags: None
Encapsulated Array ID : N/A Encapsulated Device Name : N/A Attached BCV Device : N/A
41
Page 42
Attached VDEV TGT Device : N/A
Vendor ID : EMC Product ID : SYMMETRIX Product Revision : 5876
Device WWN : 60000970000195703184533030313538
Device Emulation Type : FBA Device Defined Label Type: N/A Device Defined Label : N/A Device Sub System Id : 0x0001 Cache Partition Name : DEFAULT_PARTITION Bound Pool Name : lcseb245-246
Device Block Size : 512
Device Capacity { Cylinders : 54614 Tracks : 819210 512-byte Blocks : 104858880 MegaBytes : 51201 KiloBytes : 52429440
Geometry Limited : No }
Device External Identity { Device WWN : 60000970000197800129533030303133
...

Target device:

C:\>symdev show 013 -sid 0129
Device Physical Name : Not Visible
Device Symmetrix Name : 00013 Device Serial ID : N/A Symmetrix ID : 000197800129
Number of RAID Groups : 0 Encapsulated Device : No Encapsulated WWN : N/A Encapsulated Device Flags: None
Encapsulated Array ID : N/A Encapsulated Device Name : N/A Attached BCV Device : N/A
Attached VDEV TGT Device : N/A
Vendor ID : EMC Product ID : SYMMETRIX
42
Page 43
Product Revision : 5977
Device WWN : 60000970000197800129533030303133
Device Emulation Type : FBA Device Defined Label Type: N/A Device Defined Label : N/A Device Sub System Id : N/A Cache Partition Name : DEFAULT_PARTITION Bound Pool Name : SRP_1
Device Block Size : 512
Device Capacity { Cylinders : 27307 Tracks : 409605 512-byte Blocks : 104858880 MegaBytes : 51201 KiloBytes : 52429440
Geometry Limited : No }
Device External Identity { Device WWN : 60000970000195703184533030313538
...
Note: the native identities of devices can be displayed by adding the –native option to syminq. Also with the release of PowerPath 6.2 both native and effective IDs will be displayed.

USE THE RECOVER COMMAND

The recover command can be used if a migration step fails due to some problem in the environment, such as a connectivity issue between the source and target arrays or the failure of a command to complete that leaves an NDM operation only partially finished. In this example, a create failed because of a transient issue on the target array. The transient issue resolved itself within seconds and a recover operation was immediately run. The recover operation picks up where the create command failed and completes the create operation.
C:\>symdm create -src_sid 3184 -tgt_sid 0129 -sg lcseb246_sg -nop
A DM 'Create' operation is in progress for storage group 'lcseb246_sg'. Please wait...
The migration session is not in a valid DM state for this operation
C:\>symdm -sid 0129 -sg lcseb246_sg list
Symmetrix ID : 000197800129 Storage Group: lcseb246_sg Total Source Target Capacity Done Array Array State (GB) (%)
------------ ------------ -------------- --------- ---­000195703184 000197800129 CreateFailed 200.0 N/A
The recover operation picks up where the create command failed and completes the create operation.
43
Page 44
C:\>symdm recover -sg lcseb246_sg -nop -sid 3184
A DM 'Recover' operation is in progress for storage group 'lcseb246_sg'. Please wait...
Analyze Configuration..........................................Started.
Analyze Configuration..........................................Done.
Create Storage Group(s)........................................Started.
Create Storage Group(s)........................................Done.
Create Initiator Group(s)......................................Started.
Create Initiator Group(s)......................................Done.
Create Port Group(s)...........................................Started.
Create Port Group(s)...........................................Done.
Duplicate Device(s)............................................Started.
Duplicate Device(s)............................................In Progress.
Duplicate Device(s)............................................Done.
Initiate Data Replication......................................Started.
Initiate Data Replication......................................In Progress.
Initiate Data Replication......................................In Progress.
Initiate Data Replication......................................Done.
Create Masking View(s).........................................Started.
Create Masking View(s).........................................Done.
Update Device State............................................Started.
Update Device State............................................Done.
The DM 'Recover' operation successfully executed for storage group 'lcseb246_sg'.

REMOVE THE MIGRATION ENVIRONMENT

Running the environment remove takes down the replication pathway configured by the environment setup operation, deletes the RDF group, and removes all resources that were used to support NDM on the source and target arrays. Upon successful completion of an environment remove operation, the only NDM operation that can be run is an environment setup.
This command is run when all of the storage groups have migrated off of the source array.
C:\>symdm -src_sid 3184 -tgt_sid 0129 environment -remove -nop
A DM 'Environment Remove' operation is in progress. Please wait...
Analyze Configuration..........................................Started.
Source SID:000195703184 Target SID:000197800129
Analyze Configuration..........................................Done.
Remove Configuration...........................................Started.
Remove Configuration...........................................Done.
The DM 'Environment Remove' operation successfully executed.
44
Page 45

PRERFORMING NDM OPERATIONS USING UNISPHERE

Prior to any NDM operation, the application is running in production against the source VMAX array. A VMAX All Flash, which will be the target of the migration in this example, has been attached physically, zoned to the host, and has been discovered by Unisphere.
Figure 8. Pre-Migration with Prerequisites Completed
The All Flash, along with the source 40K, is locally attached, meaning directly connected to the host and not discovered as a remote array via SRDF. Both arrays will appear as local arrays if the Unisphere host is directly attached to both. This is not required for NDM operations. Only the host being migrated is required to be directly attached to both arrays.
Note: In the lab environment used here, the Solutions Enabler commands are run from the host that is being migrated. That is acceptable for non-production environments but it is not recommended for production hosts. The SE or Unisphere control host should be a separate management host, not a host with volumes being migrated.
45
Page 46
There are four, 50 GB data volumes presented to the host from the source array (volumes 0158 to 015B). They are non-SRDF volumes.
46
Page 47
C:\>syminq
Device Product Device
-------------------------- --------------------------- --------------------------­Name Type Vendor ID Rev Ser Num Cap (KB)
-------------------------- --------------------------- --------------------------­
\\.\PHYSICALDRIVE21 EMC SYMMETRIX 5876 8400158000 52429440 \\.\PHYSICALDRIVE22 EMC SYMMETRIX 5876 8400159000 52429440 \\.\PHYSICALDRIVE23 EMC SYMMETRIX 5876 840015A000 52429440 \\.\PHYSICALDRIVE24 EMC SYMMETRIX 5876 840015B000 52429440
After completing the prerequisites, the application host or cluster is zoned to the target array FA ports. The ports that the target devices will be masked to is determined automatically by NDM based on where the host HBAS are zoned.

EXAMINE THE MULTIPATHING CONFIGURATION

PowerPath shows what the pathing looks like prior to the create and the host rescan. For each of the four selected volumes, there are two paths to the source array, which are both alive, meaning that they are available for host use. There are no paths yet to the target array.
Note: Workload Planner (WLP) is a Unisphere utility that can be used to determine the ideal target ports to use for an NDM migration. If WLP is used, it must be run from a control host that has access to both arrays. It cannot be run from Embedded Unisphere for VMAX.
Note: The Windows disk numbers will change in the output due to changes in the test environment.

SET UP THE ENVIRONMENT

Once the required pre-migration tasks are completed, the environment can be setup using NDM. All further steps required to setup and perform the migrations will now be handled automatically by NDM. To start the setup, click on the Storage menu followed by Migrations.
The Environment Setup configures the migration environment that will be required to migrate any application from the source array to the target array. It confirms that both the source and target arrays can support the NDM operations. This includes ensuring that a useable replication pathway for data migration is available between the source and target arrays. The setup only must be run once. When the migration pathways are configured, any storage groups can be migrated until all migrations from the source to the target are complete.
47
Page 48
Select the Data Protection tab in Unisphere 8.4 or later. ( Prerviously: Storage – Migrations – Manage Environments)

Click the Manage Environments Option.

Click the Setup option and choose the Remote array for the migration, and select Run Now.
When the task completes the Source and Target arrays are displayed in a State of OK, indicating migrations are now possible between the arrays listed.
Note: Workload Planner (WLP) is a Unisphere utility that can be used to determine the ideal target ports to use for an NDM migration. If WLP is used, it must be run from a control host that has access to both arrays. It cannot be run from Embedded Unisphere for VMAX.
48
Page 49

CREATE MIGRATION SESSIONS

Unisphere examines a specific application’s storage on the source array and automatically provisions equivalent storage on the target array. The target devices are assigned the identity of the source devices and are configured in a Passthrough mode that allows the data to be accessed from both the source and target devices.
Prior to running the create, the target array resources can be validated to ensure that the target array has the resources required to configure the migration sessions. Click on the storage group to select it, click the double angle brackets, and click Manage.

Select the remote VMAX array from the "Symmetrix" pulldown menu. Select the desired SRP from the "SRP" pulldown menu.

49
Page 50

Click the Create Data Migration radio button and click Next.

Note: If compression is available on a VMAX All Flash target array, a "Compression" checkbox will appear on this screen.
50
Page 51
View the summary. Click the angle bracket next to "Add to Job List" and click Run Now
Confirm that the migration session was created.
51
Page 52
Figure 9. Created
Note: During an NDM migration, the source of the migration will be an R2 or an R21 device (if there is existing SRDF DR replication from the source device) and the target will be an R1 device. This is different than basic SRDF operations and is required to allow DR protection during a migration using a cascaded SRDF configuration. See the section entitled ADDING DISASTER RECOVERY TO THE TARGET ARRAY” for more details.
52
Page 53

PERFORM A HOST RESCAN

After the create operation completes the systems administrator must issue a host rescan to allow the host to discover the paths to the newly created devices. This host rescan is OS specific and also should include a rescan using the host multipathing software if it must be performed separately from the host rescan, as with PowerPath.
Devices go into a CutoverReady state from a Created state after the host rescan is performed and the target devices are discoverable. After this is complete, I/O issued by the application will be directed to either the source or the target arrays through the host multipathing software. This is possible because the target devices are in Passthrough mode. See Appendix A for more details on the host multipathing software.

CUTOVERREADY AND PASSTHROUGH MODE

Passthrough mode allows the host to write to or read from either the source or target array. Any write that in sent to the target array will be sent across the SRDF link and serviced by the source array. No data will be kept on the target array while in a CutoverReady state.
The CutoverReady state is a transitional state. The devices should only be in a CutoverReady state and using pass-through mode for as long as it takes to check that the Create has succeeded properly, to run the host rescan, and to run the Cutover operation.
Figure 10. Figure 10. CutoverReady and Passthrough Mode
53
Page 54

Go to Storage > Migration again to view the migration session and a high level view of its properties and state.

Note: During an NDM migration, the source of the migration will be an R2 or an R21 device (if there is existing SRDF DR replication from the source device) and the target will be an R1 device. This is different than basic SRDF operations and is required to allow DR protection during a migration using a cascaded SRDF configuration. See the section entitled ADDING DISASTER RECOVERY TO THE TARGET ARRAY” for more details.
PowerPath shows all paths to the source and target devices as alive. HYPERMAX OS will ensure that all I/Os that are directed to the target array by the host are actually serviced by the source array until the cutover.
The paths will all remain in an alive state until after the commit operation.

VIEW MIGRATION SESSION DETAILS

Double Click the migration session to view details about it and the groups that the volumes, ports, and initiators belong to. For more
information, the view and groups on the left side of the GUI can be selected and will display details on the right side. In this case, the port group is selected. Selecting "View Volumes" will show the source and target device pairs.
54
Page 55

EXAMINE THE DEVICE IDENTITIES FOLLOWING A CREATE

The create operation automatically configures matching volumes on the target array. These volumes will be the same size and configuration, though they will most likely not have the same VMAX volume numbers. Following the create operation the 4 new volumes on the target array are 0166 through 0169. Volume 0166 and volume 002E are paired for NDM operations.

Source Device ID:

The native and effective device IDs are the same on the source device (0166):
55
Page 56

Target Device IDs:

The native and effective target device IDs are not the same on the target device (001D). Device 001D has a unique native device ID, but its effective ID is the same as device 0158. This is required at this stage of the migration because all device paths are active.
56
Page 57

CANCEL A MIGRATION

At any point before a commit operation is run on a Storage Group, a migration that has not been committed may be canceled. In this example, the cancel is occurring before the cutover. This operation does not require the revert flag because processing has not moved to the target array.
Cancelling a migration removes the storage and groups provisioned for the migration on the target array, releases resources allocated by Solutions Enabler to perform the migration, and places the source devices into the state they were in before the Create operation was run. It does not affect the replication pathways put in place with the environment setup.
To cancel the migration, click the double angle brackets and click Cancel Migration.
57
Page 58

Click the angle bracket next to "Add to Job List" and click Run Now.

Note: The "Revert" option will have a checkbox when a revert operation is applicable. It is not required before running a cancel operation while the SG is in a CutoverReady state.
58
Page 59

PERFORM A RESCAN FOLLOWING A CANCEL

Following the cancel operation, the host paths to the target array are no longer available. The host systems administrator should perform a rescan to remove the dead paths to the target array.

PERFORM A CUTOVER TO THE TARGET ARRAY

Prior to this step, the migration session that was cancelled in the last step was simply created again. The host also rescanned for devices, so the pairs are in a CutoverReady state.

To cut the storage group over to the target, click Cutover.

59
Page 60
Click the angle bracket next to "Add to Job List" and click Run Now”.
60
Page 61
A cutover operation moves the target devices out of pass-through mode, initiates data synchronization from the source to the target and makes the host paths to the source array inactive so that all I/Os are being serviced by the target array.
61
Page 62
Figure 11. Cutover
When the cutover operation completes, the data copy begins. The session is in a Migrating state and will remain in that state until either the pairs are cutover to the new array or other action is taken.
The volumes are now in a CutoverSync state.
62
Page 63
Figure 12. CutoverSynchronized
Following a cutover, the two paths to the source array are inactive (FAs 7e:00 and 8e:00) and the four paths to the target are active. In PowerPath, the terms used are "dead" and "alive".
Note: The PowerPath mode is "active" for all paths. This is a PowerPath term and is unrelated to the active and inactive path states in NDM terminology. PowerPath will show the state of the path and whether it is alive or dead in the “state” field.
Following the cutover, two paths are dead and the devices are degraded.
63
Page 64
Once the data copy is done, the migration for that storage group can be completed with a commit or the host access can be reverted back to the source array from the target array and the migration can be cancelled.

EXAMINE THE DEVICE IDENTITIES FOLLOWING A CUTOVER

The device IDs used on the source and target devices have not changed following the Cutover operation. The target devices are still using the effective WWN of the source devices. The source devices still have the same native and effective IDs.
64
Page 65

Source device:

65
Page 66

Target device:

REVERT TO THE SOURCE ARRAY

Because the migration is not permanent until the commit operation is run, after a cutover, the migration can still be cancelled and reverted to the source array. To revert back to the source array following a cutover, a cancel is run with the revert option.
The revert option moves the processing back to the source array and the cancel removes all of the target side entities created for the migration. This operation will leave the environment in the same state as it was prior to the create operation. The revert operation may
66
Page 67
take some time to run. As the revert is running, the host will discover that the paths to the source array are active again. This is monitored by the VMAX, which will wait for the rediscovery before proceeding.
To cancel the migration, click the double angle brackets and click Cancel Migration.
At the Cancel Migration dialog box, make sure the “Revert” box is checked. Click the angle bracket next to "Add to Job List" and
click “Run Now”.
67
Page 68

PERFORM A RESCAN FOLLOWING A CANCEL REVERT

Note: Following the cancel -revert operation, the host paths to the target array are no longer available. The paths to the source array should be returned to the original configuration to avoid Data Unavailability. A host HBA rescan should be undertaken to ensure application stability.
Note: The cancel -revert operation may take some time to complete. The “Revert Data Replication” step will repeat and remain “In Progress” until the step is complete.
68
Page 69

COMMIT A MIGRATION

When the data copy is complete, the migration can be committed. The commit operation completes the migration by removing the migrated application resources from the source array and releases temporary system resources used for the migration.
Once the commit is complete, replication between the source and target arrays is terminated. The source devices are no longer be visible to a host because the masking has been removed. The source device IDs have also been permanently swapped with the target device IDs.
Figure 13. Commit
To commit, the state of the migration sessions must be CutoverSync or CutoverNoSync. Click Commit.
69
Page 70

To commit the migration, click the angle bracket next to "Add to Job List" and click Run Now.

After the commit operation succeeds, the migration is complete. Because the commit completes the migration and removes all of the source side masking, there are no longer any active paths seen to
the source array.
70
Page 71
The four remaining active paths are the four paths to the target array.

COMPARING THE PRE AND POST DEVICE IDENTITIES FOLLOWING A COMMIT

Following the commit operation, each device presents the opposite device ID. The source device now presents the target device ID as its external identity and the target presents the source device ID as its external identity. These changes are permanent and will persist across system power cycles and even the deletion and recreation of the devices. In other words, if device 166 is deleted, when recreated, it will still show the identity of device 001D.
71
Page 72

Source Device:

72
Page 73

Target Device:

73
Page 74

GEOMETRY COMPATIBILITY MODE (GCM)

During NDM, user defined geometry is set on all devices within the SG.To allow the expansion of target devices post migration we will require the geometry to be set to Native. This will require Solutions Enabler 8.4 and is user configurable at this level.
In the case where the device being migrated was an odd cylinder count the GCM flag will also be set. This flag is not currently user configurable. Expansion of such devices will require the LUN to be taken offline and adjusted by contacting Dell EMC support. This is to be rectified in the next Hypermax OS release and will be user adjustable as long as the LUN is not in a replication session.

USE THE RECOVER COMMAND

The recover command can be used if a migration step fails due to some problem in the environment, such as a connectivity issue between the source and target arrays or the failure of a command to complete that leaves an NDM operation only partially finished.
In this example, a commit failed because of a transient issue on the target array. The transient issue resolved itself and a recover operation was immediately run. The recover operation picks up where the command failed and completes the commit operation.

To run the recover, click the double angle brackets and click Recover.

74
Page 75

Click the angle bracket next to "Add to Job List" and click Run Now.

75
Page 76

REMOVE THE ENVIRONMENT

Running the environment remove takes down the replication pathway configured by the environment setup operation, and removes the resources that were configured to support NDM on the source and target arrays. Upon successful completion of an environment remove operation, only running an environment setup operation is allowed. This should be run only after all migrations from the source array have been completed.

From the Data Protection Tab , click the Manage Environments Option.

76
Page 77
From the Migration Environments screen select the environment you want to remove and select Remove. Once the task has complete the Environment is no longer available for migrations and will need to be setup should further migrations be
required.

ADD DISASTER RECOVERY TO THE TARGET ARRAY

Prior to a migration, many environments contain both local Snap/VX sessions and SRDF remote replication sessions.
77
Page 78
The Diagram shows what a migration with existing SRDF replication would look like after a create operation has been performed. This is a configuration that closely resembles a regular cascaded SRDF environment. The main difference is that in a created state, the host can access the R1 or the R21. In most SRDF environments, only the R1 or R2 can be written to, never both at the same time. The exceptions to this are NDM and SRDF/Metro.
During an NDM migration, DR is preserved by configuring local and remote replication (SRDF and Snap/VX) when the NDM session
is in a CutoverSync state. The following diagram shows the configuration with existing SRDF replication and what the environment looks like following the configuration of SRDF on the target volumes.
7
78
Page 79

APPENDIX A: HOST MULTIPATHING SOFTWARE NOTES AND SETTINGS

This section describes best practices for using multi-pathing software in an NDM environment. Refer to the NDM Support Matrix for the latest operating system and multi-pathing software combinations.

AIX NATIVE MULTI-PATHING SOFTWARE

For Native Multipathing on AIX, best practice is to use the following settings for MPIO: algorithm = round_robin (other algorithms may also be used)
check_cmd = inquiry queue_depth = 32 reserve_policy = PR_shared

LINUX NATIVE MULTI-PATHING SOFTWARE (DEVICE MAPPER)

Use reload/rescan multipath (multipath -r command) to detect and add new paths. Use the default /etc/multipath.conf file. The following options are best practices to help the operating system and multi-pathing software detect path changes efficiently:
Path_grouping_policy multibus path_checker tur features "1 queue_if_no_path" path_selector "round-robin 0" no_path_retry 10

POWERPATH (VERSION 5.7 AND ABOVE)

Use the default Powerpath multi-path settings.
To detect, rescan, and configure new paths use the powermt config command. Specifically for Linux use /etc/opt/emcpower/emcplun_linux scan all –noprompt may be used. This will rescan and perform a powermt config. Refer to the PowerPath for Linux manual on http://support.emc.com for further information.
Use Powerpath commands/scripts to scan (on Linux: /usr/bin/rescan_scsi_bus.sh -r) and remove stale paths (powermt check).
The powermt restore command can be used to detect path changes faster than PowerPath will discover them on its own.
Note: See Appendix B for important information regarding PowerPath and AIX 6.x with GPFS.

POWERPATH WITH SOLARIS

For Solaris with PowerPath, a cancel revert operation will end with the session in a “CancelFailed” state. The host paths to the source array running 5876 must be recovered using cfgadm.
For example, to recover the dead paths one by one:
cfgadm -c configure c5::50000973f001d109
cfgadm -c configure c5::50000973f001d105
cfgadm -c configure c4::50000973f001d109
cfgadm -c configure c4::50000973f001d105
To recover all paths on a controller:
cfgadm –c configure c4
79
Page 80
cfgadm –c configure c5
Once the paths are online, the cancel revert can be resumed by performing an NDM recover operation.

WINDOWS 2012 WITH MPIO

Use default MPIO settings with the following parameters enabled: PathVerifyEnabled - Enable for optimal results with path discovery. PathVerificationPeriod - Set a time in seconds for automatic path detections. Dell EMC recommends setting it to lowest allowed value
between 10 and 30 seconds.

VERITAS DYNAMIC MULTI-PATHING

Configure DMP tunable parameters to NDM required values from the application host: Check and modify the following DMP tunable parameters. If the parameter values are not set to the default values,
note settings so the parameters can be returned to expected values following NDM migration. DMP Tunable Parameter Default Value NDM Required Value
dmp_path_age 300 0 dmp_health_time 60 0 dmp_restore_interval 300 10 dmp_restore_cycles 10 10 iopolicy (per DMP node name) MinimumQ MinimumQ

When these values are not set, the cancel –revert will not work correctly.

Use the rescan command. On Linux: /usr/bin/rescan_scsi_bus.sh followed by vxdisk scandisks to detect new paths. Use vxdmpadm to verify that the
new paths are added.
https://sort.symantec.com/public/documents/dmp/6.0/vmwareesx/productguides/html/dmp_admin/ch06s08.htm

ESXI WITH NATIVE MULTI-PATHING

Use the rescan command to detect new paths, or wait for NMP to detect the paths automatically. To reduce the delay in automatic detection, change to 30 seconds. To set the path polling time, login to the host and navigate to Configuration -> Advanced Settings -> Disk and update the Disk.PathEvalTime field.
APPENDIX B: AIX, GPFS, ORACLE RAC, POWERHA AND POWERPATH WITH NDM
Properly configuring multiple paths to the host with AIX 6.1/7.1/7.2, GPFS, ORACLE RAC 11gR2/12cR1, POWERHA 6.1/7.1/7.2 and PowerPath 5.7SP2/6.0 requires an additional step when performing an NDM migration. Please review the details in this appendix prior to migrating such environment.
80
Page 81
During NDM, after ‘symdm create’ cli command is issued and new paths have been discovered by the host, all new native devices on the target side will have reserve_policy set to single_path. This is PowerPath's default setting for the VMAX array.
According to IBM documentation: Single_path_reserve: Applies a SCSI2 reserve methodology for the device, which means the device can be accessed only by the
initiator that issued the reserve. This policy prevents other initiators in the same host or on other hosts from accessing the device. That means only one host can access and use the new disks.
If the NDM Cutover and Commit is issued with the reserve_policy set to single_path for all new native devices, the cluster will not function correctly since multiple hosts in the cluster need to share the same disks. With the single_path setting, only one host will be allowed to access the disks. Therefore it’s important to run the below steps when migrating such environment.
Note: If the customer is able to upgrade PowerPath to 6.1 or is running PowerPath 6.1, then this procedure is not necessary as PowerPath 6.1 will maintain a no_reserve policy on all new paths.
1. Select Storage Group to migrate.
2. Create the migration session.
3. Discover paths to the host. 3a. Set reserve_policy to no_reserve for all new native devices by running emc_pp_configure.sh script. This script will configure the
new native devices on the target side into PowerPath by copying the attributes of the PowerPath hdiskpower pseudo devices into the new native devices and reconfigure the native devices.
4. Cutover Storage Group to VMAX3 or VMAX All Flash array.
5. Monitor for synchronization to complete.
6. Commit the migration.
Note: This script MUST be used in order to perform a migration non-disruptively in this environment. Failing to run the script following the configuration of the new native target devices can lead to data unavailability.
#! /bin/ksh
devlist=`powermt config 2>&1 | grep -p 0514-034 | grep hdiskpower | awk '{print $5}'`
for pseudo in $devlist
do
pseudo_policy=`lsattr -El $pseudo -a reserve_policy | awk '{print $2}'`
pseudo_prkey=`lsattr -El $pseudo -a PR_key_value | awk '{print $2}'`
nativelist=`powermt display dev=$pseudo | grep -i hdisk| grep -v power | awk '{print $3}'`
echo $nativelist
for native in $nativelist
do
native_policy=`lsattr -El $native -a reserve_policy | awk '{print $2}'`
native_prkey=`lsattr -El $native -a PR_key_value | awk '{print $2}'`
#change reserve_policy and PR_key_value of native(s), whose policy or PR_key_value
#vary from that of pseudo.
if [[ $native_policy != $pseudo_policy || $native_prkey != pseudo_prkey ]]
then
powermt remove dev=$native
echo changing reserve_policy,PR_key_value of $native to $pseudo_policy and $pseudo_prkey
chdev -l $native -a reserve_policy=$pseudo_policy -a PR_key_value=$pseudo_prkey
fi
done
done
powermt config
The script can be downloaded on EMC’s support site: emc_pp_configure.sh
81
Page 82
APPENDIX C: HOST REBOOTS DURING NDM PROCESS
The following outlines the outcomes of a host reboot either planned or unplanned during each of the discrete steps of the NDM process.
Note: Manual verification of host paths following a reboot of any kind should be undertaken before continuing with a migration.
Created: Once the host reboots paths will be re-detected on the source array. As the rescan of the SAN hadn’t occurred
before the reboot the target paths don’t have to be considered. The migration can continue as normal as a host reboot will
conduct a rescan as part of the boot process and pick up the new paths to the Target. This in turn will move the NDM session to a Cutover Ready state.
Migrating: The paths to the source system are not active and a reboot may cause the MP software to permanently remove
the inactive paths to the source array. If the reboot causes the inactive paths to be removed then this will cause a complication when choosing to cancel the migration and revert back to the source array. Manually rescanning the host while the cancel –
revert is in the “Wait for the host path discovery on Source” step will reconfigure the removed paths and the migration will
cancel and revert back to the source array. Choosing to continue with synchronization and movement towards the CutoverSync state will not be affected by the removal of the inactive paths following a reboot.
Cutover Ready: Since the paths to both arrays were alive at the time of reboot they will not be affected. Recommendation
at the point is to verify all paths initialize as expected before continuing.
CutoverNoSync: A reboot during the CutoverNoSync state may cause the MP software to permanently remove the inactive
paths to the source array. The removed paths will not affect the ability to perform a sync –start to move to the CutoverSyncing state or the ability to commit the migration.
CutoverSyncing: A reboot during the CutoverSyncing state may cause the MP software to permanently remove the
inactive paths to the source array, but will not change the state of the migration session. The Synchronization will continue reaching a CutoverSync state when completed.
CutoverSync: A reboot during the CutoverSync state may cause the MP software to permanently remove the inactive paths
to the source array, but will not change the state of the migration session. If a reboot has removed the inactive paths and a cancel and revert back to the source is desired, then follow the steps documented under the migrating state to process the cancel –revert operation. A commit operation will not be affected after the inactive paths have been removed and no special steps are necessary to commit the migration session.
82
Loading...