1、NTP原理:http://en.wikipedia.org/wiki/Network_Time_Protocol2、遇到的问题:公网NTP服务器可靠性的典型例子是:pool.ntp。org的服务器可能已关闭。ntpd程序在第一次启动时只会解析NTP服务器的域名。如果对应的服务器出现问题,没有下线,会导致服务器同步到错误的时间。3.解决方案:1.搭建自己的NTPServer,然后对整个集群使用相同的NTP设置。优点:1、只要服务器上的ntpd正常运行,整个集群的时间基本一致。2、可以做ntpd认证,防止黑客伪造ntp数据包,修改系统文件的时间戳。缺点:无法解决上游NTP运行错误的情况,最坏的情况是整个集群时间错误。如果自建NTP使用硬件时钟作为服务器,则不存在该问题。2、选择相对靠谱的公网服务器,加强监控。四、当前策略1、使用自建的NTP服务器,保证整个集群的时间一致。为了解决ntpd上游可能出现的错误,内部的ntpdserver进程每个月都会重启一次,保证不会连接到过时的ntpserver。2、client端的ntp一般设置为开机自动启动。puppet会每半小时检测一次ntp进程。不管是服务器还是客户端,都会配置多个服务器地址,优先使用硬件时钟地址。硬件时钟->公网NTP:使用公网NTP服务同步公网NTP->NTP服务器:使用公网NTP服务同步NTP服务器->NTP客户端:使用内部服务器同步硬件时钟-->NTP服务器:公司GPSNTPClock(XXXXXXXX/ntp.super.com)以上是服务器NTP情况。托管服务器只分为服务器和客户端。服务器端直接使用公司的GPS时钟,客户端使用各自IDC的内网服务器。每个IDC基础设施如DNS、NTP、NAT等服务都会部署一套,通常是两台隧道服务器。
