7.7. 调整 IdM 目录服务器中文件描述符的最大数量
可以为 /etc/systemd/system.conf 文件中的 DefaultLimitNOFILE 参数定义一个值。具有 root 特权的管理员可使用 setrlimit 命令为 ns-slapd 进程的 DefaultLimitNOFILE 参数设置一个较低的值。然后,这个值优先于 /etc/systemd/system.conf 中的值,并被身份管理(IdM)目录服务器(DS)作为 nsslapd-maxdescriptors 属性的值所接受。
nsslapd-maxdescriptors 属性设置 IdM LDAP 使用的最大的、独立于平台的文件描述符数。文件描述符用于客户端连接、日志文件、套接字和其他资源。
如果没有在 /etc/systemd/system.conf 中或通过 setrlimit 定义任何值,则 IdM DS 会将 nsslapd-maxdescriptors 属性设置为 1048576。
如果 IdM DS 管理员稍后决定为 nsslapd-maxdescriptors 手动设置一个新值,则 IdM DS 会将新值与 setrlimit 或 /etc/systemd/system.conf 中本地定义的值进行比较,结果如下:
-
如果
nsslapd-maxdescriptors的新值大于本地定义的值,则服务器会拒绝新值设置,并继续将本地限制值强制为高水位值。 - 如果新值低于本地定义的值,则将使用新值。
此流程描述了如何为 nsslapd-maxdescriptors 设置新值。
先决条件
- LDAP Directory Manager 密码
流程
检索
nsslapd-maxdescriptors参数的当前值,并在需要恢复任何调整前记录它。提示时输入 Directory Manager 密码。dsconf -D "cn=Directory Manager" ldap://<server_fqdn> config get nsslapd-maxdescriptors
[root@server ~]# dsconf -D "cn=Directory Manager" ldap://<server_fqdn> config get nsslapd-maxdescriptors Enter password for cn=Directory Manager on ldap://server.example.com: nsslapd-maxdescriptors: 4096Copy to Clipboard Copied! Toggle word wrap Toggle overflow 修改
nsslapd-maxdescriptors属性的值。这个示例将值增加到8192。dsconf -D "cn=Directory Manager" ldap://<server_fqdn> config replace nsslapd-maxdescriptors=8192
[root@server ~]# dsconf -D "cn=Directory Manager" ldap://<server_fqdn> config replace nsslapd-maxdescriptors=8192Copy to Clipboard Copied! Toggle word wrap Toggle overflow 身份验证为 Directory Manager 以进行配置更改。
Enter password for cn=Directory Manager on ldap://server.example.com: Successfully replaced "nsslapd-maxdescriptors"
Enter password for cn=Directory Manager on ldap://server.example.com: Successfully replaced "nsslapd-maxdescriptors"Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
监控 IdM 目录服务器的性能。如果没有改进,请重复此步骤并将
nsslapd-maxdescriptors调整为不同的值,或者重新使用默认的4096。
验证
显示
nsslapd-maxdescriptors属性的值,并验证它已设置为您所需的值。dsconf -D "cn=Directory Manager" ldap://<server_fqdn> config get nsslapd-maxdescriptors
[root@server ~]# dsconf -D "cn=Directory Manager" ldap://<server_fqdn> config get nsslapd-maxdescriptors Enter password for cn=Directory Manager on ldap://server.example.com: nsslapd-maxdescriptors: 8192Copy to Clipboard Copied! Toggle word wrap Toggle overflow