第 7 章 调整 IdM 目录服务器性能

您可以通过调整 LDAP 属性来控制目录服务器的资源和行为来调整身份管理数据库的性能。

要调整目录服务器缓存数据的方式,请参阅以下步骤:

要调整 Directory 服务器的资源限值,请参阅以下步骤:

要调整对性能有最大影响的超时设置,请参阅以下步骤:

要安装一个带有来自 LDIF 文件中的自定义 Directory 服务器设置的 IdM 服务器或副本,请参阅以下步骤:

7.1. 调整条目缓存大小

重要

红帽建议您使用内置缓存自动缩放功能来优化性能。只有在需要与自动调整的值分离时才会更改这个值。

nsslapd-cachememsize 属性指定条目缓存的可用内存空间大小(以字节为单位)。这个属性是控制目录服务器使用的物理 RAM 最重要的值之一。

如果条目缓存太小,您可能在 Directory Server 错误日志中看到以下错误: /var/log/dirsrv/slapd-INSTANCE-NAME/errors

REASON: entry too large (83886080 bytes) for the import buffer size (67108864 bytes).  Try increasing nsslapd-cachememsize.

红帽建议在内存中安装条目缓存和数据库索引条目缓存。

默认值

209715200 (200 MiB)

有效范围

500000 - 18446744073709551615 (500 kB - (264-1))

条目 DN 位置

cn=database-name,cn=ldbm database,cn=plugins,cn=config

先决条件

  • LDAP Directory Manager 密码

流程

  1. 禁用自动缓存调整。

    [root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com backend config set --cache-autosize=0
  2. 显示数据库后缀及其对应的后端。

    [root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com backend suffix list
    cn=changelog (changelog)
    dc=example,dc=com (userroot)
    o=ipaca (ipaca)

    这个命令显示每个后缀旁的后端数据库名称。在下一步中使用后缀的数据库名称。

  3. 为数据库设置条目缓存大小。这个示例将 userroot 数据库的条目缓存设置为 2GB。

    [root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com backend suffix set --cache-memsize=2147483648 userroot
  4. 重启 Directory 服务器。

    [root@server ~]# systemctl restart dirsrv.target
  5. 监控 IdM 目录服务器的性能。如果它没有以理想的方式改变,请重复这个过程并将 cache-memsize 调整为不同的值,或者重新启用缓存自动大小。

验证步骤

  • 显示 nsslapd-cachememsize 属性的值,并将其设置为您所需的值。

    [root@server ~]# ldapsearch -D "cn=directory manager" -w DirectoryManagerPassword -b "cn=userroot,cn=ldbm database,cn=plugins,cn=config" | grep nsslapd-cachememsize
    nsslapd-cachememsize: 2147483648

其他资源