所以,最近我意识到,由于我的networking中有3个GPS时钟,所以我可以在技术上给予一点时间给世界其他地方。 到目前为止,我还没有看到这个想法的任何缺点,但我有以下问题;
我可以虚拟化吗? 我不会花钱和时间为这个硬件设立硬件,所以虚拟化是必须的。 由于服务器将有权访问三个第一层来源,我不明白这可能是一个问题,只要ntpdconfiguration是正确的
公共NTP服务器(pool.ntp.org的一部分)通常会看到什么样的stream量? 我需要多大的虚拟机呢? ntpd不应该太过于资源密集,尽pipe我可以收集,但我宁愿事先知道。
这有什么安全方面的? 我想在DMZ中的两个虚拟机上安装ntpd,只允许通过固件的ntp,并且只能从DMZ中ntp到内部的ntp服务器。 根据NTP池页面似乎也有一些build议的ntp设置,但它们是否足够? https://www.ntppool.org/join/configuration.html
他们build议不configuration本地时钟驱动程序,这相当于从configuration文件中删除本地时间源configuration?
还有什么要考虑的?
首先,对你有好处; 这是一个有益的和公益的事情。 这就是说,并且给出你的解释,你打算创build一个或多个DMZ虚拟机,它将同步到三个Meinberg启用GPS的stratum-1(内部)服务器并公开提供这些时间:
编辑 :虚拟化不时在池列表上讨论; 最近一次是在2015年7月,可以从这封电子邮件开始。 询问项目负责人BjørnHansen,并发表了言论,并没有反对虚拟化。 显然现在一些池服务器运营商正在虚拟化,所以我不认为有人会向你开枪,正如一张海报明确指出的,如果你的服务器不可靠,池监控系统将简单地将它们从池。 KVM似乎是首选的虚拟化技术; 我没有find专门使用VMWare的人,所以无法评论虚拟化是多么的“诚实”。 也许关于这个问题的最好的总结说
我的池服务器在我自己的KVM主机上通过KVM虚拟化。 监测表明,服务器相当准确,并为过去2 – 3年提供稳定的时间。 但我不会在另一个提供商的租用虚拟服务器上设置池服务器。
这是我在过去一年中在我的池服务器(位于英国,欧洲和全球区域)看到的每秒钟不同客户端的每日平均数量:
这几乎没有检测到系统负载( ntpd
似乎在CPU的1%和2%之间使用,大部分时间)。 需要注意的是,在这一年的某个时候,负载一度达到了每秒近千客户端(最高849.27)。 我监视过度负载,警报并没有全部消失,所以我只能注意到,即使这样的负载水平不会造成问题,虽然简单。
项目推荐的configuration是最佳实践,并为我工作。 我还使用iptables
在一个滚动的十秒窗口中将客户端速率限制为两个入站数据包( 令人惊讶的是有多less无礼客户在那里,他们认为他们应该可以自由爆发以便快速设置自己的时钟) 。
或从127.127
开始删除引用服务器地址的所有行。
最佳实践指南还build议使用三个以上的时钟,因此除了三层一级服务器之外,您还可能需要select其他一些公用服务器或特定的池服务器。
我也注意到,如果你打算把这两个虚拟机放在同一个主机硬件上,你应该运行这个虚拟机,但是把这个虚拟机的带宽增加一倍(也就是接受两倍的查询) )。
首先,祝贺NTP是非面子问题的问题。 :-)我已经在这篇文章的底部列出了一些图表,给你一些感觉。 有问题的虚拟机在池控制面板中设置为100 Mbps,位于英国,欧洲和全球池中。
我认为MadHatter覆盖了这个 – 虚拟化应该没问题。 就像你说的,如果他们是从你的GPS连接层1喂食,他们应该是相当稳固。 根据我的经验,虚拟机在频率方面往往比裸机更加跳跃(请参见下图),但是这正是您期望的 – 它们正在处理时钟仿真层(希望效率很高)并且可能会产生噪音邻居。 如果您不希望看到这种情况,可以使用旧服务器或未使用的桌面作为您的DMZ阶层2s。
这个虚拟机是1个核心,2 GB RAM,运行Ubuntu 16.04 LTS,在OpenStack(KVMpipe理程序)中虚拟化。 正如你所看到的,内存稍微高一点。
推荐的设置(包括没有configuration本地驱动程序)是Ubuntu 16.04的默认设置。 我运行非常接近股票configuration,除了对等列表。
(往上看)
我可能会开始在低端的带宽,并在你监测了一点后增加带宽。 如果你的虚拟机在networking延迟方面互相靠近并且在你的层1附近,我可能会让所有的虚拟机和所有的层1进行对话,并且可能将它们彼此对等并打开孤儿模式。
这里是图表 – 它们都覆盖了大约3周的时间,除了networking之外,由于备份有几个高峰。 当networking峰值出现时,我甚至无法看到正常的NTPstream量,所以我放大了一点以显示通常的背景。
中央处理器 记忆 networking 频率 系统偏移
有些事情要考虑与NTP
这里已经有很好的答案了。 为了完整起见,我只是根据自己的经验join一些想法。
我build议启用NTP日志logging和graphics时钟歪斜和纠正裸机与虚拟机,因为它涉及到讨论,如果这是一个问题。 我不认为这可以很容易地推广,因为硬件和configuration各不相同。 在那个上面写下自己的数字可能是最好的。
我一直build议人们挑选服务器或networking设备的系统angular色,这些服务器或networking设备的CPU时间相当恒定,并且不是无内核内核,或者启用了省电模式。 尤其是要避免守护进程在cpuspeed或速度守护程序或NTP服务器上进行高级节能,即使它们在您的服务器场中仅为第2层。 一定的稳定性可以通过永远不会比C状态1更深,但是你的功耗会增加。
我也尝试确保人们select一些离networking边缘不到40毫秒的第一层服务器,然后将它们分配到边缘的NTP服务器上,并确保networking中同一个SNAT后面没有2台服务器在说话到同一层1服务器。 沿着与burst
相同的路线,使用相同的上游服务器在同一个SNAT后面放置多个服务器是不明智的,因为在他们看来,即使没有启用突发事件,也是如此。
您应该始终遵守来自上游服务器的kod
数据包,并使用监视工具检查上游服务器的时间偏移和可达性。
您可能需要考虑在less数几个数据中心中拥有自己准确的时间源,以便在军方启用GPS SA的情况下实现同步或后退。 有专门针对此的具有成本效益的设备。 即使您处于“笼子”环境,没有自己的数据中心,一些托pipe设施也可以适应这种情况。
请参阅http://www.vmware.com/pdf/vmware_timekeeping.pdf上的vmware计时文档
在虚拟机中运行NTP守护进程可能不是一个好主意,特别是如果您需要可靠的时间。
下面是VMware的一个很好的知识库,它提供了针对不同Linux发行版的实际configuration参数