搜索

第 17 章 使用 SyncRepl 协议设置内容同步

download PDF
使用 内容同步 插件,目录服务器会根据 RFC 4533 支持 SyncRepl 协议。此协议可让 LDAP 服务器和客户端使用 Red Hat Directory Server 作为源,将其本地数据库与目录服务器的更改内容同步。
使用 SyncRepl 协议:
  • 在目录服务器中启用 内容同步 插件,并选择性地创建新用户,客户端将用于绑定到目录服务器。帐户必须具有读取目录中内容的权限。
  • 配置客户端。例如,将子树的搜索基础设置为 sync。详情请查看您的客户端文档。

17.1. 使用命令行配置内容同步 插件

使用命令行配置 内容同步 插件:
  1. 内容同步 插件需要 Retro Changelog 插件来记录 nsuniqueid 属性:
    1. 要验证 retro changelog 是否已启用,请输入:
      # dsconf -D "cn=Directory Manager" ldap://server.example.com plugin retro-changelog show
      ...
      nsslapd-pluginEnabled: off
      如果 nsslapd-pluginEnabled 参数设置为 off,则会禁用重新引入更改日志。要启用,请参阅 第 15.21.1 节 “启用 Retro Changelog 插件”
    2. 添加 nsuniqueid 属性来重新引入 changelog 插件配置:
      # dsconf -D "cn=Directory Manager" ldap://server.example.com plugin retro-changelog set --attribute nsuniqueid:targetUniqueId
    3. 另外,还可应用以下建议来提高性能:
      1. 为 retro 更改日志中的条目设置最大有效期。例如,要设置 2 天(2d):
        # ldapmodify -D "cn=Directory Manager" -W -p 389 -h server.example.com -x
        
        dn: cn=changelog5,cn=config
        changetype: modify
        replace: nsslapd-changelogmaxage
        nsslapd-changelogmaxage: 2d
      2. 如果您知道哪个后端或子树客户端访问来同步数据,请限制 Retro Changelog 插件的范围。例如,要排除 cn=demo,dc=example,dc=com 子树,请输入:
        # dsconf -D "cn=Directory Manager" ldap://server.example.com plugin retro-changelog set --exclude-suffix "cn=demo,dc=example,dc=com"
  2. 启用 内容同步 插件:
    # dsconf -D "cn=Directory Manager" ldap://server.example.com plugin set --enabled on "Content Synchronization"
  3. 使用默认值,Directory 服务器会在 oid=1.3.6.1.4.1.4203.1.9.1.1,cn=features,cn=config 条目中创建访问控制指令(ACI),使所有用户能够使用 SyncRepl 协议:
    aci: (targetattr != "aci")(version 3.0; acl "Sync Request Control";
       allow( read, search ) userdn = "ldap:///all";)
    (可选)更新 ACI 以使用 SyncRepl 控制来限制。有关 ACI 的详情,请参考 第 18.11 节 “定义绑定规则”
  4. 重启 Directory 服务器:
    # dsctl instance_name restart
客户端现在可以使用 SyncRepl 协议将数据与目录服务器同步。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.