TSM 6 recovery without a database restore!
I want to failover my TSM 6 server!…
I have spoken to a number of customers that wanted to be able to failover their TSM 6 servers to another piece of hardware by remapping the LUNs that contain all of the database, log and disk storage pool data. In TSM 5 this was very simple indeed because of the self contained nature of the database. TSM 6 presents more of a challenge however. The challenge comes from the DB2 database that is now used as the backend behind the TSM server.
In fact I was of the opinion that it would be such a faff that it would be easier to do a restore on the 2nd TSM server. However once I had a go I was pleasantly surprised (and the customer I was with told me off for being so sceptical).
The process that we followed is detailed below:
The Servers:
2 x RHEL Servers both with the TSM 6.2.3.0 code installed (server1 is the primary TSM server, server2 is the DR TSM server)
TSM instance TSMINST1 running on the first machine.
The user that runs the instance is “tsminst1″
SAN disks used:
/tsm/TSMINST1 - home dir for user "tsminst1" folder contains dsmserv.opt, dsmserv.dsk, etc /tsm/TSMINST1/db - database files /tsm/TSMINST1/log - active log files /tsm/TSMINST1/archlog - archive log files
The Process:
- halt TSMINST1 on server1
- Create the user on server2 using a tiny dummy bit of SAN disk to create the directory structure above
- Create a DB2 instance on server2 called TSMINST1
/opt/tivoli/tsm/db2/instance/db2icrt -a SERVER -u tsminst1 tsminst1
- Create the TSMDB1 database under that instance. (use a format or loadformat to do this). Then stop DB2
su - tsminst1 /opt/tivoli/tsm/server/bin/dsmserv loadformat dbdir=/tsm/TSMINST1/db activelogdir=/tsm/TSMINST1/log mirrorlogdir=/tsm/TSMINST1/logm archlogdir=/tsm/TSMINST1/archlog db2stop
- Remove the dummy filesystem /tsm/TSMINST1 from server2 and import all the real filesystems from server1 (detatch the filesystems from server1 and import on server2).
- Start the DB2 database (using the db2start command)
- Start the TSMINST1 server
/opt/tivoli/tsm/server/bin/dsmserv
And guess what – the TSM server comes up. Happy days!
Now there maybe a better way of doing it than this but I figured that you need to trick DB2 that there was an instance of TSM on server2 and then replace all the files with the real files from the previously running instance.
Where might this be useful?
I can see that this process will be useful if you have two p795 frames that contain a SAP or Oracle server that uses PowerHA and when the TSM server is in the same frame as the active cluster node. You may want to get TSM to follow the failover of your production server when it moves. This would mean that the production backups can remain as an inter-frame activity.
Is this the only way?
no, in short there is a HADR DB2 feature that can be implemented to do TSM server mirroring. See this as article:
Sorry if that was a bit too techie…








