To run Systemwalker Operation Manager for UNIX version in stable condition, you must tune system parameters. Refer to the following table for the system parameters that need to be tuned, and their values. For some parameters, a value will be added to the preset value (the default value), while for others a value will be compared with the preset value and whichever is larger (the maximum) will be set. (When a value is added, refer also to the upper limit allowed by the system.) The "Type" column in the following table indicates which type each parameter is.
For more information on how to set system parameters, see the documents for respective operating systems.
With Solaris 9
Tuning system parameters
[Shared memory]
Parameter | Description | Value | Type |
---|---|---|---|
shmsys:shminfo_shmmax | Maximum size of shared memory segment | 70000 (bytes) | Maximum |
shmsys:shminfo_shmmni | Maximum number of shared memory segments that can be created in the entire system | Number of subsystems + 1 | Addition |
[Message Queue]
Parameter | Description | Value | Type |
---|---|---|---|
msgsys:msginfo_msgmax | Maximum message size | 1024 | Maximum |
msgsys:msginfo_msgmnb | Maximum number of bytes of messages in queue | The number of simultaneously started job nets (Note 1) x 200 (Note 2) | Maximum |
msgsys:msginfo_msgmni | Number of message queue identifiers | 4 x the number of subsystems in use (Note 3) | Addition |
msgsys:msginfo_msgtql | Number of message headers | The number of simultaneously started job nets (Note 1) x 4 | Addition |
If a job net with Job Execution Control attributes or Interstage attributes is to be used, add the number of simultaneously started jobs as well.
200 is a standard value. It changes depending on the host name and the path length to the output file.
Set an appropriate value after performing sufficient verification.
This is for EE version. For SE version, place 1 at "the number of subsystems in use".
[Semaphore]
Parameter | Description | Value | Type |
---|---|---|---|
semsys:seminfo_semmni | Number of semaphore identifiers | 2 | Addition |
semsys:seminfo_semopm | Number of semaphore operations allowed per semop call | 2 | Maximum |
semsys:seminfo_semmns | Number of semaphores in system | 2 | Addition |
semsys:seminfo_semmnu | Number of undo structures in system | 2 | Addition |
semsys:seminfo_semume | Number of undo structures that can be used per process | 2 | Maximum |
semsys:seminfo_semmsl | Number of semaphores per semaphore identifier | 1 | Maximum |
Tuning procedure
Use the following command to check the values of the parameters in the above table that have been set in the current system:
#/usr/sbin/sysdef |
Compare the current settings with those in the above table (under "Tuning system parameters"), then calculate an appropriate setting based on the Maximum and Addition type of each parameter.
Edit /etc/system.
Edit the records for tuning the system parameters in /etc/system as shown in the following example.
Example: Three subsystems are used in Solaris 9 and the number of job nets running simultaneously is 50
set msgsys:msginfo_msgmni = 62 set msgsys:msginfo_msgtql = 240 set semsys:seminfo_semmni = 12 set semsys:seminfo_semmns = 62 set semsys:seminfo_semmnu = 32 |
After changing the system parameters, it will be necessary to restart the system using the following command:
# cd / |
After the system has restarted, use the following command to confirm that the new system parameter settings have been applied:
# /usr/sbin/sysdef |
Display example
#/usr/sbin/sysdef : : * IPC Messages * 2048 max message size (MSGMAX) 10000 max bytes on queue (MSGMNB) 62 message queue identifiers (MSGMNI) 240 system message headers (MSGTQL) * * IPC Semaphores * 12 semaphore identifiers (SEMMNI) 62 semaphores in system (SEMMNS) 32 undo structures in system (SEMMNU) 25 max semaphores per id (SEMMSL) 10 max operations per semop call (SEMOPM) 10 max undo entries per process (SEMUME) 32767 semaphore maximum value (SEMVMX) 16384 adjust on exit max value (SEMAEM) * * IPC Shared Memory * 1048576 max shared memory segment size (SHMMAX) 1 min shared memory segment size (SHMMIN) 104 shared memory identifiers (SHMMNI) 6 max attached shm segments per process (SHMSEG) : : |
With Solaris 10 or later
Solaris 10 or later has the concept of projects. Systemwalker Operation Manager operates under the following projects.
"system" project
The project where the daemon and others existing in the initial OS environment operate
"user.root" project
The project which process gets operated during the initial OS setup environment with the root privilege.
Tuning system parameters
[Shared memory]
Parameter | Description | OS default value | Value | Type | Privilege |
---|---|---|---|---|---|
project.max-shm-memory | Maximum size of shared memory segment | The size of the physical memory of the OS (in bytes) / 4 | 70000 x the number of subsystems used (Note 1) | Addition | Privilege level |
This is for EE version. For SE version, place 1 at "the number of subsystems in use".
If jobs that use shared memory are started from Systemwalker Operation Manager, it is necessary to set values for project.max-shm-memory for the system and user.root projects in the /etc/project file, taking the size of the shared memory used by the job process into consideration.
[Message Queue]
Parameter | Description | OS default value | Value | Type | Privilege |
---|---|---|---|---|---|
process.max-msg-qbytes | Maximum number of bytes of messages in queue | 64 (KB) | (privileged, the number of simultaneously started job nets (Note 1) x 200 (Note 2), deny) | Maximum | Privilege level |
project.max-msg-ids | Number of message queue identifiers | 128 | (privileged, 4 x the number of subsystems used (Note 3), deny) | Addition | Privilege level |
When you use jobs having Job Execution Control attributes, add the number of simultaneously started jobs as well.
200 is a standard value. It changes depending on the host name and the path length to the output file.
Set an appropriate value after performing sufficient verification.
This is for EE version. For SE version, place 1 at "the number of subsystems in use".
[Semaphore]
Parameter | Description | OS default value | Value | Type | Privilege |
---|---|---|---|---|---|
project.max-sem-ids | Number of semaphore identifiers | 128 | 2 | Addition | Privilege level |
process.max-sem-ops | Number of semaphore operations allowed per semop call | 512 | 2 | Maximum | Privilege level |
process.max-sem-nsems | Number of semaphores per semaphore identifier | 512 | 1 | Maximum | Privilege level |
[Stack Size]
Parameter | Description | OS default value | Value | Type | Privilege |
---|---|---|---|---|---|
process.max-stack-size | Maximum stack memory segment size that can be used by processes | 8388608 | 2000000 (bytes) | Maximum | Basic level |
*1: When operating Systemwalker Operation Manager only, you can use the default values only without any problem. When operating it together with other products, tune the system parameters according to the maximum values of other products.
Setting system parameters
Edit the /etc/project file to change system parameters.
Before setting any system parameters, check the default values and the upper limits of the values that can be set. Examples showing how to edit and check the settings are provided below.
# projects -l |
Example showing how to edit /etc/project
This example sets the number of simultaneously started job nets to 80 and the number of subsystems in use to 5. The system has the 1G-byte physical memory.
system:0::::project.max-msg-ids=(privileged,148,deny);process.max-msg-qbytes=(privileged,65536,deny);project.max-sem-ids=(privileged,130,deny);process.max-sem-ops=(privileged,512,deny);process.max-sem-nsems=(privileged,512,deny);project.max-shm-memory=(privileged,268785456,deny);process.max-stack-size=(basic,8388608,deny) user.root:1::::project.max-msg-ids=(privileged,148,deny);process.max-msg-qbytes=(privileged,65536,deny);project.max-sem-ids=(privileged,130,deny);process.max-sem-ops=(privileged,512,deny);process.max-sem-nsems=(privileged,512,deny);project.max-shm-memory=(privileged,268785456,deny);process.max-stack-size=(basic,8388608,deny) |
Checking system parameters
After performing the above settings, the following command can be used to check the information that has been set.
# projects -l |
Confirmation command execution example
# projects -l |
Linux
Tuning system parameters
[Message Queue]
Parameter | Description | Value | Type |
---|---|---|---|
kernel.msgmnb | Maximum number of bytes of messages in queue | the number of simultaneously started job nets (Note 1) x 200 (Note 2) | Maximum |
kernel.msgmni | Number of message queue identifiers | 4 x the number of subsystems in use (Note 3) | Addition |
When you use jobs having Job Execution Control attributes, add the number of simultaneously started jobs as well.
200 is a standard value. It changes depending on the host name and the path length to the output file.
Set an appropriate value after performing sufficient verification.
This is for EE version. For SE version, place 1 at "the number of subsystems in use".
When operating multiple subsystems in Linux versions, the number of message queues is four times the number of subsystems. Therefore, it exceeds the maximum number of message queues that can be used. This may prevent the subsystems from starting.
If this happens, add the following settings to the /etc/sysctl.conf file to increase the maximum number of message queues that can be used. Restart the system after editing the file.
kernel.msgmni = 4x the number of subsystems used |
[Semaphore]
Specify semaphore values for each parameter as shown in the following table.
kernel.sem = para1 para2 para3 para4 |
Parameter | Description | Value | Type |
---|---|---|---|
para1 | Maximum number of semaphores for each semaphore identifier | 1 | Maximum |
Para2 | Number of semaphores in entire system | 2 | Addition |
Para3 | Maximum number of operators for each semaphore call | 2 | Maximum |
Para4 | Number of semaphore identifiers in entire system | 2 | Addition |
Tuning procedure
Use the following command to check the values of the parameters in the above table that have been set in the current system:
#/sbin/sysctl -a |
Compare the current settings with those in the above table (under "Tuning system parameters"), then calculate an appropriate setting based on the Maximum and Addition type of each parameter.
Edit /etc/sysctl.conf.
Edit the records for tuning the system parameters in /etc/sysctl.conf as shown in the following example.
Example: When three subsystems are used and the number of simultaneously started job nets is set to 50:
|
Use the following command to confirm that the edited content has been applied to /etc/sysctl.conf:
#/bin/cat /etc/sysctl.conf |
Use one of the following two methods to enable the above settings.
Method 1: Reboot the system to apply the settings
# cd / |
Method 2: Use /sbin/sysctl -p to apply the settings
# /sbin/sysctl -p /etc/sysctl.conf |
If this command is used, there is no need to reboot the system.
The output of the following command can be used to confirm that the new system parameter settings have been applied:
# /sbin/sysctl -a |
Confirmation example
: : |
With HP-UX
Tuning system parameters
[Message Queue]
IPF version of HP-UX 11i V2
Parameter | Description | Value | Type |
---|---|---|---|
msgtql | Number of message headers | the number of simultaneously started job nets (Note 1) x 4 | Addition |
msgmnb | Maximum number of bytes of messages in queue | the number of simultaneously started job nets (Note 1) x 200 (Note 2) | Maximum |
msgseg | Number of message segments | The number of simultaneously started job nets (Note 1) x 200 (Note 2) /The value of msgssz | Addition |
msgmap | Number of entries in message map | The value of msgtql + 2 (Note 3) | Maximum |
msgmni | Number of message queue identifiers | 4 x the number of subsystems in use (Note 4) | Addition |
IPF version of HP-UX 11i V3
Parameter | Description | Value | Type |
---|---|---|---|
msgtql | Number of message headers | The number of job nets running simultaneously (Note 1) x 4 | Addition |
msgmnb | Maximum number of bytes in a queue | The number of job nets running simultaneously (Note 1) x 200 (Note 2) | Maximum |
msgmbs | Maximum size of the message queue (MB) | The number of job nets running simultaneously (Note 1) x 200 (Note 2)/1,000,000 | Maximum |
msgmni | Number of message queue identifiers | 4 x the number of subsystems used (Note 4) | Addition |
When you use job nets with Job Execution Control attributes, add the number of simultaneously started jobs as well.
200 is a standard value. It changes depending on the host name and the path length to the output file.
Set an appropriate value after performing sufficient verification.
Find the value of msgtql, and then make calculation based on that value.
This is for EE version. For SE version, place 1 at "the number of subsystems in use".
Tuning procedure
Use a system manager or similar tool to change the kernel parameters and recreate the kernel.