这两种同步服务器的方式之间的优缺点是什么?
在我看来,您的服务器每天的漂移时间可能不会超过1秒,因此在crontab上使用ntpdate是可以的。但是我听说你可以在这里使用冗余的NTP服务器
http://www.pool.ntp.org/en/use.html
为了在故障情况下保持同步时间。
你有什么建议吗?
这两种同步服务器的方式之间的优缺点是什么?
在我看来,您的服务器每天的漂移时间可能不会超过1秒,因此在crontab上使用ntpdate是可以的。但是我听说你可以在这里使用冗余的NTP服务器
http://www.pool.ntp.org/en/use.html
为了在故障情况下保持同步时间。
你有什么建议吗?
Answers:
NTP算法包括一些信息,可让您计算和修复服务器时钟中的漂移。NTPD包括使用此功能使您的时钟保持同步的能力,并且比未运行NTPD的计算机上的时钟更准确地运行。NTPD还将使用多台服务器来提高准确性。
ntpdate不会保留任何状态为您执行此服务,因此不会提供相同的准确性。它将为您提供服务器列表,它将用于尝试为您提供更好的结果,但这不能替代NTPD中提供的复杂算法,该算法可跟踪您随时间推移从每台服务器上的漂移。
NTPDATE立即纠正系统时间,这可能会导致某些软件出现问题(例如,破坏现在看起来很旧的会话)。NTPD故意缓慢地纠正系统时间,避免了该问题。您可以在启动NTPD时添加-g开关,以允许NTPD首次进行较大的更新,这等效于在启动NTPD之前运行一次ntpdate,建议一次这样做。
出于安全方面的考虑,ntp服务器不会在未启动的连接上重新连接,这意味着您的防火墙应该能够告诉您已启动ntp请求并允许返回流量。为了使NTPD正常工作,无需为任意连接而打开端口。
在ntpdate(8)手册页中:
ntpdate可以根据需要手动运行以设置主机时钟,也可以从主机启动脚本运行以在启动时设置时钟。在某些情况下,这对于在启动NTP守护程序ntpd之前初始设置时钟很有用。也可以从cron脚本运行ntpdate。但是,必须注意的是,带有人为设计的cron脚本的ntpdate不能替代NTP守护程序,后者使用复杂的算法来最大程度地提高准确性和可靠性,同时最大程度地减少资源使用。最后,由于ntpdate不像ntpd那样约束主机时钟频率,因此使用ntpdate的准确性受到限制。
我通常建议您运行NTPD,并将您的服务器与组织中的指定时间服务器同步。该内部服务器通常将与公共NTP服务器之一同步(如您所链接)。
我使用ntpdate方法没有任何问题,但是它似乎比运行一个真正的ntpd守护程序更hackhack。
如其他地方所述,NTP提供了平滑的时间校正。如果服务器上的应用程序不介意丢失整整几秒钟,或者再次执行相同的几秒钟,那么ntpd不会比ntpdate获益更多。
另一方面,如果您确实具有对秒敏感的对时间敏感的应用程序,或者甚至对部分秒敏感的应用程序,则ntpd到目前为止是更好的选择。Novell eDirectory时间戳更新用于更新冲突处理,如果更新进行得非常快(例如在早上登录高峰期),则此更新至关重要。Syslog服务器需要时间精确到至少半秒,才能保持理智的日志。
对于我在家的MythTV电视机,我注意到它距离有线电视提供商考虑的时间还差几秒钟,因此我在其上使用NTP。对于工作中的UPS监视服务器,出于相同的原因,我使用crontabbed ntpdate,凯尔·霍奇森(Kyle Hodgson)指出,因为它是堡垒主机,即使我已将应用程序锁定,我也不想打开该端口。对于那个应用程序来说,确实不是一件容易的事。
至于冗余,我们在网络上至少维护两个时间主机,并将所有内部主机指向这两个时间主机。然后,这两个跟踪不同的Internet NTP主机。而且,它们以对等方配置进行配置,因此如果我们的Internet链接断开,它们可以以协商一致的方式保持彼此之间的时间。可靠的NTP绝对是可以设计的。
在访问和强化至关重要的服务器上,我使用了这样的推理:我所依赖的ntpd版本xntpd需要一个开放的UDP端口123。由于我只希望打开tcp 22和80,所以我使用了ntpdate而是在crontab中。我从来没有听说过为什么需要它的一个很好的理由,或者说我没有回想过。
使用crontab的ntpdate调用的缺点之一是它不能优雅地处理漂移校正。ntpdate,iirc会在得知时钟已过时时立即更新时钟-ntp守护程序通常会轻柔地纠正漂移。这样可以使您的日志保持理智-例如,您可以想象在繁忙的Web服务器上,如果RTC漂移了几分钟,那么第二天阅读Web日志可能会推断出人们能够安全地进行攻击登录之前输入的URL,因为网络匹配会乱序。
对于家庭使用,ntpdate确实不是什么大问题。有一个原因是它“速度较慢”。在PRODUCTION ENTERPRISE环境中将ntpdate与cron一起使用的任何人都是白痴。