Skip Headers

Oracle Calendar Server Administrator's Guide
Release 5.5

Part Number B10093-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Feedback

Go to previous page
Previous
Go to next page
Next
View PDF

C
System Configuration

This appendix details the modifications that must be made to certain kernel parameters and operating environments in order to ensure that sufficient resources are allocated to the server. It also details issues in server configuration that must be considered in order to support certain special operating environments such as Solaris clusters.

Adjusting kernel parameters

The UNIX system parameters that need adjustment are used to control resource consumption on a user-, process-, or system-wide basis. In the case of either a user or a process parameter, the new value for the parameter should be the existing value or the calendar server requirement, whichever is larger. In the case of a system-wide parameter, the server requirement must be added to the existing value to calculate a new value.

Assume that Corporate-Wide Services is disabled. Observe that in extreme situations (i.e. power failure), all server sessions will be terminated in rapid succession. Thus, in the worst case, the maximum number of simultaneous log-ons and log-offs can be as large as [LCK] lck_users. The server therefore requires at least the following resources:

Table C-1 Calculating new kernel parameter values
parameter description new value

max. number of concurrent processes per user-id:

[ 2( lck_users) + 10 ] processes per user *

soft file limit per process:

[ db_files + 10 ] files per-process**

hard file limit per process:

[ db_files + 10 ] files per-process, or [ number of nodes + 10 ] files per process, whichever is larger

max. number of concurrent processes:

[ 2( lck_users) + 10 ] processes (system-wide)

max. number of open files:

[ (lck_users + 1) * (db_files + 5) + 20 ] files (system-wide)

* limitations for this parameter only apply if the calendar server runs as the user "unison"

** If you have not specified a value for the parameter [DB] db_files in /users/unison/misc/unison.ini, use the default value of 30 for all calculations

If Corporate-Wide Services is enabled, further resources are required:

The total resource requirements when Corporate-Wide Services are enabled:

Table C-2 Calculating new kernel parameter values with CWS enabled
parameter description new value

soft file limit per process:

[ db_files + 10 ] files per-process

hard file limit per process:

[ db_files + 10 ] files per-process, or [ number of nodes + 10 ] files per process, whichever is larger

max. number of concurrent processes per user-id:

[ 2( lck_users) + 20 ] processes per-user*

max. number of concurrent processes:

[ 2( lck_users) + 20 ] processes (system-wide)

max. number of open files:

[ (lck_users + 1) * (db_files + 5) + 40 ] files (system-wide)

* limitations for this parameter only apply if the calendar server runs as the user "unison"

Finally, consider the message and semaphore resource requirements of the server, which are independent of Corporate-Wide Services:

Table C-3 Calendar server message and semaphore requirements
parameter description requirement

max. number of message queue identifiers:

[ lck_users + 1 ] message queue identifiers (system-wide)

max. number of message headers:

[ lck_users + 1 ] message headers (system-wide)*

max. number of semaphore identifiers:

[ 1 ] semaphore identifier (system-wide)

max. number of semaphores:

[ 1 ] semaphore (system-wide)

message segment size

64 bytes

* This formula presumes that each calendar server message fits into a single message segment. A message can vary in length between 56 and 114 bytes.

The memory allocation in bytes as related to the Lock Manager daemon (unilckd):

400 Kb * lck_users

A final comment concerning the uniengd daemon/service: this executable has been compiled (cc) in share mode (-n) insuring that all concurrently executing copies of uniengd share a single instruction section (sometimes called "Program text segment") to save memory.


Note:

The system clock must be running and properly set.


Adjusting the HP-UX kernel parameters

The following section describes the maximum kernel requirements, and as such should apply to most HP-UX installations. All parameters can be modified via SAM, a menu-based system administration manager.

The assumption is that Corporate-Wide Services is enabled, and that less than 30 nodes are present on the host. The assumptions concerning the server unison.ini file parameters are:

In the "NEW setting" column below, the "max" function returns the larger of the two arguments, and the "min" function returns the smaller of the two arguments.

Table C-4 HP-UX kernel parameters
Kernel Parameter Parameter Description OLD setting Calendar server requirement NEW setting

maxfiles

soft file limit per process

X

40

max(40,X)

maxfiles_lim

hard file limit per process

X

40

max(40,X)

maxuprc

max. number of concurrent processes per user-ID

X

2*N+20

max((2*N+20),X)

nproc

max. number of concurrent processes

X

2*N+20

(2*N+20)+X

nfile

max. number of open files

X

35*N+75

(35*N+75)+X

msgmni

max. number of message queue identifiers

X

N + 1

N + 1 + X

msgssz

size of message segments

X

144

max(144,X)

msgmnb

max total size of all messages in a queue simultaneously

X

min(65535, (msgssz * lck_users) )

min(65535, (msgssz * lck_users) + X)

msgtql

max. number of message headers

X

N + 1

N + 1 + X

semmni

max. number of semaphore identifiers

X

1

1 + X

semmns

max. number of semaphores

X

1

1 + X

The following is an actual example involving 500 users:

Adjusting the Solaris kernel parameters

Solaris provides tunable parameters for the kernel and kernel modules. While normally you should not need to change these parameters, there are special circumstances under which it is necessary. Under Solaris, kernel parameters are modified by directly editing the /etc/system file with a standard text editor. All of the parameters are set using the following syntax:

set maxuprc=2641 
set max_nprocs=2636

In addition, the message queue and semaphore parameters must include the name of the specific module to be modified. The syntax is as follows:

set msgsys:msginfo_msgmni=351 
set semsys:seminfo_semmni=345

In order for the above changes to take effect, reboot the system.

To see a complete list of the tunable kernel parameters, run the nm command on the appropriate module. For example:

% /usr/ccs/bin/nm/kernel/genunix 

To see the current values assigned to the kernel parameters, use the sysdef command. For example:

% sysdef -i

The assumption is that Corporate-Wide Services is enabled, and that less than 30 nodes are present on the host. The assumptions concerning the unison.ini parameters are:

In the columns below, the "max" function returns the larger of the two arguments.

Table C-6 Solaris Kernel Parameters
Kernel Parameter Parameter Description OLD setting Calendar server requirement NEW setting

rlim_fd_cur

soft file limit per process

X

40

max(40,X)

rlim_fd_max

hard file limit per process

X

max(db_files + 10, number of nodes + 11)

max(X, db_files + 10, number of nodes + 11)

maxuprc

max. number of concurrent processes per user-ID

X

2*N+20

max((2*N+20),X)

max_nproc

max. number of concurrent processes

X

2*N+20

(2*N+20)+X

msgsys:msginfo_msgmni

max. number of message queue identifiers

X

2*N

(2*N) + X

msgsys:msginfo_msgtql

max. number of message headers

X

N

N + X

msgsys:msginfo_msgssz +

size of message segments

X

144

max(144,X)

msgsys:msginfo_msgmnb

number of bytes in any message queue

X

msgssz * N

(msgssz * N) + X

msgsys:msginfo_msgseg +

maximum message segments in all queues

X

N

N + X

msgsys:msginfo_msgmap +

Number of free space resource map entries

X

N

N + X

semsys:seminfo_semmni

max. number of semaphore identifiers

X

1

1 + X

semsys:seminfo_semmns

max. number of semaphores

X

1

1 + X

+ Available on Solaris 2.6 and 7 only.

The maximum number of open files is unlimited under Solaris, and therefore does not need to be set.

The following is an example with 500 users:

Adjusting the AIX kernel parameters

Unlike many other UNIX operating systems, AIX does not provide the ability to directly configure most kernel parameters. Instead, the AIX kernel dynamically allocates and reallocates resources as they are needed (up to a predefined limit).

For calendar server installations, the only kernel parameter that should be altered is maxuproc (maximum number of processes per user-ID), which can be modified via SMIT (AIX's menu-based system administration utility) or the command line utility chdev.

To see a complete list of the parameters and their current values, run the lsattr command:

% /etc/lsattr -E -l sys0

To see the current values assigned to a particular kernel parameter, use the lsattr command with the parameter name. For example:

% /etc/lsattr -E -l sys0 -a maxuproc

To change the value of the maxuproc parameter, use the chdev command. For example:

% /etc/chdev -l sys0 -a maxuproc = 200

As stated above, the AIX kernel dynamically allocates and reallocates resources as they are needed up to a predefined limit. The known limits of the parameters are as follows:

Table C-8 AIX kernel parameters
Kernel Parameter Description Upper Limit

soft file limit per process

2000

hard file limit per process

2000

max. number of concurrent processes per user-id:

configurable, cannot exceed 131,072

max. number of concurrent processes on the system

131,072

max. number of open files

200000

max. number of message queue identifiers

4096

max. number of message headers

unlimited; 8192 per message queue.

max. number of semaphore identifiers

4096

max. number of semaphores

unlimited; 65535 per semaphore id.

The practical limits of the server, defined as the maximum number of concurrent users on a system, are effectively determined by the upper limits of the maximum number of open files. Assuming there are no other activity or resource requirements on the system, the maximum number of concurrent users (lck_users) under AIX is approximately 10000*20+60=200060.

Adjusting the Tru64 kernel parameters

Modify your Tru64 kernel parameters using the /usr/bin/X11/dxkerneltuner utility. Editing the "Current Value" field will apply changes only until the system is rebooted; editing the "Boot Time Value" field will apply changes permanently at the next boot. Altering both values will apply the changes both immediately and permanently.

For information on command-line utilities for kernel adjustment, consult the relevant documentation on the /sbin/sysconfig and /sbin/sysconfigdb commands.

The assumption is that Corporate-Wide Services is enabled, and that less than 30 nodes are present on the host. The assumptions concerning the unison.ini parameters are:

In the "NEW setting" column below, the "max" function returns the larger of the two arguments.

Table C-9 Tru64 kernel parameters
Kernel Parameter Parameter Description OLD setting Calendar server requirement NEW setting

PROC/open-max-soft

soft file limit per process

X

40

max(40,X)

PROC/open-max-hard

hard file limit per process

X

40

max(40,X)

PROC/max_proc_per_user

max. number of concurrent processes per user-ID

X

2*N+20

max((2*N+20),X)

PROC/maxusers

max. number of concurrent processes

X

2*N+20

(2*N+20)+X

VFS/max_vnodes

max. number of open files

X

35*N+75

(35*N+75)+X

IPC/msg_mni

max. number of message queue identifiers

X

N + 1

N + 1 + X

IPC/msg_tql

max. number of message headers

X

N + 1

N + 1 + X

IPC/sem_mni

max. number of semaphore identifiers

X

1

1 + X

The following is an actual example involving 500 users:

Adjusting the Windows kernel

Oracle Calendar server is subject to the default Windows limit on memory size per process (2 Gb). You can improve performance for installations with large numbers of connections (1000 or more) by configuring your Windows kernel to allow processes up to 3 Gb of memory by following the instructions given on Microsoft's Web site at:

http://support.microsoft.com/support/kb/articles/Q171/7/93.ASP 

This feature is available for Windows NT Server, Enterprise Edition version 4.0 and greater.

Using operating system clusters

The term "cluster" does not refer to the same concept as a calendar server cluster -- a calendar server cluster is a node network in which one node is designated a "master node" for the purposes of client sign-in, automated registration, etc., while an operating system cluster is considered to be a system in which two or more machines can be used to manage the same data, providing failover capabilities.

In these environments, it is important to differentiate between the physical host name, which is the actual host name of a given machine, and the cluster host name, which is the host name of the cluster containing that machine. If you intend to use your calendar server in a cluster environment, you should set all parameters in the unison.ini file that require the host name of the local host to the cluster host name. In addition, you must add the [ENG] calendarhostname parameter to unison.ini, and set its value to the cluster host name. Finally, if using an external LDAP directory server, you must ensure that the [YOURHOSTNAME, unidas] section specifies the cluster host name in place of YOURHOSTNAME.

If using a node network, ensure also that your nodes.ini file uses only cluster host names instead of physical host names, and ensure that all clients are using the cluster host name to sign in to the calendar server.

Limitations

When a machine containing a master node switches over to another machine in the cluster, Oracle Web clients can have difficulty signing in, since master nodes currently identify themselves to clients using physical host names.

Additional reading

For more information on modifying the kernel parameters under Solaris, refer to Administering Security, Performance, and Accounting by Sun Microsystems, Inc.

HP-UX system parameters are described in Appendix A, System Parameters, of the HP-UX manual entitled System Administration Tasks.

For more information on AIX performance tuning and administration, please consult AIX Performance Tuning by IBM, Prentice Hall, 1996.

Information on Tru64 kernel parameters is available in the Compaq Tru64® UnixTM System Configuration and Tuning manual, by Compaq Computer Corporation, 1999.

An excellent source of general information on this topic is System Performance Tuning by Mike Loukides, O'Reilly & Associates, Inc., 1991.