15.8. 关于初始化消费者
创建复制协议后,初始化消费者。在此操作过程中,供应商将现有数据复制到消费者。
重要
在初始化消费者之前,复制不会开始。
15.8.1. Initialize a Consumer 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
消费者初始化涉及将数据从供应商服务器复制到消费者服务器。当子树物理放在消费者中后,供应商服务器就可以开始向消费者服务器重新执行更新操作。
在正常操作下,不应重新初始化使用者。但是,任何时候,供应商的数据与消费者之间的数据与消费者之间有很大的差异。例如,如果供应商服务器上的数据从备份中恢复,则该服务器提供的所有消费者都应重新初始化。再举一个例子,如果供应商无法长期联系消费者,如一周,供应商可能会确定消费者在更新之时过长,必须重新初始化。
消费者可以使用 Web 控制台在线初始化,也可以使用命令行手动初始化。使用 Web 控制台进行在线消费者初始化是初始化少量用户的有效方法。但是,由于每个副本按顺序初始化,因此此方法不适用于初始化大量副本。在线消费者初始化是初始化消费者时使用的方法,作为在供应商服务器上配置复制协议的一部分。
使用命令行手动初始化消费者是单一 LDIF 文件中初始化大量用户的有效方法。
15.8.2. 设置初始化超时 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
如果因为超时而初始化大型数据库失败,请将以下内容之一设置为足够大的时间段,或设置为无限周期,使目录服务器在操作超时前初始化整个数据库:
- cn=config 条目中的
nsslapd-idletimeout配置参数为服务器上所有复制协议设置超时。例如,要在全局范围内禁用超时:# dsconf -D "cn=Directory Manager" ldap://server.example.com config replace nsslapd-idletimeout=0 - 复制控制器的 DN 中的
nsIdleTimeout参数为所有使用此复制管理器条目的协议设定超时。例如,要禁用cn=replication manager,cn=config条目的超时:# ldapmodify -D "cn=Directory Manager" -w -h server.example.com -p 389 -x dn: cn=replication manager,cn=config changetype: modify add: nsIdleTimeout nsIdleTimeout: 0
15.8.3. 初始化消费者 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
本节论述了在 web 控制台中使用命令行和 web 控制台初始化消费者。
15.8.3.1. 使用命令行初始化消费者 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
您可以使用命令行在线和离线对消费者进行初始化。本节介绍这两个流程。
15.8.3.1.1. 初始化消费者在线 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
创建复制协议后,使用 dsconf repl-agmt init 命令在线初始化消费者:
# dsconf -D "cn=Directory Manager" ldap://supplier.example.com repl-agmt \
init --suffix="suffix" agreement_name
15.8.3.1.2. 初始化消费者离线 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
初始化消费者离线:
- 在供应商中:
- 关闭供应商中的实例:
# dsctl instance_name stop - 使用复制信息导出包含复制到
/tmp/example.ldif文件的userRoot数据库:# dsctl instance_name db2ldif --replication userRoot /tmp/example.ldif - 在供应商中启动实例:
# dsctl instance_name start
- 将导出的文件复制到消费者。
- 在消费者上导入数据。详情请查看 第 6.1.2.2 节 “在服务器离线的情况下导入数据”。
15.8.4. 使用 Web 控制台初始化消费者 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
使用 Web 控制台在线初始化消费者:
- 在 web 控制台中打开 Directory Server 用户界面。请参阅 第 1.4 节 “使用 Web 控制台登录目录服务器”。
- 选择实例。
- 打开 菜单,然后选择后缀。
- 在 选项卡上,打开后缀复制协议旁边的 Choose Action 菜单,然后选择 Initialize Agreement。如果初始化成功完成,Web 控制台会在 Last Update Status 列中显示 Error (0) Replica getting successfully: Incremental update succeeded 信息。
根据要复制的数据量,初始化过程可能会非常耗时。