Siebel AIX Kernel Parameters for Object Manager and Web/Application Interface servers
(Doc ID 1097858.1)
Last updated on JUNE 10, 2022
Applies to:
Siebel System Software - Version 7.5.1 [15026] to 20.3 [Release V7 to V17]Siebel CRM - Version 7.5.1 [15026] to 20.3 [Release V7 to V17]
IBM AIX on POWER Systems (64-bit)
IBM AIX servers supporting Siebel Object Manager and Siebel Web/Application Interface servers.
Details
Siebel Application and Web/Application Interface servers running the AIX operating system have specific kernel requirements. These are needed for optimal performance, stability and scalability of these servers. The kernel settings change across releases of AIX and Siebel. This document will be updated as new information becomes available.
The kernel values shown here are from a large financial deployment.
Actions
For Siebel Application Servers on AIX 7.2.x and later releases, the following kernel parameter settings are recommended:
AIX Kernel Parameter | Value | Comments |
---|---|---|
VMO Parameters | N/A | Deprecated |
IO Parameters | ||
ioo -p j2_nBufferPerPagerDevice | =2048 | Variable, should be >= 2048 |
ioo -p numclust | =128 | Variable, should be >= 128 |
ioo -p numfsbufs | =256 | Variable, should be >= 256 |
ioo -p sync_release_ilock | =1 | |
NO Parameters | ||
no -p rfc1323 | =1 | |
no -p rfc2414 | =1 | |
no -p tcp_sendspace | =221184 (default) | Variable, should be >= 131072 |
no -p tcp_recvspace | =221184 (default) | Variable, should be >= 131072 |
no -p tcp_nodelayack | =1 | |
no -p tcp_nagle_limit | =0 |
|
no -p use_isno | =0 | |
no -p tcp_init_window | =3 | |
no -p sb_max | =1310720 (default) | Variable, should be >= 1048576 |
Note on RT_GRQ parameter: Under no conditions should RT_GRQ be enabled. This parameter was used in Siebel 7.0 and AIX 4.0. In later releases it has been implicated in application crashes and severe performance degradation in later releases of AIX.
Set MAXUPROC to (200 + (MAXTASK/MaxMTServer)). Too low a value for MAXUPROC will cause server processes to abort. Unproductive consumption of kernel memory will occur at very high values. Never set MAXUPROC below 512. For AIX 7.x, the default is 4096.
For AIX Siebel Application Servers on AIX 7.2.x and later releases, the following settings are recommended for SIEBENV.SH:
- SIEBEL_OSD_MAXLIMITS=1
- SIEBEL_OSD_NLATCH=see formula
- SIEBEL_OSD_LATCH=see formula
- EXTSHM=ON (EXTSHM allows for segments to be generated from already allocated memory allowing for better scalability; optional)
- AIXTHREAD_SCOPE=S
- AIXTHREAD_MUTEX_DEBUG=OFF
- AIXTHREAD_RWLOCK_DEBUG=OFF
- AIXTHREAD_COND_DEBUG=OFF
- AIXTHREAD_MNRATIO=1:1
- LDR_CNTRL=@PREREAD_SHLIB@MAXDATA=0x80000000
Notes on LDR_CNTRL:
- IGNOREUNLOAD is deprecated.
- PREREAD_SHLIB causes the entire library to be loaded as soon as one routine is accessed. Provides smoother performance of the application.
- For Siebel 7.x if MAXDATA is greater than 6, it will be impossible to support more than 3,000 MaxTasks per physical server. Crashes, server not starting and hangs have occurred with MAXDATA set to 8. For Siebel 8.x MAXDATA of up to 8 segments is supported. Please refer to Maximum Process size for Siebel 8.1 and later releases running on AIX platform can be extended to 2GB (Doc ID 1536956.1)
- Also refer for MAXTDATA: How to Raise the Memory Per Process Limit To 3.25 GB for Siebel Running on AIX Platform (Doc ID 2668192.1)
- MWNO_SIGNAL_CATCHING is strongly recommended to be set to True; this will avoid process hang which usually are hard to be detected.
Note on AIXTHREAD_MNRATIO: for AIX 7.x, the default is 1:1 and this does not need to be explicitly set on the Siebel Application Servers.
Formulas for SIEBEL_OSD_NLATCH and SIEBEL_OSD_LATCH (Note that these are generic values. Tune as needed to optimize your deployment):
- SIEBEL_OSD_NLATCH = 7 * (cumulative MaxTasks for all components) + 1000
- SIEBEL_OSD_LATCH = 1.2 * (cumulative MaxTasks for all components)
The following parameter settings are recommended for siebmtshw:
- export AIXTHREAD_SCOPE=S
- export YIELDLOOPTIME=4 (at least the number of processor cores)
- export SPINLOOPTIME=1000
- export LDR_CNTRL=@PREREAD_SHLIB@MAXDATA=0x80000000
- export EXTSHM=ON
- MWNO_SIGNAL_CATCHING=true (recommended by IBM during debugging of crashes to direct the mainwin library within the Siebel process to dump out its underlying signal when core dumping)
For Siebel Servers, the following settings are recommended:
- MALLOCOPTIONS=buckets,considersize,multiheap:4 (matches number of physical processor cores)
For the Siebel File System the locking daemons need to be tuned to accommodate the threads and avoid delays in storing and retrieving files. Set rpc.lockd to 511 using the following two steps:
1. chssys -s rpc.lockd -a 511
2. stopsrc -s rpc.lockd; startsrc -s rpc.lockd
Care must be exercised if virtualization is deployed and the number of available processors is allowed to vary. One customer had significant issues with Product Configurator when the number of processors available was variable. Other components may or may not have similar issues. Siebel is not tested in virtualized environments. Please see primary Note: Deploying Siebel Software on Virtualized Environments (VMs) (Doc ID 1307968.1) for details on virtualization support.
For Siebel Web Servers, the following settings are recommended for AIX 7.x and later:
- AIXTHREAD_SCOPE=S
- AIXTHREAD_MUTEX_DEBUG=OFF
- AIXTHREAD_RWLOCK_DEBUG=OFF
- AIXTHREAD_COND_DEBUG=OFF
- CORE_NAMING=true
- YIELDLOOPTIME=4 (at least the number of processor cores)
- SPINLOOPTIME=1000
- LDR_CNTRL=@PREREAD_SHLIB@MAXDATA=0x80000000
- LOADPUBLIC is obsolete
Recommended setting:
Note on AIXTHREAD_MNRATIO: for AIX 7.x and later releases, the default is 1:1 and this does not need to be explicitly set on the web server.
For Siebel Web/Application Interface Servers, the following settings are recommended:
• MALLOCOPTIONS=buckets,considersize,multiheap:4 (at least the number of physical processor cores)
For Siebel Application Interface Servers prior to IP2017, the following Apache-based server settings are recommended:
- ThreadLimit: Set equal to ThreadsPerChild Notee: This parameter must be set first in the "IfModule worker.c" section.
- MaxClients; Set to exceed the expected maximum load on the server rounded up to an even multiple of threads per child. Under no circumstances should the system be left without sufficient clients.
- ThreadsPerChild: Usually set to equal MaxClients
- ServerLimit: 1
- StartServer: 1
- MinSpareThreads: Set to the greater of "25" or 10% of MaxClients integer. Since IHS checks this value approximately once per second, MinSpareThreads should safely exceed the number of new requests you might receive in a second.
- MaxSpareThreads: Set MaxSpareThreads to 25-30% of MaxClients. If it is too small a fraction of MaxClients, child processes will be terminated and recreated frequently.
- MaxRequestsPerChild: Leave at the default of 0 for: Set recent releases.
To configure the Siebel thread stack size on the Siebel Application Interface Server prior to IP2017, for all AI servers except Oracle HTTP Server, open a new shell and execute a command similar to the following (this example sets the thread stack size to 64 KB):
C Shell: setenv SIEBEL_OSD_PTHREAD_STACK_SIZE 65536Korn or Bourne Shell: export SIEBEL_OSD_PTHREAD_STACK_SIZE=65536Stop the Web server.Start the Web server.
After making changes to AIX parameters, running cleansync to replace the OSDF files is necessary.
Contacts
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Details |
Actions |
Contacts |
References |