12.3 时间同步

本节中的信息可以帮助您了解并设置 OES 2 服务器上的时间同步:

12.3.1 时间同步概述

eDirectory 树中的所有服务器必须同步其时间以确保按照 eDirectory 对象出现的正确顺序进行更新和更改。

eDirectory 从所在的 OES 2 服务器的操作系统(NetWare 或 Linux)获取时间。因此,树中的每台服务器具有相同时间至关重要。

了解时间同步模块

由于 OES eDirectory 树包含的服务器可能运行 OES 2 Linux、OES 2 NetWare,或 NetWare 的以前版本,因此必须了解每个操作系统使用的时间同步模块之间的差别,以及这些模块之间的交互方式。

OES 2 Linux 与 OES 2 NetWare

图 12-1所示,OES 2 NetWare(和 NetWare 6.5)可以使用网络时间协议 (Network Time Protocol, NTP) 或 Timesync 模块进行时间同步。这两个模块都可以使用 NTP 与 OES 2 Linux 进行通讯。

OES 2 Linux 必须使用 NTP 守护程序 (xntpd)。

图 12-1 Linux 和 NetWare 的时间同步

OES Linux 使用 NTP 时间模块。OES NetWare 可以使用 NTP 或 TIMESYNC 模块。
OES 2 服务器使用网络时间协议 (NTP) 进行通讯

由于 OES 2 Linux 和 NetWare 服务器必须相互通讯才能进行时间同步,同时 Linux 只能使用 NTP 进行时间同步,因此 Linux 和 NetWare 必须通过使用 NTP 时间包交换时间同步信息。

但是,这不会限制 NetWare 上的选项。

图 12-2说明了 OES 2 Linux 和 NetWare 服务器可以自由交换时间同步信息,因为 OES 2 NetWare 包含以下程序:

  • TIMESYNC NLM™,可使用并提供 NTP 时间包以及 Timesync 包。

  • XNTPD NLM,可提供 Timesync 包和标准 NTP 功能。

注:虽然 NetWare 包含两个时间同步模块,但一次只能装载一个。

图 12-2 NTP 包与所有 OES 时间同步模块兼容

所有 OES 时间同步模块均可以交互。
与 NetWare 的早期版本兼容

NetWare 的早期版本(4.2 版到 6.0 版)不包含 NTP 时间模块。因此,它们的时间同步选项的限制更多。

NetWare 5.1 和 6.0 服务器

图 12-3说明了虽然 NetWare 5.1 和 6.0 不包含 NTP 时间模块,但是它们可以使用并传递 NTP 时间包。

图 12-3 NetWare 5.1 和 6.0 的 NTP 兼容性

NetWare 5.1 和 6.0 中的 TIMESYNC NLM 可以使用并提供 NTP 时间包。

NetWare 5.0 和 4.2 服务器

图 12-4说明了 NetWare 4.2 和 5.0 服务器只能占用和提供 Timesync 包。

图 12-4 NetWare 5.0 和 4.2 服务器上的同步时间

NetWare 5.0 既可以使用 Timesync,也可以提供它。NetWare 4.2 只能使用时间,而不能提供时间。

因此,如果 eDirectory 树中有 NetWare 4.2 或 5.0 服务器,并且想要安装 OES 2 Linux 服务器,则必须至少有一台 NetWare 5.1 或较新版本的服务器以在 NTP 和 Timesync 时间包之间提供“网桥”。图 12-5说明了这些早期版本的服务器可以通过 OES 2 NetWare 服务器进行同步。

重要说明:图 12-4所示,我们建议不要将 NetWare 4.2 服务器用作时间源。

作为时间提供程序的 OES 2 服务器

图 12-5显示了将 OES 2 服务器用作其它 OES 2 服务器和 NetWare 服务器(包括 NetWare 4.2 或较新版本)的时间提供程序的方法。

图 12-5 作为时间提供程序的 OES 2 服务器

作为时间使用者的 OES 2 服务器

图 12-6显示了 OES 2 服务器用于同步服务器时间的时间源。

重要说明:注意,其中显示的 NetWare 4.2 不是有效的时间源。

图 12-6 作为时间使用者的 OES 2 服务器

12.3.2 规划时间同步

本节中的信息可以帮助您了解时间同步规划的基本内容。

有关更详细的规划信息,请参见以下资源:

网络大小决定所需规划的级别

网络所需的时间同步规划的级别在很大程度上取决于服务器的数量以及它们所处的位置,如以下各节所示。

对少于三十台服务器的树进行时间同步

如果树中的服务器少于三十台,则时间同步的默认安装设置应满足除树中安装的第一台服务器以外的所有服务器的需要。

应配置树中的第一台服务器以获取来自该树外部一个或多个时间源的时间。(请参见安装 OES 前规划时间同步层次结构中的步骤 1。)

所有其它的服务器(Linux 和 NetWare)会自动指向树中第一台服务器以满足它们对时间同步的需要。

对多于三十台服务器的树进行时间同步

如果树中的服务器多于三十台,需要使用与网络结构和时间同步策略匹配的时间同步职能规划并配置服务器。例如,职能可以包含以下内容:

  • 可接收来自外部时间源的时间并向层次结构上的其它服务器发送包的服务器

  • 与其它对等关系的服务器进行通讯以确保彼此同步的服务器

安装 OES 前规划时间同步层次结构中总结了基本规划步骤。

请参见以下来源获得有关规划时间服务器职能的其它帮助信息:

跨地理边界的时间同步

如果树中的服务器位于多个地理位置,则需要规划整个网络的时间同步方式以最大程度地减少网络通讯量。有关更多信息,请参见《OES 2:Novell NTP for NetWare 管理指南》中的广域配置

在 Timesync 和 NTP(仅用于 NetWare)之间进行选择

安装 OES 2 NetWare 服务器时,可以选择 Timesync 或 NTP 进行时间同步。

如果选择 Timesync 选项,安装每台服务器时可以进行完整配置以匹配时间同步规划。

如果选择 XNTPD 选项,则最多可以指定三个 NTP 时间源,但在完成安装后优化 NTP 层次结构时需要一些手工配置。有关帮助信息,请参见《OES 2:Novell NTP for NetWare 管理指南》

关于 Timesync

Timesync 是 Novell 的传统时间同步协议,最早随 NetWare 4 一起发布。经过几年的发展,现在能够使用并递送 NTP 包和 Timesync 包。

以默认方式安装并配置 Timesync 以确保成功集成 NetWare 的早期版本。但是,许多系统管理员要迁移 Timesync 并实施 NTP。

关于 NTP

NTP 是许多网络管理员的新选择,因为:

  • 他们认为管理单个时间同步协议比较容易。

    例如,相同的基本配置文件 (ntp.conf) 既可用于 Linux 又可用于 NetWare。

  • NTP 是适用于多种平台的跨平台行业标准。

  • OES 2 NetWare 上运行的 XNTPD NLM 可以为不能使用 NTP 的 NetWare 服务器(NetWare 5.0 和 4.2)提供 Timesync 包,从而允许它们在 NTP 时间网络中共存。

安装 NetWare 期间指定时间同步的位置

在安装 NetWare 的过程中,可以通过“时区”面板中的“高级选项”打开选择 Timesync 或 NTP 的对话框。有关选择 Timesync 或 NTP 的信息,请参见《OES 2:NetWare 安装指南》中的设置服务器时区和时间同步方法

安装 OES 前规划时间同步层次结构

时间同步的最明显结果是使所有网络服务器(和工作站,如果需要)具有相同的时间。完成的最佳方法是:安装第一台 OES 2 服务器前规划时间同步层次结构,然后安装时配置每台服务器,这样就可以形成类似于图 12-7中介绍的层次结构。

图 12-7 基本时间同步层次结构

通过在时间同步层次结构中配置服务器完成时间同步。

规划层次结构时,执行以下操作:

  1. 至少为层次结构的顶部位置标识两个授权的外部 NTP 时间源。

    1. 如果网络已有一个就绪的 NTP 服务器层次结构,则标识相应时间服务器的 IP 地址。该服务器有可能在网络内,但它应在 eDirectory 树的外部并且最后可从公共 NTP 服务器上获取时间。

    2. 如果网络当前不使用时间同步,请参见 ntp.org 万维网站点上的公共 NTP 服务器列表并标识可以使用的时间服务器。

  2. 规划哪些服务器将接收外部源的时间并且先安装这些服务器。

  3. 确定树中每台 Linux 服务器的位置,包括它的时间源和向其提供时间的服务器。

  4. 确定树中每台 NetWare 服务器的位置。

    1. 包括服务器的时间源和向其提供时间的服务器。

    2. 确定对服务器使用 Timesync 还是 NTP。(请参见在 Timesync 和 NTP(仅用于 NetWare)之间进行选择。)

    3. 如果网络当前只有 NetWare 4.2 或 5.0 服务器,则一定要规划它们的时间同步需要,方法是:在树中至少包括一台较新版本的 NetWare 服务器,并配置较旧版本的服务器以将较新版本的服务器用作它们的时间源。(请参见NetWare 5.0 和 4.2 服务器。)

  5. 确保配置层次结构中的每台服务器以接收来自至少两个源的时间。

  6. (视具体情况而定)如果网络跨多个地理位置,则需规划网络上特别是整个 WAN 上与时间相关的流量的连接。

    有关更多信息,请参见《OES 2:Novell NTP for NetWare 管理指南》中的广域配置

有关更多规划信息,请参见以下文档:

12.3.3 时间同步服务的共存和迁移

设计好 OES 中的时间同步模块以确保可以将运行 NetWare 或 Linux 的新 OES 2 服务器引入现有的网络环境,而不需要中断就绪的任何产品和服务。

Linux 和 NetWare 安装会尽可能地自动进行时间同步进程,如部分 12.3.4, 实施时间同步所述。

本节讨论以下各节中介绍的涉及在 OES 中时间同步的共存和迁移问题:

共存

本节介绍有关 OES 时间同步模块与现有 NetWare 或 Linux 网络以及与 TIMESYNC NLM 以前版本共存的信息。该信息可以帮助您放心地将新的 OES 2 服务器安装到现有网络中。

兼容性

以下表格概述了 OES 时间同步模块与其它时间同步模块和 eDirectory 的兼容性。这些兼容性如图 12-5图 12-6所示。

模块

兼容性

TIMESYNC NLM (NetWare)

可以使用以下来源的时间:

  • 所有以前版本的 Timesync。但是,不能将 NetWare 4.2 TIMESYNC NLM 用作时间源。

  • 所有 TIMESYNC 或 NTP 守护程序。

可以提供时间给

  • 所有以前版本的 Timesync。

  • 所有 TIMESYNC 或 NTP 守护程序。

XNTPD NLM (NetWare)

可以使用以下来源的时间:

  • 所有 NTP 守护程序。

可以提供时间给

  • 所有以前版本的 Timesync。

  • 所有 NTP 守护程序。

xntpd 守护程序 (SLES 10)

可以使用以下来源的时间:

  • 所有 NTP 守护程序。

可以提供时间给

  • 所有 NTP 守护程序。

eDirectory

eDirectory 可以从主机 OS(Linux 或 NetWare)而不是从时间同步模块中获取它的时间同步信息。

共存问题

如果您的 NetWare 服务器版本低于 5.1,则需要至少安装一台较新版本的 NetWare 服务器以在早期版本服务器上的 TIMESYNC NLM 和网络中的所有 OES 2 Linux 服务器之间形成网桥。这是因为 Timesync 的早期版本不能使用或提供 NTP 时间包,并且 Linux 上的 xntpd 守护程序不能提供或使用 Timesync 包。

幸运的是,NetWare 5.1 以及较新版本中的 TIMESYNC NLM 可以使用并提供 Timesync 包。同时,XNTPD NLM 可以根据需要提供 Timesync 包。

这在与 NetWare 的早期版本兼容中有说明。

迁移

以下各节介绍与迁移关联的时间同步问题。

迁移路径

迁移路径取决于数据要迁移到的平台。

  • 从 NetWare 到 NetWare: 由于所有关联的模块和配置文件都驻留在 sys:system 中,因此 NetWare 迁移向导(Timesync 和 XNTPD 模块)将迁移所有的时间同步配置设置。

  • 从 NetWare 到 Linux: 从 NetWare 到 Linux 无法进行直接的服务器迁移。但是,如果 XNTPD 用于 NetWare 上的时间同步,并且配置在 Linux 服务器驻留的网络上有效,则 sys:system\ntp.conf 文件内容在 Linux 服务器上的作用与 /etc/ntp.conf 文件一样不会发生改变。

迁移工具

使用以下工具进行迁移服务:

建议的步骤

根据说明迁移所使用的模块。

迁移问题

无。

12.3.4 实施时间同步

规划实施时间同步层次结构时,应了解 OES 2 NetWare 和 OES 2 Linux 产品安装程序在网络上配置时间同步的方式。两个安装程序会查看是创建一个新树还是安装到一个现有树中。

新树

默认状态下,OES 2 Linux 和 OES 2 NetWare 安装程序会配置树中的第一台服务器以便将它的内部 (BIOS) 时钟用作该树的授权时间源。

由于 BIOS 时钟在一段时间后会出错,因此应始终为树中第一台服务器指定可靠的外部 NTP 时间源。有关查找可靠 NTP 时间源的帮助信息,请参见万维网上的 NTP 服务器列表

OES 2 Linux

配置安装的 eDirectory 时,OES 2 Linux 安装程序会提示兼容 NTP v3 的时间服务器的 IP 地址或 DNS 名称。

如果要在新的 eDirectory 树中安装第一台服务器,可以有两种选择:

  • 输入授权 NTP 时间源的 IP 地址或 DNS 名称(推荐)。

  • 使字段显示为“本地时间”,这样可将服务器配置为使用它的 BIOS 时钟作为授权时间源。

    重要说明:我们不推荐第二种方法,因为 BIOS 时钟会随时间产生故障,从而导致 eDirectory 产生严重问题。

OES 2 NetWare

默认情况下,NetWare 安装程序会自动配置 TIMESYNC NLM 以使用服务器的 BIOS 时钟。如前所述,不建议在生产网络中使用这种默认行为。因此,在安装每台 NetWare 服务器时,应手工配置时间同步(Timesync 或 NTP)。

安装期间,通过单击“高级”按钮可在“时区”对话框中访问手工时间同步配置,如在 Timesync 和 NTP(仅用于 NetWare)之间进行选择中所述,详细内容请参见《OES 2:NetWare 安装指南》中的设置服务器时区和时间同步方法

现有树

服务器连接一个现有的 eDirectory 树时,两个 OES 安装程序的操作大致相同。

OES 2 Linux

如果安装到一个现有树,OES 2 Linux 安装程序会建议将 eDirectory 服务器(NetWare 或 Linux)的 IP 地址用作 NTP 时间源。除非出现以下情况之一,否则选择此默认选项即可满足需要:

  • 基准服务器是 NetWare 5.0 或早期版本的服务器,在这种情况下,需要标识并指定树中另一台运行较新版本 NetWare 或 OES 2 Linux 服务器的地址。

  • 如果树中有 30 多台服务器,在这种情况下,需要配置服务器以适合所规划的时间同步层次结构。有关更多信息,请参见安装 OES 前规划时间同步层次结构

OES 2 Linux 安装程序可激活 xntp 守护程序并配置它以同步服务器时间与指定的 NTP 时间源。安装完成后,可配置守护程序与其它时间源一起使用以确保容错。有关更多信息,请参见更改 SLES 10 服务器上的时间同步设置

OES 2 NetWare

如果安装到一个现有树中,OES 2 NetWare 安装程序首先查看在设置服务器时区时,手工配置的是 NTP 还是 Timesync 时间同步源(请参见《OES 2:NetWare 安装指南》中的设置服务器时区和时间同步方法)。

如果树中有 30 多台服务器,应根据“时区”面板中的规划开发时间同步规划(请参见安装 OES 前规划时间同步层次结构)并配置服务器。

如果还没有手工配置服务器的时间同步源(例如,如果树中的服务器少于 30 台),安装程序会自动配置 Timesync NLM 以指向带有该树 [ROOT] 分区主复本的服务器 IP 地址。

12.3.5 配置并管理时间同步

更改网络时,可能需要调整服务器上的时间同步设置。

更改 SLES 10 服务器上的时间同步设置

此方法可用于 GUI 和命令提示符,是确保成功实施 NTP 的最可靠方法。

  1. 通过导航到桌面上的应用程序或在命令提示符后键入 yast 启动 SLES 10 服务器上的 YaST。

  2. 单击(或选择使用选项卡和箭头键)“网络服务”>“NTP 客户端”

  3. 在“NTP 客户端配置”对话框中,单击“复杂配置”

  4. 根据需要修改 NTP 时间设置。

更改 NetWare 服务器上的时间同步设置

时间同步设置和它们的修改可能性介绍详见以下管理指南: