ADSM-L

Multiple ADSM servers & multiple tape drives.

1997-05-15 18:16:45
Subject: Multiple ADSM servers & multiple tape drives.
From: "BELL, CRAIG" <rcbell AT VNET.IBM DOT COM>
Date: Thu, 15 May 1997 15:16:45 PDT
The following discussion applies only to adsm/6000 on AIX connected to a 3494:

With a 3494 library, you can share the tape drives between two servers if
they *ARE* on the same aix host, but NOT if they are on different hosts.  The
only real caveat is that you need to have your MOUNTWAIT parameter (see define
devclass command) set high enough so that if all drives are in use, perhaps
by the other server, it will wait for the other server to free up a drive
before it times out.  Note that a server will not give up its drive until
the MOUNTRETENTION time expires.  So set you MOUNTWAIT high and MOUNTRETENTION
low on your drives' devclasses.

The weakness in this scheme is mainly with a transaction that has a series of
multiple tape mounts.  It is the window in between two mounts in the series
that the other server can get the drive and cause the transaction to wait
(for as long as the other server has the drive or until another drive frees
up.)  That window will not be closed for a while, so this is not really a
recommended configuration.  But it will "tolerate" the drive sharing.
Also, some of this code has had problems, and I think they have all been
plugged as of ptf-12, so if you're going to do this, be sure to put ptf-12 on
first.

As for sharing between two hosts- forget it!  At this time, neither the
drive microcode nor the device driver are really robust enough to handle this.
Doing this is actually not in the current SCSI standard, so although the
3590 has two ports, they should NEVER be available to two hosts at the same
time.  (By "available" I'm referring to their state when you do an
lsdev -Cctape command, eg.
  rmt0 Available 00-01-00-2,0 ...
  rmt1 Defined   00-01-00-3,0 ...
One host can have it Available, the other must have it Defined (or not defined
at all).

If the scsi standard for this is ever defined and then implemented, this should
become possible.

A word about how to share 3590s in a 3494 for applications in general:
When sharing on the same host, the ADSM server will recognize when the drive
is in use by another application if the application (1) opens the drive before
loading it, and (2) keeps it open at least until loaded, and (3) does not use
any volumes of the same categories of the adsm server.  The other adsm server
will follow these rules, but dsmlabel does NOT, so do not share drives of
either server with dsmlabel.  But for instance, if you use mtlib to load a
drive so you can run tar, dd, or any other application, you need to open the
drive FIRST and keep it open until mtlib finishes.  You can use tapeutil in
menu mode to do this; open is menu item #1.  If you have any other homegrown
application, you need to follow these same rules.

Finally, none of this applies to other library types, eg. SCSI autochangers.
The Library Mgr in the 3494 was utilized to implement drive sharing, and
obviously there's no such service available on lower-end libraries.


Craig Bell