7.7. 调整文件描述符的最大数量
可以为 /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 密码。[root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com config get nsslapd-maxdescriptors Enter password for cn=Directory Manager on ldap://server.example.com: nsslapd-maxdescriptors: 4096
修改
nsslapd-maxdescriptors
属性的值。这个示例将值增加到8192
。[root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com config replace nsslapd-maxdescriptors=8192
身份验证为 Directory Manager 以进行配置更改。
Enter password for cn=Directory Manager on ldap://server.example.com: Successfully replaced "nsslapd-maxdescriptors"
-
监控 IdM 目录服务器的性能。如果它没有以理想的方式改变,请重复这个过程将
nsslapd-maxdescriptors
调整为不同的值,或者重新使用默认的4096
。
验证
显示
nsslapd-maxdescriptors
属性的值,并验证它已设置为您所需的值。[root@server ~]# dsconf -D "cn=Directory Manager" ldap://server.example.com config get nsslapd-maxdescriptors Enter password for cn=Directory Manager on ldap://server.example.com: nsslapd-maxdescriptors: 8192
其他资源
- Directory Server 12 文档中的 nsslapd-maxdescriptors (Maximum File Descriptors)