Xen domain0 和 domainU 的时间同步
2010年06月14日 | 标签: vps, xen | 作者:vpsee
在 Xen 的默认设置下,domainU 的时间总是要自动和 domain0 保持同步,所以想简单的在 domainU 内部用各种时间、日期等命令改变 domainU 的系统时间并不起作用。如何给 domainU 设置单独的时钟而不受 domain0 的影响呢?我们经常接到我们的 Xen VPS 客户的询问是否能把他们的 VPS 时钟改成北京时间,为什么他们改变了时钟和时区却不起作用等问题。如果每个 VPS 用户(domainU)来自不同国家或时区而想在自己的 VPS 里使用自己的区域时间该怎么办?很简单,只需要在自己的 VPS(domainU)里改变一个参数就可以了,Linux/Xen 很灵活,传递参数方式有很多种,可以用下面任意的一种方式来改变这个设置。
直接改变 xen 内核的运行时参数:
# echo 1 > /proc/sys/xen/independent_wallclock
不过上面的方法会在重启 domainU 的时候丢失,可以把上面的命令加到某个自动启动文件中。
或者也可以把改变 xen 内核设置的参数加到 sysctl.conf 文件中,VPSee 更偏向采用这种方法:
# vi /etc/sysctl.conf xen.independent_wallclock=1 # sysctl -p
另外一种方法在 VPS 外面进行,需要 VPS 服务商的干预,在 domainU 的启动配置文件种加上以下参数:
# vi /etc/xen/vps01 ... extra='independent_wallclock=1' ...
博主您好,请问全虚拟化时domU的时间只能与dom0同步么?全虚拟化时domU没有/proc/sys/xen/independent_wallclock这个。
@秣马儿
如果是全虚拟化(HVM),可以在 domU 里用 ntp 同步。
全虚拟化时,我在domU里用ntp同步,结果ntpq -p命令显示总是跟local同步时间。
[root@vm02 ~]# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
dns2.synet.edu. 133.243.238.163 2 u 31 64 17 148.000 9436876 2523.43
hshh.org 66.220.9.122 2 u 26 64 17 19.376 9438489 2467.58
dns1.synet.edu. 123.199.115.203 2 u 30 64 3 157.485 9435405 1466.38
*LOCAL(0) .LOCL. 10 l 27 64 17 0.000 0.000 0.001
而其他半虚拟化的虚拟机的ntp都正常工作。
博主大神,请问您遇到过这种情况么?
@秣马儿
从你上面提供的信息来看,貌似你是和 local 同步的(*LOCAL(0) .LOCL),* 代表当前和哪个服务器同步。所以你需要在 /etc/ntp.conf 里把 local 去掉(这一行 server 127.127.1.0 # local clock),然后重启 ntp 服务。
谢谢您的回复。
同样的ntp.conf配置,在全虚拟化的虚拟机里ntp就总是跟local同步时间,而半虚拟化的虚拟机里ntp工作的很好。
抓狂中。
我去试一下把这一行 server 127.127.1.0 # local clock去掉。