Linux(Debian 8 Jessie)HRTimer - 内核 - 闰秒

时间:2016-08-03 00:08:47

标签: linux linux-kernel cpu

答案:VM Time Syncing是一门艺术,我会算上我的祝福并使用已经适合我的东西。

这就是为什么:~qoute~ 我花了几年时间在主机和客户虚拟机之间同步时间,无论是否有NTP等等 - 它基本上都是黑色艺术,并且严重依赖于虚拟机管理程序,内核和一系列设置。我们不会在关于SO的评论中对其进行排序,但是如果你有一个已知的良好配置,我会回复并逐渐改变,直到你知道是什么打破了它。

- abligh

编辑:

Percona信息用于上下文,这是我正在做的事情。但问题是在Debian 8内核中实现的闰秒问题。关于hrtimer(高分辨率计时器)。 Mozilla的建议修复方法是使用"日期"重置时间。在linux中运行,但是尝试设置日期告诉我,尽管是root,但我没有权限。

信息:崩溃网络的额外秒的内幕故事

http://wired.com/2012/07/leap-second-glitch-explained

截图:

最近的尝试:http://prnt.sc/c208x2

顶部:http://prnt.sc/c202q9

Mysql ProcessList:http://prnt.sc/c20b4f

上下文:

我听说这与闰秒问题有关,事实上,它并不完全适合我的个人资料。

我在Proxmox上有几个debian linux实例。

2分离Percona Galera-Mysql Clusters。

第一个群集是正在使用的原始群集,但它没有这个问题或曾经有过。我的新集群设置在所有3个节点上都有。

我尝试应用闰秒修复的几个版本

date
date -s "`date`"
date -s "`date`"

除了第一个,我没有权限做到这一切,但我是根!

没有工作。

许多人重新启动。

除了一个奴隶之外的每个实例具有相同的统计数据,我提升了一个以测试它是否是有限的资源问题。

1 gig ram

1 3.6ghz cpu

我唯一能说的就是上传备份数据库后问题就开始了。

数据库是我在第一个集群中已经拥有的数据库大约是5mb,并且主要是关系表列表样式。这些都没有使用,没有做任何事情,很多人以后重新启动。我陷入了困境。

PS:进程列表为空。 (1个用于自我查找和2个睡眠空闲)

1 个答案:

答案 0 :(得分:5)

我猜这里的问题是你在VM(甚至是容器)上运行。虽然您是root用户,但您不必从容器/来宾操作系统获得更改时间的权限。这是因为时间与主机操作系统同步,显然无法改变它。

如果是这样,你能在主机操作系统中修复它吗?或者你没有访问权限?

也很有用

strace -f -s2048 -o/tmp/post-this-file date -s "`date`"

即。由date进行的系统调用跟踪。

您引用的HiRes计时器活锁在commit id=6b43ae8a619d17c4935c3320d2ef9e92bdeed05d上游已修复。

将它们合并到内核中的debian错误似乎是here并且修复了here(并入Debian的3.2.29-1和2.6.32-46内核) 。您实际运行的内核(uname -a的输出会有帮助)?这并不总是很明显,尤其是在容器环境中。

重新启动Percona可能会解决问题,如果您还没有尝试过。

发布更多有关环境的信息,我可以提供更多帮助。