首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装NTP是否意味着我正在安装NTP服务器?

安装NTP是否意味着我正在安装NTP服务器?
EN

Server Fault用户
提问于 2023-04-09 20:23:37
回答 1查看 1.7K关注 0票数 6

读这个:在虚拟机中运行NTP服务器的限制是什么?(2010)

这个:https://github.com/geerlingguy/ansible-role-ntp

我不知道我到底在安装什么。尤其是当我安装在VM中的时候。

我在读到‘m可以使他们的时钟与宿主系统同步..。但我以前从未听说过这种情况,也不知道在哪里可以找到这方面的配置。我个人的经验只是在VirtualBox。

如果我在虚拟机服务器上安装NTP,比方说Ubuntu服务器,据我所知,我只是在安装一个工具,它可以与外部NTP服务器同步,以避免它的时间偏离太远。

这是正在发生的还是正在发生更多的事情?我是不是安装了NTP服务器然后..。没人能同步到?因为所有VM都只安装了它,然后就不会将VM配置为查看特定的服务器。

如果我只想:

  1. 设置时区
  2. 把事情安排好,使时间漂移最小化。
  3. 在虚拟机或物理机器上

我需要知道什么,我需要做什么?

因为在过去,我只是在虚拟机上安装了NTP,运行在VirtualBox/Proxmox/VMware中,多年来运行良好。我记得有很多次检查各种VM的时间,而且从来没有遇到过这样的情况:当我查看本地时钟时,我在VM上看到的东西是没有意义的。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2023-04-10 02:32:01

简短的回答:通常,如果您正在安装一个NTP守护进程,您将安装同步本地时钟和通过网络为客户端提供时间的功能。但是,这里有一些微妙之处,您已经询问了更多的问题,我也将尝试回答。

(下面的信息假设VM来宾基于Linux;相同的建议可能不适用于Windows来宾。)

  1. 首先,你所联系到的问题和所有的答案今天都是完全错误的。这是13年前提出的,最近的答案是10年前提出的。根据我的回答这里,在此期间,现代VM解决方案大大提高了它们的能力,VM通常是完全可以接受的NTP客户端和服务器,平均硬件达到1毫秒的精度。(我的建议是否决这个问题,所有的答案都说VM中的时间同步不起作用,但不幸的是,这并不能阻止它出现在搜索结果中。在这里讲完之后,我可能会为这个问题写一个新的答案。)如果您想了解更多关于VM中中断时间同步的神话,请查看我的博客帖子
  2. VMs确实可以通过特定于虚拟机管理程序的机制将它们的时钟与其主机系统同步,这最初是因为VM中的时间同步很差。但是,它不再是必要的,而且通常会取得比使用NTP更差的结果。在VMware和Hyper上,这个函数应该关闭;我认为它不是在KVM和Xen上提供的(至少在默认情况下);我不确定VirtualBox。
  3. 如果您在VM服务器上安装了NTP,假设是提供KVM管理程序的Ubuntu服务器,则需要将该服务器的时钟与外部源同步(前提是它们是可访问的)。您应该包括至少4个远程源,如果您安装了chronyntp,这是默认的,通过安装其中的一个包,您将通过对这些外部源的持续更正来保持主机的系统时间。
  4. 您的VM将使用其主机的系统时间作为其系统时间的种子,但是由于它们运行自己的独立内核,它们也有自己的独立(虚拟化)系统时钟,这也必须受到约束。
  5. 时区完全独立于您的时间同步服务。内核和NTP使用UTC;时区是用户空间问题。
  6. 默认情况下,Ubuntu不使用chronyntp,而是使用systemd-timesyncd,后者仅是SNTP客户端,不能成为NTP服务器。默认情况下,chrony忽略所有网络请求,因此只能充当NTP客户端,但可以配置为具有短指令的服务器(参见下面)。ntp的默认配置略有不同,将允许远程客户端通过网络同步时间,但不能查询任何服务器详细信息。

因此,总而言之,一个独立的VM服务器和运行在它上的VM的合理设置可能是所有它们都单独使用NTP池,而VM使用主机作为额外的时间来源。如果主机很好地跟踪池源,那么大多数客户端可能大部分时间都与服务器同步(因为访问它的网络延迟较低),但是将池服务器作为主机NTP服务的质量检查。

假设Ubuntu和chrony,服务器的配置可以从默认值开始:

代码语言:javascript
复制
# Default chrony.conf on Ubuntu, sans comments and blank lines
confdir /etc/chrony/conf.d
pool ntp.ubuntu.com        iburst maxsources 4
pool 0.ubuntu.pool.ntp.org iburst maxsources 1
pool 1.ubuntu.pool.ntp.org iburst maxsources 1
pool 2.ubuntu.pool.ntp.org iburst maxsources 2
sourcedir /run/chrony-dhcp
sourcedir /etc/chrony/sources.d
keyfile /etc/chrony/chrony.keys
driftfile /var/lib/chrony/chrony.drift
ntsdumpdir /var/lib/chrony
logdir /var/log/chrony
maxupdateskew 100.0
rtcsync
makestep 1 3
leapsectz right/UTC

然后,假设本地子网使用192.0.2.0/242001:db8:0:2::/64作为其IPv4和IPv6地址,则添加这些行以允许来自本地子网的来宾:

代码语言:javascript
复制
allow 192.0.2.0/24
allow 2001:db8:0:2::/64

类似地,VM将以相同的默认配置启动,并添加这一行以将服务器作为源包括在内,前提是服务器可由DNS解析为vmhost.local

代码语言:javascript
复制
server vmhost.local iburst

或者,如果您在本地DHCP服务器中提供了NTP服务器,则在默认配置的情况下,使用chrony的VM应该会自动获取NTP服务器。

票数 16
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1128302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档