This note is specific to a situation where:
     - there are multiple TSM instances,
     - servers run on AIX,
     - multiple TSM instances share a 3494 library,
     - we do NOT use volser ranges for each tsm's media,
     - we DO use different scratchcat and privatcat numbers on each
          instance's library definition.

....that ought to narrow the audience down a bit!          :-)


This configuration should allow us to "rebalance" the number of scratch
tapes between the different servers as required.   (ie: if I need to move
some tapes from server A to server B, I don't need to peel and stick any
volser labels!)     So far, so good...and something I've done occasionally
in the past.

However, when we use DRM and insert tapes into the 3494 that have
returned from offsite, when we do a checkin for these returned volumes
(using "checkin libv MYLIB stat=scr search=yes devtype=3590 checklabel=no"),
all of the returned media gets checked into the one TSM server that issued
the checkin.

So...now I'll need to do a fairly major rebalancing of scratch tapes between
TSM servers every time I bring media back onsite....so it's time automate the
process.

Attached is a proposed method to MOVE SCRATCH TAPES from one tsm
server to another.  I intend to write a utility script that will do this, using
server-to-server command routing (for checkin processing), and the aix "mt"
command.   To move tape 123456 from tsm instance tsmA to tsm instance
tsmB, I should just have to issue:

                tsm_scratch_mover   123456     tsmA    tsmB

Once that utility is in place and working, then I should be able to just count
scratches on each instance, and call this utility a number of times to bring
things back into line with some predetermined thresholds.

If anyone has something that does this and can save me from reinventing
wheels, please let me know.  Also...if there's any steps I've missed or things
that I should be checking to make this bulletproof, I'd appreciate the
tips...it
might get interesting doing all the condition code checking...does anyone
know how to do a batch checkin and verify the return code?

There are a couple of nice posts already on this topic, at:
     http://msgs.adsm.org/cgi-bin/get/adsm9906/77.html
and  http://msgs.adsm.org/cgi-bin/get/adsm0011/261/1/1.html

...but I didn't find anything similar to what I (think I) need to do.

Thanks in advance for any help....JRS.


John R. Snyder,
Open Systems Backup,
TDit.

--------------------------------------------------------------------------------
--------------------------

Assume: library name is MYLIB, volser of media to move is 123456.

1) Verify that the volser you want to move is a scratch:
          q libv MYLIB 123456   (grab the output, grep for Scratch).
   A display from AIX should also show our volume in the expected scratch
category:
          mtlib -l /dev/lmcp0 -qI |grep 123456

2) Then make that tape unavailable, so it doesn't get used in the middle of
this
     move process (I'm concerned about what might happen if TSM picked
     this tape to write on, at just the worst possible "murphy moment".)
          update libv MYLIB 123456 status=private

   Check the volume again, to ensure it's still ok to move... the category
     should have changed to the privatecat.
          mtlib -l /dev/lmcp0 -qI |grep 123456

3) on the "from" server, remove the volume(s) desired, via:
          checkout libv MYLIB 123456 rem=no checkl=no

4) mtlib -l will show this tape as category FF00 now.

5) on the "to" server, checkin the volume desired, via:
        checkin libv MYLIB 123456 stat=scr search=no checkl=no devt=3590

6) mtlib -l will now show this tape with the new scratch category.

7) q libv MYLIB 123456 on both machines will show the tape has moved now.
     It will be not found on the old server and should be a scratch on the
     new server.

Not yet known:
     -how to check the success of a batch "checkin" command.
     -what happens if I try to do this against a tape that is mounted.
     -what happens if/when we hit a "murphy moment".

And on a completely different note, what happens if two tsm servers
each issue a " move drmedia * wherestate=mountable tostate=vault wait=yes"
simultaneously....will they happily coexist and share the convenience i/o
station?

Reply via email to