OnDemand Users Group

Support Forums => CMOD for z/OS Server => Topic started by: Ed_Arnold on March 02, 2016, 02:38:40 PM

Title: Running multiple ARSSOCKD's on the same LPAR
Post by: Ed_Arnold on March 02, 2016, 02:38:40 PM
Recently Level 2 has been requested for a cookbook on how to set up two started tasks accessing the same database, and how to split the load between the two.

Follow the examples below:


Here is what your ars.ini should look like:                             
                                                                       
[@SRV@_ABC900]   <----- this is your original                               
HOST=mvs222                                                             
PROTOCOL=2                                                             
PORT=1451        <----- note this                               
SRVR_INSTANCE=ABC900DB                                                 
SRVR_INSTANCE_OWNER=ODPROD                                             
SRVR_OD_CFG=/etc/ars/V900/ars.abc900.cfg                               
SRVR_SM_CFG=/etc/ars/V900/ars.abc900.cache                             
SRVR_FLAGS_FOLDER_APPLGRP_EXIT=0                                       
SRVR_FLAGS_SECURITY_EXIT=0                                             
SRVR_FLAGS_FORCE_SECURITY=0                                             
                                                                       
[@SRV@_ABC902]   <------ this is different                             
HOST=mvs222                                                             
PROTOCOL=2                                                             
PORT=2451        <------ this is different                             
SRVR_INSTANCE=ABC900DB                                                 
SRVR_INSTANCE_OWNER=ODPROD                                             
SRVR_OD_CFG=/etc/ars/V900/ars.abc900.cfg                               
SRVR_SM_CFG=/etc/ars/V900/ars.abc900.cache                             
SRVR_FLAGS_FOLDER_APPLGRP_EXIT=0                                       
SRVR_FLAGS_SECURITY_EXIT=0                                             
SRVR_FLAGS_FORCE_SECURITY=0                       
                     
                                                                       
                                                                       
Note the only things that are different.                               
                                                                       
                                                                       
So let's say we now have two started tasks, which we could name         
anything.                                                               
                                                                       
//ARSSOCK0 PROC                                                         
//ARSSOCK0 EXEC PGM=ARSSOCKD,REGION=0M,TIME=NOLIMIT,                   
//  PARM='/-S -I ABC900 -v'      <------------the only difference       
...(everything else is the same)                                       
                                                                       
                                                                       
//ARSSOCK2 PROC                                                         
//ARSSOCK2 EXEC PGM=ARSSOCKD,REGION=0M,TIME=NOLIMIT,                   
//  PARM='/-S -I ABC902 -v'      <------------the only difference   
   
...(everything else is the same)                                       
                                                                       
Start both of them up.                                                 
                                                                       
Using the port number sign on to each of them with a client to see that
you can independently use each one.                                     
                                                                       
Submit a simple batch job, changing only the instance name from ABC900 
to ABC902.                                                             
                                                                       
Here's a sample job you can submit, it just does a display of process   
ID's or some such, not really sure.                                     
                                                                       
//   JOB                                                               
//TMP1  EXEC  PGM=IKJEFT01,REGION=0M,                                   
//            DYNAMNBR=200                                             
//SYSPROC  DD  DSN=SYS1.SBPXEXEC,DISP=SHR                               
//*                                                                     
//SYSTSPRT DD  SYSOUT=*                                                 
//*                                                                     
//SYSTSIN  DD  *                                                       
oshell /usr/lpp/ars/V9R0M0/bin/arssockd -I ABC900 -px                 
//*                                                           
         
                                                                       
By using the -I parameter for your load jobs you can direct loading to one started task or the other as desired.

And that's all there really is to it.

Ed