Directory Server performance tuning

You must tune a Directory Server instance to improve the search and update performance.

You can run the idsperftune virtual appliance command to tune a Directory Server instance and its database. To use these commands, you must log in to the virtual appliance command-line interface. See Virtual appliance commands for Directory Server.

  • To run basic tuning of the Directory Server, run the idsperftune command in the following format:
    idsperftune -I instance_name -i property_file -B -u
    When you specify the -u parameter, the LDAP cache and DB2® buffer pool settings are updated in the server and the database. If you do not specify the -u parameter, the tuning settings are logged only in the perftune_stat.log file.
  • To obtain the number of entries and average entry size from an instance and its database, run the idsperftune command in the following format:
    idsperftune -I instance_name -s
  • To run advanced tuning of the Directory Server, run the idsperftune command in the following format:
    idsperftune -I instance_name -i property_file -A -m
    When you specify the -m parameter, the monitor switches for BUFFERPOOL and SORT are turned on. To obtain accurate data for optimal tuning of your instance, run the command when directory activity is typical for your environment.

The tool generates performance tuning setting values for the Directory Server caches and DB2 buffer pools. The tool generates the tuning settings that are based on the values that you provide about the Directory Server instance. The tool can also update the tuning settings for an instance. The tool backs up the ibmslapd.conf file and saves it in the logs/ibmslapd.conf.save file in the home directory for a Directory Server instance.

The tool saves the information that you provide in the perftune_input.conf file in the home directory for a Directory Server instance.

The idsperftune command uses the values that you provide to calculate the following tuning settings for the instance:

  • Entry cache size
  • Filter cache size
  • Group Member Cache size
  • Group Member Cache Bypass Limit
  • DB2 LDAPDB buffer pool size
  • DB2 IBMDEFAULTDB buffer pool size

If your Directory Server instance is running, the tool monitors the performance of the instance and provides the database health check information. The database health check information includes the following DB2 parameters:

  • DB2 NUM_IOSERVERS
  • DB2 NUM_IOCLEANERS
  • CATALOGCACHE_SZ
  • PCKCACHESZ
  • LOGFILSIZ
  • LOCKLIST

If you run advanced tuning on an instance, the tool collects and analyzes data about the Directory Server instance. You must run the instance for some time to collect DB2 tuning data during the database health check analysis. The tool generates the tuning values for the following DB2 parameters.

  • SORTHEAP
  • MAXFILOP
  • DBHEAP
  • CHNGPGS_THRESH
  • NUM_IOSERVERS
  • NUM_IOCLEANERS

The health status suggestions for the DB2 parameters can be one of the following values:

  • OK
  • Increase
  • Decrease
  • Not Collected

The health status of DB2 parameters that are not analyzed is assigned the Not Collected value. You can use the suggested values to decide the DB2 parameters that you can tune to obtain better performance.

For better performance, you must run the tool on an instance as soon as you load the initial directory data. After the initial tuning, run the tool periodically especially after you add many entries or modify the content of entries.For more information about tuning a Directory Server instance, see the Performance Tuning and Capacity Planning section in the IBM® Security Directory Suite documentation.

You cannot use the idsperftune command to tune a Proxy Server instance or an instance that is not configured with a database.