Tuesday, July 7, 2009

Creating Multiple TSM Instances in a UNIX Environment

Note:
This exercise assumes that the platform is SuSE Linux Enterprise Server.
This will work well on other UNIX environments – Solaris/HP/AIX.
For AIX, change all references from /opt/tivoli to /usr/tivoli.

To run multiple Tivoli Storage Manager servers on the same machine, you must create unique port numbers TCPPORT, HTTPPORT, SHMPORT and TCPADMINPORT and maintain database and recovery log files that are separate to each TSM server instance. Each server instance needs its own ports and its own database and recovery log.


Take note that you need a separate license for each unique instance of the server in order to run additional servers.


When running multiple servers, note that running a server from a directory other than the installation directory is only supported by setting the DSMSERV_DIR environment variable. This is because the base install directory is used for more than just finding the executables; e.g. the license and message file. To run a server from a directory other than the installation directory, you set the DSMSERV_DIR environment variable to point to the installation directory and add /opt/tivoli/tsm/server/bin to your path.

This exercise assumes that both servers will be using the same IP address and clients will be connecting to both servers. In order to set this up, two unique TCPPORTS and HTTPPORTS must be used in the dsmserv.opt. Otherwise the ports will not be open for connection when both servers are running, because the server that starts up first claims the port and the port will be bound to that server.

The TSM server software code is installed in /opt/tivoli/tsm/server/bin. The same executable, but different TSM Disk Definition – dsmserv.dsk, TSM Server Options – dsmserv.opt, Volume History and Device Configuration files will be used in each instance. This exercise assumes that the user will be keeping a set of these files for one instance in /opt/tivoli/tsm/server_A and in /opt/tivoli/tsm/server_B for the other. However, any filesystem can be used.

From here on, assume that server_A is the default installed TSM environment and that server_b is to be created.

The following steps can then be implemented:

For server_A:

1. After halting server_A, change to the server_A instance directory.

cd /opt/tivoli/tsm/server_A

2. Edit’s its dsmserv.opt file (the bare minimum setup below):

commmethod tcpip
tcpport 1500
commmethod http
httpport 1520
devconfig devcfg_serverA.out
volhist volhist_serverA.out

3. server_A can be started up by using

3.1 The –o parameter of the dsmserv command to specify an options file name.
3.2 The following command if your shell is in the csh family:

setenv DSMSERV_DIR /opt/tivoli/tsm/server/bin
setenv DSMSERV_CONFIG=/opt/tivoli/tsm/serverA /dsmserv.opt
nohup /opt/tivoli/tsm/server/bin/dsmserv quiet &

3.3 The following command if your shell is in the ksh family:

export DSMSERV_DIR=/opt/tivoli/tsm/server/bin
export DSMSERV_CONFIG=/opt/tivoli/tsm/serverA/dsmserv.opt
nohup /opt/tivoli/tsm/server/bin/dsmserv quiet &

For server_b:

1. Change to the server_B instance directory.

cd /opt/tivoli/tsm/server_B

2. Edit’s its dsmserv.opt file (the bare minimum setup below):

commmethod tcpip
tcpport 1501
commmethod http
httpport 1521
devconfig devcfg_serverB.out
volhist volhist_serverB.out

3. Format the database and recovery logs files. For example, to format two 10 GB database volume and a 1 GB recovery log volume, enter:

dsmfmt –g –db server_B_dbvol1.dsm 10 server_B_dbvol2.dsm 10
dsmfmt –g –log server_B_logvol1.log 1

4. Initialize the database and recovery log in the new server directory:

dsmserv format 1 server_B_logvol1.log 2 server_B_dbvol1.dsm server_B_dbvol2.dsm

5. When the server is started, it searches the current directory for the existence of the dsmserv.dsk file. If the file is found, the names of the recovery log and database files are used for server operation. If the dsmserv.dsk file is not found in the current directory, Tivoli Storage Manager issues an error message (ANR0212E) and server initialization stops.


6. Create server_B’s dsmserv.dsk file with contents as follows:

/opt/tivoli/tsm/server_B/server_B_logvol1.log
/opt/tivoli/tsm/server_B/server_B_dbvol1.dsm
/opt/tivoli/tsm/server_B/server_B_dbvol2.dsm

7. The TSM lock management process creates the adsmserv.lock file in the same directory as the dsmserv command. If the adsmserv.lock file is unable to be created, locked or written to, the message indicates the server is already running. To allow for the creation of a second lock file, create a soft link in server_B’s instance directory to the dsmserv command.

ln –s /opt/tivoli/tsm/server/bin/dsmserv /opt/tivoli/tsm/server_B/dsmserv

8. server_B can be started up by using

8.1 The –o parameter of the dsmserv command to specify an options file name.

8.2 The following command if your shell is in the csh family:

setenv DSMSERV_DIR /opt/tivoli/tsm/server/bin
setenv DSMSERV_CONFIG=/opt/tivoli/tsm/serverB/dsmserv.opt
nohup /opt/tivoli/tsm/server/bin/dsmserv quiet &

8.3 The following command if your shell is in the ksh family:

export DSMSERV_DIR=/opt/tivoli/tsm/server/bin
export DSMSERV_CONFIG=/opt/tivoli/tsm/serverB/dsmserv.opt
nohup /opt/tivoli/tsm/server/bin/dsmserv quiet &


9. You will also want to use the SET SERVERNAME to give each server instance a unique name in order to be able to manage these multiple TSM servers from the same ISC/Admin Center interface at 5.3 - if the multiple servers all have the same servername, then you will not be able to create a unique Admin Center connection to each of these servers while they are running on the same system. Furthermore, you may also want to set each servers internal name to something other than the defaults (the system name) for to make it easier to differentiate which one you are working on. This must be done before any device paths or server to server communication is configured.

For the PDF version of this document, send a blank email, with subject line "Creating Multiple TSM Instances in a UNIX Environment", to TSM Assist

1 comment:

  1. Creating multiple tsm instances in a unix environment

    ReplyDelete