4.10. 分布式数字分配插件属性
分布式数字分配插件管理数字范围,并将该范围内的唯一数字分配给条目。通过将数字分配分成范围,分布式数字分配插件允许多个服务器分配数字而不冲突。该插件还管理分配给服务器的范围,以便在一个实例通过其范围快速运行时,可以从其他服务器请求其他范围。
分布式数字分配可以配置为处理单一属性类型或多个属性类型,并且仅应用到子树中的特定后缀和特定条目。
分布式数字分配按属性处理,仅适用于子树中的特定后缀和特定条目。
4.10.1. dnaPluginConfig (Object Class)
此对象类用于配置分配给条目的 DNA 插件和数字范围的条目。
此对象类在 Directory Server 中定义。
卓越的类
top
OID
2.16.840.1.113730.3.2.324
允许的属性
- dnaType
- dnaPrefix
- dnaNextValue
- dnaMaxValue
- dnaInterval
- dnaMagicRegen
- dnaFilter
- dnaScope
- dnaSharedCfgDN
- dnaThreshold
- dnaNextRange
- dnaRangeRequestTimeout
- cn
4.10.2. dnaFilter
此属性设置 LDAP 过滤器,用于搜索并识别要应用分布式数字分配范围的条目。
需要 dnaFilter
属性来为属性设置分布式数字分配。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 任何有效的 LDAP 过滤器 |
默认值 | 无 |
语法 | DirectoryString |
示例 | dnaFilter: (objectclass=person) |
4.10.3. dnaInterval
此属性设定一个间隔,用于通过范围中的数字递增。本质上,这会以预定义的率跳过数字。如果间隔为 3
,并且范围中的第一个数字是 1
,则范围中使用的下一个数字为 4
,然后 7
,然后是 10
,每新编号分配递增 3。
在复制环境中,dnaInterval
可让多个服务器共享相同的范围。但是,当您配置共享相同范围的不同服务器时,相应地设置 dnaInterval
和 dnaNextVal
参数,以便不同的服务器不会生成相同的值。如果您在复制拓扑中添加新服务器,还必须考虑这一点。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 任何整数 |
默认值 | 1 |
语法 | 整数 |
示例 | dnaInterval: 1 |
4.10.4. dnaMagicRegen
此属性设置用户定义的值,以指示插件为条目分配新值。magic 值可用于为现有条目分配新的唯一数字,或者在添加新条目时作为标准设置。
magic 条目应位于服务器定义的范围之外,以便意外地触发它。请注意,在 DirectoryString 或其他字符类型中使用此属性时,此属性不必是一个数字。但是,在大多数情形中,DNA 插件仅用于仅接受整数值的属性,在这种情况下,dnamagicregen
值也必须是整数。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 任何字符串 |
默认值 | 无 |
语法 | DirectoryString |
示例 | dnaMagicRegen: -1 |
4.10.5. dnaMaxValue
此属性设置可以为范围分配的最大值。默认值为 -1
,它与设置最高 64 位整数相同。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 1 到 32 位系统的最大 32 位整数,以及 64 位系统上的最大 64 位整数; -1 代表没有限制 |
默认值 | -1 |
语法 | 整数 |
示例 | dnaMaxValue: 1000 |
4.10.6. dnaNextRange
此属性定义在当前范围耗尽时使用的下一个范围。这个值会在服务器间传输范围时自动设置,但也可以手动设置它,以便在不使用范围请求时将范围添加到服务器。
只有当需要为其他服务器分配特定范围时,才应明确设置 dnaNextRange
属性。dnaNextRange
属性中设置的任何范围都必须从其他服务器可用的范围内唯一,以避免重复。如果没有来自其他服务器的请求,并且明确设置了 dnaNextRange
的服务器达到其 set dnaMaxValue
,则会从这个 deck 中分配下一个值集合( dnaNextRange
的一部分)。
dnaNextRange
分配也受 DNA 配置中设置的 dnaThreshold
属性的限制。为 dnaNextRange
分配给另一个服务器的任何范围都无法违反服务器的阈值,即使该范围在 dnaNextRange
上可用。
如果没有明确设置,如果在内部处理 dnaNextRange
属性。当它被自动处理时,dnaMaxValue
属性充当下一个范围的上限。
属性设置范围,格式为 lower_range-upper_range。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 1 到 32 位系统上的最大 32 位整数,以及 64 位系统上为较低和大写的 64 位整数 |
默认值 | 无 |
语法 | DirectoryString |
示例 | dnaNextRange: 100-500 |
4.10.7. dnaNextValue
此属性提供可分配的下一个可用数字。最初在配置条目中设置后,此属性由分布式数字分配插件管理。
需要 dnaNextValue
属性来为属性设置分布式数字分配。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 1 到 32 位系统的最大 32 位整数,以及 64 位系统上的最大 64 位整数 |
默认值 | -1 |
语法 | 整数 |
示例 | dnaNextValue: 1 |
4.10.8. dnaPrefix
此属性定义一个前缀,该前缀可以添加到属性生成的数字值前。例如,若要生成用户 ID,如 user1000
,dnaPrefix
设置将是 用户
。
dnaPrefix
可以存放任何类型的字符串。但是,dnaType
的一些可能值(如 uidNumber
和 gidNumber
)只需要整数值。要使用前缀字符串,请考虑对允许字符串的 dnaType
使用自定义属性。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 任何字符串 |
默认值 | 无 |
示例 | dnaPrefix: id |
4.10.9. dnaRangeRequestTimeout
分布式数字分配插件的一个潜在情况是,一个服务器开始耗尽要分配的数字。dnaThreshold
属性在范围内设置可用数字的阈值,以便服务器可以在无法执行编号分配前从其他服务器请求额外的范围。
dnaRangeRequestTimeout
属性为范围请求设置一个超时时间(以秒为单位),以便服务器不会停止等待一个服务器的新范围,并可以从新的服务器请求范围。
若要执行范围请求,必须设置 dnaSharedCfgDN
属性。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 1 到 32 位系统的最大 32 位整数,以及 64 位系统上的最大 64 位整数 |
默认值 | 10 |
语法 | 整数 |
示例 | dnaRangeRequestTimeout: 15 |
4.10.10. dnaScope
此属性设置基本 DN 以搜索应用分布式数字分配的条目。这与 ldapsearch
中的基本 DN 类似。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 任何目录服务器条目 |
默认值 | 无 |
语法 | DirectoryString |
示例 | dnaScope: ou=people,dc=example,dc=com |
4.10.12. dnaThreshold
分布式数字分配插件的一个潜在情况是,一个服务器开始耗尽要分配的数字,这可能会导致出现问题。分布式数字分配插件允许服务器从其他服务器上可用范围请求新范围。
因此,服务器可以在达到其分配的范围结束时识别,dnaThreshold
属性设置 范围内的剩余可用数字阈值。当服务器达到阈值时,它会为新范围发送请求。
若要执行范围请求,必须设置 dnaSharedCfgDN
属性。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 1 到 32 位系统的最大 32 位整数,以及 64 位系统上的最大 64 位整数 |
默认值 | 100 |
语法 | 整数 |
示例 | dnaThreshold: 100 |
4.10.13. dnaType
此属性设定为它们生成有唯一数字的属性。在这种情况下,每当属性添加到带有 magic 号的条目时,会自动提供一个分配的值。
需要此属性来为属性设置分布式数字分配。
如果设置了 dnaPrefix
属性,则前缀值会添加到由 dnaType
生成的任何值。dnaPrefix
值可以是任何类型的字符串,但 dnaType
的一些合理的值(如 uidNumber
和 gidNumber
)只需要整数值。要使用前缀字符串,请考虑对允许字符串的 dnaType
使用自定义属性。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
有效范围 | 任何目录服务器属性 |
默认值 | 无 |
示例 | dnaType: uidNumber |
4.10.15. dnaHostname
此属性标识共享范围内的服务器的主机名,作为多层次复制中该特定主机的 DNA 范围配置的一部分。可用的范围由主机跟踪,范围信息在所有供应商间复制,以便在任何供应商在可用数量上运行低时,可以使用主机信息联系其他供应商并请求新的范围。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
语法 | DirectoryString |
有效范围 | 任何有效的主机名 |
默认值 | 无 |
示例 | dnahostname: ldap1.example.com |
4.10.16. dnaPortNum
此属性提供用于连接到 dnaHostname
中标识的主机的标准端口号。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
语法 | 整数 |
有效范围 | 0 到 65535 |
默认值 | 389 |
示例 | dnaPortNum: 389 |
4.10.17. dnaRemainingValues
此属性包含剩余的值数,并可供服务器分配到条目。
参数 | 描述 |
---|---|
条目 DN | dnaHostname=host_name+dnaPortNum=port_number,ou=ranges,dc=example,dc=com |
语法 | 整数 |
有效范围 | 任何整数 |
默认值 | 无 |
示例 | dnaRemainingValues: 1000 |
4.10.18. dnaRemoteBindCred
指定 Replication Manager 的密码。如果您在需要身份验证的 dnaRemoteBindMethod
属性中设置了 bind 方法,还要为 cn=config
条目下插件配置条目的复制部署中的各个服务器设置 dnaRemoteBindDN
和 dnaRemoteBindCred
参数。
以纯文本形式设置 参数。该值会在存储前自动 AES 加密。
需要重新启动服务器才能使更改生效。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
语法 | DirectoryString {AES} encrypted_password |
有效值 | 任何有效的 AES 加密密码。 |
默认值 | |
示例 | dnaRemoteBindCred: {AES-TUhNR0NTcUdTSWIzRFFFRkRUQm1NRVVVHQ1NxR1NYjNEUUVGRERBNEJDUmxObUk0WXpjM1l5MHdaVE5rTXpZNA0KTNxaE9XSMMOHTXRHTKUTKUTT |
4.10.19. dnaRemoteBindDN
指定复制管理器 DN。如果您在需要身份验证的 dnaRemoteBindMethod
属性中设置了 bind 方法,还要为 cn=config
条目下的插件配置中的复制部署中的各个服务器设置 dnaRemoteBindDN
和 dnaRemoteBindCred
参数。
需要重新启动服务器才能使更改生效。
参数 | 描述 |
---|---|
条目 DN | cn=DNA_config_entry,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config |
语法 | DirectoryString |
有效值 | 任何有效的复制管理器 DN。 |
默认值 | |
示例 | dnaRemoteBindDN: cn=replication manager,cn=config |
4.10.20. dnaRemoteBindMethod
指定远程绑定方法。如果您在此属性中设置了需要身份验证的 bind 方法,还要在 cn=config
条目下的插件配置条目中为每个服务器设置 dnaRemoteBindDN
和 dnaRemoteBindCred
参数。
需要重新启动服务器才能使更改生效。
参数 | 描述 |
---|---|
条目 DN | dnaHostname=host_name+dnaPortNum=port_number,ou=ranges,dc=example,dc=com |
语法 | DirectoryString |
有效值 |
|
默认值 | |
示例 | dnaRemoteBindMethod: SIMPLE |
4.10.21. dnaRemoteConnProtocol
指定远程连接协议。
需要重新启动服务器才能使更改生效。
参数 | 描述 |
---|---|
条目 DN | dnaHostname=host_name+dnaPortNum=port_number,ou=ranges,dc=example,dc=com |
语法 | DirectoryString |
有效值 |
|
默认值 | |
示例 | dnaRemoteConnProtocol: LDAP |
4.10.22. dnaSecurePortNum
此属性提供用来连接到 dnaHostname
中标识的主机的安全(TLS)端口号。
参数 | 描述 |
---|---|
条目 DN | dnaHostname=host_name+dnaPortNum=port_number,ou=ranges,dc=example,dc=com |
语法 | 整数 |
有效范围 | 0 到 65535 |
默认值 | 636 |
示例 | dnaSecurePortNum: 636 |