This section presents a realistic example of using DRM to prepare for and recovery from disaster. The detailed steps are followed by an outline that gives you a brief day-by-day picture of the DRM tasks.
This scenario shows how to use TSM and DRM policies to move volumes offsite for disaster recovery protection and back onsite for reuse. It also shows how to update the tape management product database (for example, RMM) with the current volume locations.
move drmedia * wherestate=mountable cmd="rmm changevolume &vol location( ironvault) manualmove"
The content of the resulting ADSM.DRM.EXEC.CMDS file is:
RMM CHANGEVOLUME DBTP01 LOCATION(IRONVAULT) MANUALMOVE RMM CHANGEVOLUME DBTP02 LOCATION(IRONVAULT) MANUALMOVE RMM CHANGEVOLUME CSTP01 LOCATION(IRONVAULT) MANUALMOVE RMM CHANGEVOLUME CSTP02 LOCATION(IRONVAULT) MANUALMOVE
The tape administrator issues the following TSO command to run the RMM commands. The volumes are ejected from the ATL1 library because the library is a system-managed library and marked in transit to IRONVAULT:
EXEC 'ADSM.DRM.EXEC.CMDS'
move drmedia * wherestate=notmountable
prepare
The administrator copies the recovery plan file to a diskette that will be given to the courier.
move drmedia * wherestate=vaultretrieve tostate=onsiteretrieve
This command deletes volume records for the empty/expired volumes at vault. The volumes become 'PENDING SCRATCH' in the RMM database because the deletion exit, ARCTVEXT, is invoked during volume deletion.
move drmedia * wherestate=courier cmd="rmm changevolume &vol confirmmove"
The MOVE DRMEDIA command sets the location of the volumes to Ironvault and generates the RMM CHANGEVOLUME CONFIRMMOVE commands for each volume successfully processed, and saves the generated commands in a file, ADSM.DRM.EXEC.CMDS:
RMM CHANGEVOLUME DBTP01 CONFIRMMOVE RMM CHANGEVOLUME DBTP02 CONFIRMMOVE RMM CHANGEVOLUME CSTP01 CONFIRMMOVE RMM CHANGEVOLUME CSTP02 CONFIRMMOVE
EXEC 'ADSM.DRM.EXEC.CMDS'
After the command is issued, the RMM database is confirmed with the location, IRONVAULT, for each volume in the file.
Note: | If you want the RMM CHANGEVOLUME commands to be written to a file other than the default one, ADSM.DRM.EXEC.CMDS, specify the file name on the MOVE DRMEDIA command with CMDFILENAME parameter. |
This scenario demonstrates how to use the policies defined with RMM Vital Record Specification (VRS) for moving volumes offsite for disaster recovery protection and back onsite for reuse, and how to use policies defined with TSM and DRM to expire or empty the volumes at the vault. If you use a tape management product to move your volumes to the offsite location today and you want to update TSM database to reflect the movement of the TSM volumes, you may consider following this scenario:
SEARCHVOLUME VOLUME(*) LIMIT(*) DESTINATION(IRONVAULT) LOCATION(ATL1) INTRANSIT(NO) OWNER(TIVSM) CLIST('RMM CHANGEVOLUME ',' LOCATION(IRONVAULT)')
Note: | ATL1 is a system-managed library. If you want to eject all volumes scheduled to move from the library to IRONVAULT, the specification of the OWNER is not necessary. |
The SEARCHVOLUME command builds CHANGEVOLUME commands for each volume belonging to TSM and its tape data set name matches the data set name specified in VRS, and saves the commands in a CLIST data set, prefix.EXEC.RMM.CLIST:
RMM CHANGEVOLUME DBTP01 LOCATION(IRONVAULT) RMM CHANGEVOLUME DBTP02 LOCATION(IRONVAULT) RMM CHANGEVOLUME CSTP01 LOCATION(IRONVAULT) RMM CHANGEVOLUME CSTP02 LOCATION(IRONVAULT)
EXEC 'prefix.EXEC.RMM.CLIST'
SEARCHVOLUME VOLUME(*) LIMIT(*) DESTINATION(IRONVAULT) LOCATION(ATL1) INTRANSIT(Y) OWNER(TIVSM) CLIST('MOVE DRMEDIA ',' TOSTATE=COURIER')
Note: | OWNER is used here to restrict to only TSM volumes. The MOVE DRMEDIA command is used to mark the volumes unavailable for onsite processing in the database. |
The SEARCHVOLUME command generates the following MOVE DRMEDIA commands and saves them as a macro in a CLIST data set, prefix.EXEC.RMM.CLIST:
move drmedia dbtp01 tostate=courier move drmedia dbtp02 tostate=courier move drmedia cstp01 tostate=courier move drmedia cstp02 tostate=courier
DSMADMC -id=xxxx -pa=yyyy MACRO 'prefix.EXEC.RMM.CLIST'
After the macro command is run, the volumes are marked offsite and unavailable for processing in database.
prepare
The administrator copies the recovery plan file to a diskette that will be given to the courier.
move drmedia * wherestate=vaultretrieve tostate=onsiteretrieve
This command deletes TSM volume records for the empty/expired volumes at vault. The volumes become 'PENDING SCRATCH' in the RMM database because the deletion exit, ARCTVEXT, is invoked during volume deletion.
SEARCHVOLUME VOLUME(*) LIMIT(*) DESTINATION(IRONVAULT) LOCATION(ATL1) INTRANSIT(Y) OWNER(TIVSM) CLIST('MOVE DRMEDIA ',' TOSTATE=VAULT')
Note: | OWNER is used here to restrict to only TSM volumes. The MOVE DRMEDIA command is used to update the volume location and state in the TSM database. |
The CLIST data set, prefix.EXEC.RMM.CLIST, contains the following MOVE DRMEDIA commands for each volume:
move drmedia dbtp01 tostate=vault move drmedia dbtp02 tostate=vault move drmedia cstp01 tostate=vault move drmedia cstp02 tostate=vault
DSMADMC -id=xxxx -pa=yyyy macro 'prefix.EXEC.RMM.CLIST'
After the macro command is run, the TSM database is updated to reflect the new ORM state and location for each volume.
SEARCHVOLUME VOLUME(*) LIMIT(*) DESTINATION(IRONVAULT) LOCATION(ATL1) INTRANSIT(Y) OWNER(TIVSM) CLIST('RMM CHANGEVOLUME ',' CONFIRMMOVE')
The CLIST data set, prefix.EXEC.RMM.CLIST, contains the following CHANGEVOLUME CONFIRMMOVE commands for each TSM volume and the administrator runs the CLIST to confirm the movement:
RMM CHANGEVOLUME DBTP01 CONFIRMMOVE RMM CHANGEVOLUME DBTP02 CONFIRMMOVE RMM CHANGEVOLUME CSTP01 CONFIRMMOVE RMM CHANGEVOLUME CSTP02 CONFIRMMOVE
Note: | If you want to confirm all volumes, including TSM volumes, moved from ATL1 to IRONVAULT, the 'RMM CHANGEVOLUME * CONFIRMMOVE(ATL1, IRONVAULT)' command can be issued without running SEARCHVOLUME command to generate CONFIRMMOVE command for each volume. |
The following scenario shows how an administrator uses the latest recovery plan file to recover the TSM server. The TSM server in this example does not use virtual volumes. A disaster has destroyed the TSM server, and a complete recovery of the server is required.
exec recovery.drmode 'tsmadm1 adm1pw dsm1599'
Note: | The administrator could instead have used the steps in the RECOVERY.DRMODE REXX EXEC as a guide and manually run each step. |
Note: | Use this copy of the volume history file unless you have a more recent copy (after the disaster occurred). |
Notes:
The TSM server is now recovered to the point where it can service the restore requests of any of its connected clients.
The administrator could instead have used the steps in the RECOVERY.NMODE REXX EXEC as a guide and manually executed each step.
The steps run in this recovery REXX EXEC are:
Note: | This action is optional at this time because TSM can access the copy storage pool volumes directly to restore client data. Using this feature, the administrator can minimize client recovery time because server primary storage pools do not have to be restored first. |
update volhist TPBK50 devcl=lib3494 ormstate=mountable update volhist TPBK51 devcl=lib3494 ormstate=mountable
The copy storage pool volumes used in the recovery already have the correct ORMSTATE.
The following scenario demonstrates the recovery of clients. A week after the TSM server was recovered, another water pipe burst in the building that houses distributed systems applications. Many machines that were backed up using clients were destroyed. A disaster is declared.
query machine building=021 format=detailed
TSM displays information similar to the following:
+--------------------------------------------------------------------------------+ | Machine Name: POLARIS | | Machine Priority: 1 | | Building: 21 | | Floor: 2 | | Room: 1 | | Server?: No | | Description: Payroll | | Node Name: POLARIS | | Recovery Media Name: MKSYSB1 | | Characteristics?: Yes | |Recovery Instructions?: Yes | +--------------------------------------------------------------------------------+
query recoverymedia mksysb1
TSM displays the following information:
+--------------------------------------------------------------------------------+ |Recovery Media Name Volume Names Location Machine Name | |-------------------- ----------- ---------- ---------------- | |MKSYSB1 vol1 vol2 IRONVAULT POLARIS | | vol3 | +--------------------------------------------------------------------------------+
query machine polaris format=recoveryinstructions
TSM displays the following:
+--------------------------------------------------------------------------------+ |Recovery Instructions for Polaris. | |Primary Contact: | | Jane Smith (wk 520-000-0000 hm 520-001-0001) | |Secondary Contact: | | John Adams (wk 520-000-0001 hm 520-002-0002) | +--------------------------------------------------------------------------------+
query machine polaris format=characteristics
TSM displays information similar to the following:
+--------------------------------------------------------------------------------+ |devices | |aio0 Defined Asynchronous I/O | |bus0 Available 00-00 Microchannel Bus | |fd0 Available 00-00-0D-00 Diskette Drive | |fda0 Available 00-00-0D Standard I/O Diskette Adapter | |fpa0 Available 00-00 Floating Point Processor | |gda0 Available 00-04 Color Graphics Display Adapter | |hd1 Defined Logical volume | |hd2 Defined Logical volume | |hd3 Defined Logical volume | |hdisk0 Available 00-01-00-00 400 MB SCSI Disk Drive | |hdisk1 Available 00-01-00-40 Other SCSI Disk Drive | |hft0 Available High Function Terminal Subsystem | |inet0 Available Internet Network Extension | |ioplanar0 Available 00-00 I/O Planar | |kbd0 Defined 00-00-0K-00 United States keyboard | |lb0 Available 00-02-00-20 TIVSM Library | |lo0 Available Loopback Network Interface | |loglv00 Defined Logical volume | |lp0 Available 00-00-0P-00 IBM 4201 Model 3 Proprinter III | |lv03 Defined Logical volume | |lv04 Defined Logical volume | |lvdd Available N/A | |mem0 Available 00-0B 8 MB Memory Card | |mem1 Available 00-0C 16 MB Memory Card | |mous0 Defined 00-00-0M-00 3 button mouse | |mt0 Available 00-02-00-40 TIVSM Tape Drive | |ppa0 Available 00-00-0P Standard I/O Parallel Port Adapter | |pty0 Available Asynchronous Pseudo-Terminal | |rootvg Defined Volume group | |sa0 Available 00-00-S1 Standard I/O Serial Port 1 | |sa1 Available 00-00-S2 Standard I/O Serial Port 2 | |scsi0 Available 00-01 SCSI I/O Controller | |scsi1 Available 00-02 SCSI I/O Controller | |sio0 Available 00-00 Standard I/O Planar | |siokb0 Available 00-00-0K Keyboard Adapter | |sioms0 Available 00-00-0M Mouse Adapter | |siotb0 Available 00-00-0T Tablet Adapter | |sys0 Available 00-00 System Object | |sysplanar0 Available 00-00 CPU Planar | |sysunit0 Available 00-00 System Unit | |tok0 Available 00-03 Token-Ring High-Performance Adapter | |tr0 Available Token Ring Network Interface | |tty0 Available 00-00-S1-00 Asynchronous Terminal | |tty1 Available 00-00-S2-00 Asynchronous Terminal | |usrvice Defined Logical volume | |veggie2 Defined Volume group | |logical volumes by volume group | |veggie2: | |LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT | |hd2 jfs 103 103 1 open/syncd /usr | |hd1 jfs 1 1 1 open/syncd /home | |hd3 jfs 3 3 1 open/syncd /tmp | |hd9var jfs 1 1 1 open/syncd /var | |file systems | |Filesystem Total KB free %used iused %iused Mounted on | |/dev/hd4 8192 420 94% 909 44% / | |/dev/hd9var 4096 2972 27% 87 8% /var | |/dev/hd2 421888 10964 97% 17435 16% /usr | |/dev/hd3 12288 11588 5% 49 1% /tmp | |/dev/hd1 4096 3896 4% 26 2% /home | +--------------------------------------------------------------------------------+
This section summarizes the use of DRM during routine operations and during disaster recovery:
Day 2
Day 3
The following checklist can help you set up Tivoli Disaster Recovery
Manager.
Table 23. Tivoli Disaster Recovery Manager Checklist
Activity | Start Date | End Date | Status | Person Resp. | Backup Person |
---|---|---|---|---|---|
Plan for DRM |
|
|
|
|
|
Evaluate your disaster recovery requirements
|
|
|
|
|
|
Evaluate the current storage pool backup implementation
|
|
|
|
|
|
Evaluate the current database backup implementation
|
|
|
|
|
|
Determine which primary storage pools are to be managed by DRM |
|
|
|
|
|
Determine which copy storage pools are to be managed by DRM
|
|
|
|
|
|
Where to Save the Recovery Plan File
Stored Locally:
Stored on Another Server:
|
|
|
|
|
|
Determine where you want to create the user-specified recovery
instructions
What is the prefix of the instructions dsname? |
|
|
|
|
|
Evaluate the TMS/DRM interaction options
|
|
|
|
|
|
Analyze the sequence of steps related to the PREPARE command backup
movement
Document the flow of activities and timings
|
|
|
|
|
|
Installation |
|
|
|
|
|
Receive and Install the TSM code |
|
|
|
|
|
License DRM
|
|
|
|
|
|
Customize DRM
The administrator with system authority issues:
|
|
|
|
|
|
Define the site-specific recovery instructions
Identify:
Create:
|
|
|
|
|
|
Test Tivoli Disaster Recovery Manager |
|
|
|
|
|
Test the installation and customization
|
|
|
|
|
|
Examine the recovery plan file created |
|
|
|
|
|
Test the recovery plan file break out
|
|
|
|
|
|
Put DRM into Production |
|
|
|
|
|
Set up the schedules for automated functions |
|
|
|
|
|
Implement the DRM procedures |
|
|
|
|
|