首页 > 代码库 > 系统内核报错NTP服务端不稳定:localhost kernel: Clocksource tsc unstable (delta = 99856660 ns),K哥

系统内核报错NTP服务端不稳定:localhost kernel: Clocksource tsc unstable (delta = 99856660 ns),K哥

2016.9.14

Sep 13 14:34:42 localhost kernel: Clocksource tsc unstable (delta = 99856660 ns)

大致意思是系统内核报错:时钟源不稳定(时间差=多少毫秒)

OK,我的服务器使用了NTP软件来同步时间

那么我们来看看是不是有时间差

首先使用data命令

技术分享

OK,看着挺正常的,CST上海也是对的

我是K哥

然后使用ntpstat命令查看同步状态

synchronised to NTP server (210.72.145.44) at stratum 2    

本NTP服务器层次为2,已向210.72.145.44 NTP同步过

time correct to within 93 ms     #时间校正到相差93ms之内

polling server every 1024 s     #每1024秒会向上级NTP轮询更新一次时间 

OK,也没什么问题

我是K哥

然后使用ntpq –p命令

ntpq用来监视ntpd操作,ntpq -p查询网络中的NTP服务器,同时显示客户端和每个服务器的关系

 技术分享

可以明显看到阿里云服务器默认使用的是阿里云自己的NTP服务器

哈,如果不稳定也是找阿里云客服。

我是K哥

下面来介绍下各列参数的含义

remote: 它指的就是本地机器所连接的远程NTP服务器

refid: 它指的是给远程服务器(e.g. 193.60.199.75)提供时间同步的服务器

st: 远程服务器的层级别(stratum). 由于NTP是层型结构,有顶端的服务器,多层的Relay Server再到客户端. 所以服务器从高到低级别可以设定为1-16. 为了减缓负荷和网络堵塞,原则上应该避免直接连接到级别为1的服务器的.

t: 这个.....我也不知道啥意思

when: 我个人把它理解为一个计时器用来告诉我们还有多久本地机器就需要和远程服务器进行一次时间同步

poll: 本地机和远程服务器多少时间进行一次同步(单位为秒). 在一开始运行NTP的时候这个poll值会比较小,那样和服务器同步的频率也就增加了,可以尽快调整到正确的时间范围.之后poll值会逐渐增大,同步的频率也就会相应减小

reach: 这是一个八进制值,用来测试能否和服务器连接.每成功连接一次它的值就会增加

delay: 从本地机发送同步要求到服务器的round trip time

offset: 这是个最关键的值, 它告诉了我们本地机和服务器之间的时间差别. offset越接近于0,我们就和服务器的时间越接近

jitter: 这是一个用来做统计的值. 它统计了在特定个连续的连接数里offset的分布情况. 简单地说这个数值的绝对值越小我们和服务器的时间就越精确

补充:

技术分享

最后:通过这些命令观察NTP时间没有问题,那么可能是报错时间点服务器有不稳定

但那么多服务端,一个不稳定也不会影响的!K哥


再赠送几个关于硬件时间的命令

hwclock --show   查看硬件时间

如果我们想要把硬件时间设置成系统时间我们可以运行以下命令

hwclock --hctosys 

把系统时间设置成硬件时间

hwclock --systohc


本文出自 “kevinzhang91” 博客,请务必保留此出处http://kevinzhang91.blog.51cto.com/12012510/1852627

系统内核报错NTP服务端不稳定:localhost kernel: Clocksource tsc unstable (delta = 99856660 ns),K哥