Question & Answer
Question
How do you configure the Change Management Server (CM Server) to ensure optimal performance for ClearCase Remote Client (CCRC) users in ClearCase version 7.1 and higher?
Answer
System Resources
All Platforms
- CM Server host must have a minimum of 8 GB of memory.
UNIX
- General
- Swap space on UNIX machines must be twice the size of memory at a minimum.
- Use an AIX Power 5 or Power 6 host system.
- You must install the fix for APAR IZ55804 (AIX 5.3) or IZ52038 (AIX 6.1) to correct a problem that causes the portmapper daemon to hang. The fix is included in the 5300-11 technology level. To obtain the fix for AIX 6.1 refer to http://www-01.ibm.com/support/docview.wss?uid=isg1fixinfo112964
- Set the following operating system parameters:
- Increase the following tunable kernel parameter:
- Disable the Nagle algorithm:
Solaris SPARC
Solaris 9
Add the following to lines to
/etc/system
:
set shmsys:shminfo_shmmax = 4294967295
set shmsys:shminfo_shmseg = 1024
set shmsys:shminfo_shmmni = 1024
set semsys:seminfo_semaem = 16384
set semsys:seminfo_semmni = 1024
set semsys:seminfo_semmap = 1026
set semsys:seminfo_semmns = 16384
set semsys:seminfo_semmsl = 100
set semsys:seminfo_semopm = 100
set semsys:seminfo_semmnu = 2048
set semsys:seminfo_semume = 256
set msgsys:msginfo_msgmap = 1026
set msgsys:msginfo_msgmax = 65535
set rlim_fd_cur=65535
Solaris 10
Run the following commands:
projmod -s -K 'project.max-shm-memory=(privileged,4gb,deny)' user.root
projmod -s -K 'project.max-shm-ids=(privileged,1024,deny)' user.root
projmod -s -K 'project.max-sem-ids=(privileged,1024,deny)' user.root
projmod -s -K 'process.max-sem-nsems=(privileged,512,deny)' user.root
projmod -s -K 'process.max-sem-ops=(privileged,512,deny)' user.root
projmod -s -K 'process.max-file-descriptor=(privileged,65535,deny)' user.root
These settings persist in
/etc/project
.Solaris 10
Disable the Nagle algorithm by using the following command:
ndd -set /dev/tcp tcp_naglim_def 1
no -o tcp_nagle_limit=0
Most TCP implementations use the Nagle algorithm, where a TCP connection can have only one outstanding small segment that has not been acknowledged. This issue causes TCP to delay sending further packets until it receives an acknowledgement or until it can bundle more data and send a full-size segment.
You must disable the Nagle algorithm when using the ClearQuest Web application.
no -o clean_partial_conns=1
Specifies whether synchronize-the-sequence-number (SYN) attacks are avoided.
Enable this option for the ClearQuest Web application to protect against network attacks.
no -o tcp_nodelayack=1
Enabling this parameter causes TCP to send immediate acknowledgement (ACK) packets to the sender. When the parameter tcp_nodelayack
is off, TCP delays sending ACK packets by up to 200 ms. This issue allows the ACK packet to piggyback on a response and minimizes the system over-head.
For optimal performance, enable this parameter.
no -o rfc1323=1
Enables window scaling and time stamps as specified by RFC 1323 (TCP Extensions for High Performance). Window scaling allows the TCP window sizes (
tcp_recvspace
and tcp_sendspace
) to be larger than 64 KB (65,536) and is typically used for large maximum transmission unit (MTU) networks. If your ClearCase VOBs or ClearQuest databases are hosted on a Windows system, enable this parameter for optimal performance.
The default limits are not sufficient to support peak CCRC load.
To make AIX tunable changes permanent or present after reboot, the -p flag should be used.
maxfiles=4096
maxfiles_lim=8192
nfile=16384
ndd -set /dev/tcp tcp_naglim_def 1
Linux
cd /etc/pam.d
cp login clearcase
- Edit file
clearcase
and comment out the line that contains the stringsecurety
(usually the first line).
Windows
- For CCRC only
- Services associated with the CM Server profile
IBM WebSphere Application Server V6.1 - cmprofile
must be set to allow the service to interact with the desktop system: - Click Administrative Tools > Services.
- Right-click IBM WebSphere Application Server V6.1 - cmprofile.
- Click Log On.
- Select Allow service to interact with desktop.
- Increase the desktop heap size. See the following technote for details:
http://www-01.ibm.com/support/docview.wss?uid=swg21142584
- Set SessionViewSize to 96 or 192 based on expected peak load. Start with 96 and increase to 192 if out-of-memory errors occur in \Program Files\IBM\RationalSDLC\Common\CM\profiles\cmprofile\logs\server1\SystemOut.log during peak load.
The CM Server may be tuned for optimal performance for CCRC users based on expected peak load (concurrent CCRC users). The following list of parameters can be adjusted to achieve the desired performance level. See the CM Server information in the Administering ClearCase information center MBean topic for instructions on how to modify these MBeans.
- maxServersPerCredential - Default value is 5. Must be equal to or greater than 2.
Purpose: Limits the number of ClearCase RPC processes that can be active for one set of user credentials (domain, username, ClearCase primary group, ClearCase groups).
Configuration: The default value is 5, which works well on CM Servers that host large numbers of CCRC users. If the server is expected to serve only a few users at peak load, this value can be increased to give each user more system resources.
Notes: Setting this value too high can cause fewer users to access ClearCase simultaneously. Setting this value too low can cause ClearCase operations to take longer for each ClearCase user who is logged on.
- serverThresholdCount – Default value is 200. Must be equal to or greater than 0.
- Purpose: One of the parameters governing the life of each ClearCase RPC process. Lifecycle management becomes effective after the total number of active ClearCase RPC processes is larger than this count.
- maxServerCount - Default value is 300. Must be equal to or greater than 1.
Configuration: Constrained to a value that is less than or equal to maxServerCount. If you need to increase this value, increase the maxServerCount value first, if needed. This value should be set to the average number of CCRC users that will access the CM server.
Notes: Reducing the value makes the lifecycle management process run more frequently. Values too low will cause the system to be affected by the over-head of stopping and starting processes.
Description: The maximum number of ClearCase RPC processes that can be active at a given time.
Configuration:: Constrained to a value that is greater than or equal to serverThresholdCount. If you need to decrease this value, decrease the serverThresholdCount value first, if needed. This value should be set to 1.5 times the average number of CCRC users that will access the CM server.
Notes: The value of this MBean dictates the resource usage on the host server. When choosing a value, you must consider the resource limits of the server.
Use the WebSphere Application Server (WAS) admin console to set the following parameters as needed. Access the WAS admin console using http://localhost:12060/ibm/console
- J2C Connection pool - Default value is 400.
Description: The maximum number of connections to ccrpc backend processes.
Configuration:: Increase the J2C Connection pool value "Maximum Connections" if you increase the CcServerFactoryMBean value for "Maximum RPC server processes" (maxServerCount).
The Maximum Connections value is located at: Applications > Enterprise Applications > TeamEAR > Manage Modules > OncrpcConnector > Resource Adapter > J2C connection factories > CcRpc >
Connection pool properties
- Thread Pools - Default maximum for both Default and WebContainer pools is 200.
Description: Maximum size of thread pools used by CM Server. Enabling thread allocation beyond the maximum size avoids the need to customize these values based on server load.
Configuration: If there are more than 200 CCRC users who will access the CM Server, modify the default thread pool settings by navigating to Servers > Application servers > server1 > Thread Pools > Default and ensure that Allow thread allocation beyond maximum thread size is selected in the "Additional Properties" section.
Also modify the Web Container thread pool settings by navigating to Servers > Application servers > server1 > Thread Pools > WebContainer and ensure that Allow thread allocation beyond maximum thread size is selected.
Was this topic helpful?
Document Information
Modified date:
01 August 2018
UID
swg21327082