20.10. 使用 timemaster 同步到 PTP 或者 NTP Time
如果网络上有多个 PTP 域,或者需要回退到 NTP,则 timemaster 程序可用于将系统时钟同步到所有可用的时间源。PTP 时间由 phc2sys 和 ptp4l 通过 共享内存驱动程序 提供(SHM 参考时钟到 chronyd 或 ntpd (取决于系统上配置的 NTP 守护进程)。然后 NTP 守护进程可以比较所有时间源,包括 PTP 和 NTP,并使用最佳源来同步系统时钟。
启动时,timemaster 会读取指定 NTP 和 PTP 时间源的配置文件,检查哪些网络接口具有自己的或共享 PTP 硬件时钟(PHC),为 ptp4l 和 chronyd 或 ntpd 生成配置文件, 并根据需要启动 ptp4l、phc2sys 和 chronyd 或 ntpd 进程。它将在退出时删除生成的配置文件。它将 chronyd、ntpd 和 ptp4l 的配置文件写入 /var/run/timemaster/。
20.10.1. 启动 timemaster 即服务 复制链接链接已复制到粘贴板!
要启动 timemaster 作为服务,以 root 身份运行以下命令:
systemctl start timemaster
~]# systemctl start timemaster
这将读取 /etc/timemaster.conf 中的选项。有关在 Red Hat Enterprise Linux 7 中管理系统服务的详情请参考 第 10 章 使用 systemd 管理服务。
20.10.2. 了解时间 master 配置文件 复制链接链接已复制到粘贴板!
Red Hat Enterprise Linux 提供了一个默认的 /etc/timemaster.conf 文件,其中包含包含默认选项的多个部分。部分标题括在方括号中。
要查看默认配置,请使用以下命令:
请注意如下部分:
[ntp_server address]
[ntp_server address]
这是 NTP 服务器部分"ntp-server.local"的示例,是本地 LAN 上 NTP 服务器的主机名示例。根据需要添加更多部分,将主机名或 IP 地址 用作小节名称的一部分。请注意,示例中的简短轮询值不适合公共服务器,请参阅 第 19 章 使用 ntpd 配置 NTP 了解合适的 minpoll 和 值的说明。
maxpoll
请注意如下部分:
[ptp_domain number]
[ptp_domain number]
"PTP 域"是一个或多个 PTP 时钟的组,它们相互同步。它们不一定同步到另一个域中的时钟。使用相同域编号配置的时钟组成了域。这包括一个 PTP Pu master 时钟。每个"PTP 域"部分中的域编号需要与网络上配置的 PTP 域之一对应。
每个接口都启动 ptp4l 实例,该接口具有自己的 PTP 时钟,并且硬件时间戳会自动启用。支持硬件时间戳的接口附加了 PTP 时钟(PHC),但 NIC 上的一组接口可共享 PHC。将为共享同一 PHC 的每个接口以及仅支持软件时间戳的每个接口启动单独的 ptp4l 实例。所有 ptp4l 实例都配置为作为从设备运行。如果在多个 PTP 域中指定了硬件时间戳的接口,则只有创建的第一个 ptp4l 实例才会启用硬件时间戳。
请注意如下部分:
[timemaster]
[timemaster]
默认 timemaster 配置包括系统 ntpd 和 chrony 配置(/etc/ntp.conf 或 /etc/chronyd.conf),以包含访问限制和身份验证密钥的配置。这意味着,指定的所有 NTP 服务器都将与 timemaster 一起使用。
部分标题如下:
-
[ntp_server ntp-server.local]- 指定此服务器的轮询间隔。根据需要创建其他部分。在小节标题中包含主机名或IP 地址。 -
[ptp_domain 0]- 指定为此域配置了PTP时钟的接口。根据需要,使用相应的域号创建其他部分。 -
[timemaster]- 指定要使用的NTP守护进程。可能的值有chronyd和ntpd。 -
[chrony.conf]- 指定要复制到为chronyd生成的配置文件的任何额外设置。 -
[NTP.conf]- 指定要复制到为ntpd生成的配置文件的任何其他设置。 -
[ptp4l.conf]- 指定要复制到为 ptp4l 生成的配置文件中的选项。 -
[chronyd]- 指定命令行上要传递给chronyd的任何其他设置。 -
[ntpd]- 指定命令行上要传递给ntpd的任何其他设置。 -
[phc2sys]- 指定要在命令行中传递给 phc2sys 的任何其他设置。 -
[ptp4l]- 指定命令行上要传递给所有 ptp4l 实例的任何其他设置。
部分标题和其内容在 timemaster(8)手册页 中详细讨论。
20.10.3. 配置 timemaster 选项 复制链接链接已复制到粘贴板!
编辑 timemaster 配置文件
要更改默认配置,打开
/etc/timemaster.conf文件以root用户身份编辑:vi /etc/timemaster.conf
~]# vi /etc/timemaster.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
对于您要使用 timemaster 控制的每个
NTP服务器,创建[ntp_server address]部分。请注意,示例部分中的简短轮询值不适合公共服务器,请参阅 第 19 章 使用 ntpd 配置 NTP 了解合适的minpoll 和值的说明。maxpoll 要添加域中应该使用的接口,编辑
#[ptp_domain 0]部分并添加接口。根据需要创建其他域。例如:[ptp_domain 0] interfaces eth0 [ptp_domain 1] interfaces eth1[ptp_domain 0] interfaces eth0 [ptp_domain 1] interfaces eth1Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
如果需要将
ntpd 用作此系统上的 NTP守护进程,请将[timemaster]部分中的默认条目从chronyd 改为ntpd。有关 ntpd 和 chronyd 之间的区别,请查看 第 18 章 使用 chrony 套件配置 NTP。 -
如果在此系统上使用
chronyd作为NTP服务器,请在默认选项下方添加任何附加选项,在[条目。如果已知到chrony.conf] 部分中包含 /etc/chrony.conf/etc/chrony.conf的路径已更改,请编辑默认include条目。 -
如果在此系统上使用
ntpd作为NTP服务器,请在默认选项下方添加任何附加选项,在[条目。如果已知到ntp.conf] 部分中包含 /etc/ntp.conf/etc/ntp.conf的路径已更改,请编辑默认include条目。 -
在
[ptp4l.conf]部分中,添加要复制到为 ptp4l 生成的配置文件的任何选项。本章记录了常用选项和更多信息,请参见ptp4l(8)手册页面。 -
在
[chronyd]部分中,添加 时间master 调用时要传递给chronyd的任何命令行选项。有关使用chronyd的详情,请查看 第 18 章 使用 chrony 套件配置 NTP。 -
在
[ntpd]部分中,添加 时间master 调用时要传递给ntpd的任何命令行选项。有关使用ntpd的详情,请查看 第 19 章 使用 ntpd 配置 NTP。 -
在
[phc2sys]部分中,添加任何要传递给 phc2sys 的命令行选项(如果 时间master 调用 )。本章记录了常用选项和更多信息,请参见phy2sys(8)手册页面。 -
在
[ptp4l]部分中,添加任何要传递给 ptp4l 的命令行选项(如果被 timemaster 调用 )。本章记录了常用选项和更多信息,请参见ptp4l(8)手册页面。 以
root用户身份运行以下命令保存配置文件并重启 timemaster :systemctl restart timemaster
~]# systemctl restart timemasterCopy to Clipboard Copied! Toggle word wrap Toggle overflow