The Tape Server requires tuning of the kernel parameters, which are necessary for operation. This tuning depends on the system type to be set.
Note
To perform the operation indicated in "8.2 Customization of Storage Server or Storage Management Server", the values of kernel parameters in that section must be added to the values that are indicated below.
In addition to the conventional method, in which kernel parameters are defined in the /etc/system file, Solaris 10 has added a method in which they are defined in the /etc/project file.
Under Solaris 9 and Solaris 10 (tuning using /etc/system)
Kernel parameter tuning values
Resource | Parameter | Tuning value | Recommended settings |
---|---|---|---|
Shared memory | shmsys:shminfo_shmmax | 268435456 | Maximum value |
shmsys:shminfo_shmmni | Tape backup concurrency (*1) | Addition | |
Semaphore | semsys:seminfo_semmni | 50 | Addition |
semsys:seminfo_semmns (*2) | 300 | Addition | |
semsys:seminfo_semmnu (*2) | 150 | Addition | |
semsys:seminfo_semopm | 50 | Maximum value | |
semsys:seminfo_semume (*2) | 50 | Maximum value | |
semsys:seminfo_semmsl | 125 | Maximum value | |
Messages | msgsys:msginfo_msgtql | Tape backup concurrency x 8 (*1) | Addition |
msgsys:msginfo_msgmni | Tape backup concurrency x 4 (*1) | Addition |
*1 The backup concurrency indicates the number of times backup to tape and restoration from tape are performed during operation. Specify the maximum value for the backup concurrency that is enabled during operation. A transaction volume has a concurrency of one for one backup command.
*2 This setting is not required under Solaris 10.
Tuning procedure
To edit a kernel parameter, add a record for tuning into the /etc/system file or change the current values of the corresponding record.
Use the following command to check the values of the parameters set in the current system.
# /usr/sbin/sysdef |
Refer to "Table: Kernel parameter tuning values" to calculate new settings for each parameter, using the higher of the tuning value and the existing value wherever Maximum value is specified, and adding the tuning value to the existing value wherever Addition is specified.
An example of editing the /etc/system file is shown below. (This is only an example. Use suitable values for your system environment.)
set shmsys:shminfo_shmmax = 268435456 set shmsys:shminfo_shmseg = 60 set semsys:seminfo_semmni = 320 set semsys:seminfo_semmns = 670 set semsys:seminfo_semmnu = 542 set semsys:seminfo_semmsl = 35 |
To register the new kernel parameter values in the system, reboot the system. Use the following command to reboot the system.
# cd / # /usr/sbin/shutdown -y -i6 -g0 |
After the system is rebooted, use the following command to check that the correct values have been set.
# /usr/sbin/sysdef |
Under Solaris 10(tuning using /etc/project)
Note
If the server where this product is used also uses other software that only supports tuning by means of the /etc/system file, those setting values must be taken into account.
If the /etc/system file and /etc/project file are both used to implement tuning, refer to the operating system documentation for setting appropriate values.
When the /etc/project file is used to implement tuning, ensure that the values set are not less than the Solaris default values.
The Tape Manager operates under the following projects:
System projects
Projects operated by the daemons that exist in the operating systems default state and similar daemons
user.root projects
Projects belonging to processes run with root authority in the operating systems default state
Resource control tuning values
Resource | Parameter | Tuning value | Recommended setting | Privilege level |
---|---|---|---|---|
Shared memory | project.max-shm-memory | 268435456 | Addition | Privileged |
project.max-shm-ids | Tape backup concurrency (*1) | Addition | Privileged | |
Semaphore | project.max-sem-ids | 50 | Addition | Privileged |
process.max-sem-nsems | 125 | Maximum value | Privileged | |
process.max-sem-ops | 50 | Maximum value | Privileged | |
Messages | project.max-msg-ids | Tape backup concurrency x 4 (*1) | Addition | Privileged |
*1 The backup concurrency indicates the number of times backup to tape and restoration from tape are performed during operation. Specify the maximum value for the backup concurrency that is enabled during operation. A transaction volume has a concurrency of one for one backup command.
To set the privilege level, specify "privileged" in the /etc/project file.
Tuning procedure
To edit parameters, modify the /etc/project file.
Check the initial values and the upper limits of the values that can be set for system projects and user.root projects.
# newtask -p system # prctl $$ NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT process.max-port-events privileged 65.5K - deny - system 2.15G max deny - process.max-msg-messages privileged 8.19K - deny - system 4.29G max deny - ~ omitted ~ zone.cpu-shares privileged 1 - none - system 65.5K max none - # newtask -p user.root # prctl $$ NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT process.max-port-events privileged 65.5K - deny system 2.15G max deny process.max-msg-messages privileged 8.19K - deny - system 4.29G max deny - ~ omitted ~ zone.cpu-shares privileged 1 - none - system 65.5K max none - |
Refer to "Table: Resource control tuning values" to calculate new settings for each parameter, using the higher of the tuning value and the existing value wherever Maximum value is specified, and adding the tuning value wherever Addition is specified.
Use the projmod command to set values for system projects and user.root projects.
An example of editing the /etc/project file is shown below. (This is only an example. Use suitable values for your system environment).
# projmod -s -K 'process.max-sem-nsems=(privileged,125,deny)' system # projmod -s -K 'process.max-sem-ops=(privileged,50,deny)' system # projmod -s -K 'project.max-sem-ids=(privileged,438,deny)' system # projmod -s -K 'process.max-sem-nsems=(privileged,125,deny)' user.root # projmod -s -K 'process.max-sem-ops=(privileged,50,deny)' user.root # projmod -s -K 'project.max-sem-ids=(privileged,438,deny)' user.root |
Use the following command to check the settings information.
The following is an example of executing the commands.
# projects -l system projid : 0 comment: "" users : (none) groups : (none) attribs: process.max-sem-nsems=(privileged,125,deny) process.max-sem-ops=(privileged,50,deny) project.max-sem-ids=(privileged,438,deny) user.root projid : 1 comment: "" users : (none) groups : (none) attribs: process.max-sem-nsems=(privileged,125,deny) process.max-sem-ops=(privileged,50,deny) project.max-sem-ids=(privileged,438,deny) noproject projid : 2 comment: "" users : (none) groups : (none) attribs: default projid : 3 comment: "" users : (none) groups : (none) attribs: group.staff projid : 10 comment: "" users : (none) groups : (none) attribs: # |
Enable tuning of the kernel parameters.
The following is an example of executing the commands. Please refer to the manual etc. of Solaris for details of the command.
system projects
# newtask -p system |
user.root projects
# newtask -p user.root |
Check the kernel parameter values after modification.
The following is an example of executing the commands. Please refer to the manual etc. of Solaris for details of the command.
system projects
# prctl -i project system |
user.root projects
# prctl -i project user.root |