+

Search Tips   |   Advanced Search

(ZOS) Enabling the server environment to use optimized local adapters

We must enable the application server to receive inbound and outbound requests using the optimized local adapters support. Optimized Local Adapters for z/OS is a set of callable services (APIs) that give native z/OS applications the ability to make inbound calls to application server enterprise beans, and enable native programs to act as a server and accept requests from applications running in the WebSphere Applications Server.

WAS regions that use optimized local adapters must run in 64-bit mode. When we create an application server, it is automatically configured to run in 64-bit mode.


Tasks

  1. Allocate or select a load module library to contain the optimized local adapter load modules. This library is used by applications running outside WAS. It can be either a partitioned data set or a PDS-E, and requires approximately 40 tracks (3390) to hold the optimized local adapter modules. In subsequent examples, this data set is called WAS.OLA.LOADLIB.
  2. Switch to the node's profile_root/bin directory and run the copyZOS.sh script with the OLAMODS option:
    cd /wasconfig/azcell/aznodea/AppServer/profiles/default/bin 
    copyZOS.sh OLAMODS WAS.OLA.LOADLIB
    

    The copyZOS.sh script writes the optimized local adapter load modules out to the data set specified after the OLAMODS keyword.

  3. Set WebSphere environment variables to allow the application server to use optimized local adapters. The variables are described in the topic, Optimized local adapters environment variables.

    We need to set these variables for each stand-alone application server or Network Deployment cell.

    1. Set the cell-wide variable WAS_DAEMON_ONLY_enable_adapter to true to allow the cell daemons to process inbound and outbound optimized local adapter calls. This variable must be set to use the optimized local adapters.

    2. Use the cell-wide variables WAS_DAEMON_ONLY_adapter_max_conn, WAS_DAEMON_ONLY_adapter_max_serv, and WAS_DAEMON_ONLY_adapter_max_shrmem to set the maximum number of connections, maximum number of outbound services, and maximum amount of shared memory allocated to optimized local adapter sessions by the daemon.

    3. Use the ola_cicsuser_identity_propagate variable to control propagation of security identities during registration. This variable, which can be set at the cell or node level, must be set to 1 to allow the optimized local adapters samples to run.

      Important: Read the information about the ola_cicsuser_identity_propagate variable in the topicOptimized local adapters environment variables to understand the security implications of setting this variable on the server.

    4. If we are using the CICS Link Server, and we want to specifying multiple containers using a appedRecord, set the LinkTaskChanID variable to the name of the channel which will hold the containers.

    5. If we are using the CICS Link Server, and we want to specifying multiple containers using a appedRecord, set the LinkTaskChanType to the type of channel which will hold the containers (CHAR=0|BIT=1). The default value for this variable is 1.

    Use the administrative console or scripting to set these variables. The olaRar.py script that is described in the next step sets the WAS_DAEMON_ONLY_enable_adapter variable to true, but does not alter any other WAS environment variables.

  4. Install the resource adapter archive, which is the ola.rar file, and create a connection factory. For each application server node that uses the optimized local adapters, we must also install the resource adapter archive, and create a connection factory. The copyZOS.sh script creates a symbolic link to this archive file from each application server node install_root/installableApps directory.

    We can use either the administrative console or the olaRar.py script to install the resource adapter and create the connection factory:

    • To use the olaRar.py script to install the resource adapter and connection factory, see the topic, olaRar.py script file. Make sure that we install the resource adapter archive and create a connection factory on each application server node that handles incoming or outgoing optimized local adapter connections.

      This script also sets the cell-wide WAS_DAEMON_ONLY_enable_adapter variable to true, but the script does not configure any other WebSphere environment variables for the optimized local adapters.

    • To use the administrative console to install the resource adapter, read the topic, Install the resource adapter archive (RAR). Create the connection factory in the administrative console on the Resource Adapters panel. Click the name of our newly created resource adapter and under Additional Properties, click J2C connection factories > New. When creating the connection factory, the key field that we must complete is the JNDI name.

    To use the resource adapter high availability feature, configure additional connection pool properties on each connection factory. Refer to the topic, Enabling resource adapter high availability support, for more information on how to set up and use this feature.

    For more information about connection factories, see the topic, Connection factory considerations for optimized local adapters.

  5. Restart the WAS daemon to put these changes into effect. Restarting the daemon causes all the cell servers on the same z/OS system to be stopped.

    When the daemon is starting, confirm that the adapter is active. A message in the daemon log indicates if the optimized local adapter is activated or not, as follows:

    • Support is activated: BBOMOOO1I enable_adapter:1
    • Support is not activated: BBOMOOO1I enable_adapter:0

The optimized local adapters support is now enabled.


What to do next

We can now deploy and start applications that use WAS for z/OS optimized local adapters on the enabled application server nodes.

For all of the external connections that use the optimized local adapters, ensure that they are running the latest version of the OLAMODS data set for our level of WAS:

  1. Run the copyZOS.sh script with the OLAMODS option for the data set to ensure that the modules are at the latest level. For example:
    copyZOS.sh OLAMODS WAS.OLA.LOADLIB
    

  2. Make sure this data set is made available to all of the external address spaces that use the optimized local adapters. For example, make sure it is available in the STEPLIB for batch jobs, DFHRPL library for CICS (Customer Information Control System), and DFSESL for IMS data definitions.

    We can share the same generated data set across different clusters; we don't need to have a separate copy for each cluster.


Subtopics


Related:

  • Optimized local adapters on WAS for z/OS
  • copyZOS.sh script file
  • Optimized local adapters for z/OS APIs
  • Connection factory considerations for optimized local adapters
  • olaRar.py script file
  • Optimized local adapters environment variables
  • Install a resource adapter archive
  • Enable optimized local adapters support in CICS
  • Enable optimized local adapter high availability support