2 Installing Eloquence on the HP-UX platform
Eloquence resource requirements depend on configuration and usage:
Citing the SAM online documentation on kernel parameters:
Certain kernel operating parameters can be configured to fit specific system needs, resulting in better performance or more effective allocation of resources. The ideal value for each parameter is often determined by the system's particular hardware configuration, the specific mix of applications the system runs, and the trustworthiness of system users; factors that vary widely from system to system.
HP attempts to provide reasonable default parameter settings, but you may find it necessary or beneficial to modify these settings to better suit the needs of your particular system's users. Use the list below to obtain detailed information about each configurable kernel parameter.
WARNING: Changing kernel parameters to improper or inappropriate values or combinations of values can cause data loss, system panics, or other operating anomalies, depending on which parameters are set to what values. Before altering the value of any configurable kernel parameter, be sure you know the implications of making the change. Never set any system parameter to a value outside the allowable range for that parameter (SAM refuses to store values outside of the allowable range). Many parameters interact, and their values must be selected in a balanced way.
Note that individual parameters usually pertain to a specific subsystem; some are independent, but others are interrelated or interact with each other. The following subsections are grouped according to subsystem.
At the system console:
proc: table is fullAlso, if a user tries to start a new process from a shell, the following message prints on their terminal:
no more processes
If a user attempts to start a new process that would cause the total number of processes for that user to exceed maxuprc, the system issues an error message to the user:
no more processesThe maxuprc should be much smaller than the nproc parameter, otherwise a single user could use up all system resources (for example due to a program failure).
After rasing this value you also need to create the new pty slave and master side device files in the /dev/pty and /dev/ptym directories. This can be done with insf(1m). Please note, that for npty values above 60 you have to specify the -n argument to insf.
/sbin/insf -n 60 -d pty
The ninode parameter specifies the maximum number of open inodes that can be in memory. Each unique open file has an open inode associated with it. Therefore, the larger the number of unique open files, the larger ninode should be.
Also the maxfile_lim specifies the max. number of files that could be opened by a single process.
Each DATA file opened within eloqcore needs a lock for each process. So this value should be adapted to the anticipated usage. Each eloqcore process can currently open up to 20 DATA files concurrently.
Setting shmmni to an arbitrarily large number wastes memory and can degrade system performance. Setting the value too high on systems with small memory configuration may consume enough memory space that the system cannot boot. Select a value that is close to actual system requirements for optimum memory usage. A value not exceeding 1024 is recommended unless system requirements dictate otherwise.
The shmseg parameter specifies maximum number of shared memory segments that can be simultaneously attached to a single process. The HP-UX default is 12.
If using IPC transport for the eloqdb6 database server with separate shared memory segments (EnableIPC=1) the shmseg value should be adapted to the max. number of concurrent local processes accessing a single server.
If using IPC transport for the eloqdb5 and eloqdb6 servers, it may be necessry to adapt this value according to the anticipated max. number of concurrent local eloqcore processes which access the eloqdb5 or eloqdb6 server.
The semmap parameter specifies the size of the free-space resource map used for allocating new System V IPC semaphores. The HP-UX default is semmni+2.
If semaphore usage is heavy and a request for a semaphore set cannot be accommodated, the following message appears:
danger: mfree map overflowYou should then configure a new kernel with a larger value for semmap.
The semmns parameter specifies the system-wide maximum number of individual semaphores that can be allocated. The HP-UX default is 128 which should usually be sufficient.
The semmnu parameter defines the maximum number of processes that can have undo operations pending on semaphores. The HP-UX default is 30.
If using IPC transport for the eloqdb5 and eloqdb6 servers, it may be necessary to adapt this value according to the anticipated max. number of concurrent local eloqcore processes which access the eloqdb5 or eloqdb6 server. A semaphore undo entry is required for each process accessing the eloqdb5 or eloqdb6 servers with using the IPC transport.
The semume parameter defines the maximum number of semaphores that a given process can have undo operations pending on. The HP-UX default is 10.
An undo is a special, optional, flag in a semaphore operation which causes that operation to be undone if the process which invoked it terminates. semume specifies the maximum number of semaphores that any given process can have undos pending on.
If using IPC transport for the eloqdb5 and eloqdb6 servers, it may be necessary to adapt this value according to the anticipated max. number of concurrent local eloqcore processes which access the eloqdb5 or eloqdb6 server. A semaphore undo entry is required for each process accessing the eloqdb5 or eloqdb6 servers with using the IPC transport.
* semmns should be set to at least 230
The eloqdb6 server needs a sepaphore for each connection and in addition a few semaphores internally.
* semume should be set to at least 200
The eloqdb6 server uses a semaphore undo operation for each local connection. This should cover the largest eloqdb6 instance on the system.
* maxfiles_lim needs to set to at least 250
The eloqdb6 server opens a file (a socket) for each connection and in addition one for each volume file and log file.
* shmseg should be set to at least 200
The highest number of shared memory segments that can be attached to a single process. As eloqdb6 needs a separate shared memory segment per connection this should cover the largest eloqdb6 instance on the system.
* nfile should be set to at least 6000
Each eloqcore process may open up to 60 files.
* nflocks should be set to at least 2000
Each eloqcore may obtain up to 20 file locks.
In your /etc/services file should be entries like below. Please make sure the specified port numbers are available on your system:
eloqsd 8100/tcp # Eloquence A.06.00 eloqsd server eloqdb 8102/tcp # Eloquence A.06.00 eloqdb6 server eloqdb5 8104/tcp # Eloquence A.06.00 eloqdb5 server runsrv 8010/tcp # Eloquence RunSRV (Windows)where the first column specifies the service name (eg. eloqsd) and the second column the associated port number and protocol (eg. 8100/tcp). The selected port numbers may not already be in use by another programs.
You may want to define the Eloquence specific service names in your /etc/services file (if you are using NIS it is probably required to do this on the NIS master server). This is optional, as you can specify the port number directly instead of a service name.
If a temporary license was created during installation this step may be skipped and the permanent license added later.
If the Personal Edition license should be used this step is not necessary as the PE license key is included in the default license template file.
The /opt/eloquence6/etc/chklic utility may be used to verify the license file.
The automatic server startup is configured in the Eloquence startup configuration file /etc/rc.config.d/eloquence6. Please refer to the next section for details