基本主流的企业级虚拟化产品,安装完虚机以后,都要在虚机中安装各种Tools,用来增强虚机的性能,以及与主机的交互。而时间同步功能,在目前主流的三家产品中,默认都是启用的。安装完Tools以后,虚机会自动和Host之间同步时间,保持时间与底层主机的一致,但是这种机制在某些情况下会导致上层虚机的时间混乱,比如时区设置,时间准确定,多时区等等。
所在在某些情况下,可能需要禁用该功能。
VMware ESX:
ESX上的虚机可以通过在虚机中,编辑VMware Tools的属性来控制,在Options中去掉Time synchronization between the virtual machine and the ESX Server operating system的选中状态
虽然去掉了以上选项,但是在某些特殊情况下,ESX仍然会同步虚机的时间:
- Resume from suspend
- Migrate with VMotion to another host
- Take or revert to a snapshot
- Shrink the virtual disk
- Restart the VMware Tools service
- Power on
为了在这些情况下也禁用时间同步功能,我们可以修改下该VM的配置文件(*.vmx)
1 2 3 4 5 6 | tools.syncTime = "0" time.synchronize.continue = "0" time.synchronize.restore = "0" time.synchronize.resume.disk = "0" time.synchronize.shrink = "0" time.synchronize.tools.startup = "0" |
Hyper-V:
通过Hyper-v管理控制台,选中VM,点击设置,然后选中Action,在左侧的管理项目下找到Integration Services (交互服务),去掉时间同步(Time synchronization)的选中状态。
同样,该选项也只是静止运行期间的时间同步,在虚机启动的时候,仍然会同步时间。
XenServer:
目前官方没有提供windows主机禁用时间同步的说明
针对Linux guest,我们可以参考以下操作设置来禁用时间同步功能
1、一种方法,使用root账号登录的虚机,输入以下命令
echo 1 > /proc/sys/xen/independent_wallclock
为了让设置用就生效,防止重启后恢复,我们需要编辑/etc/sysctl.conf 文件,并加入以下内容
# Set independent wall clock time
xen.independent_wallclock=1
2、作为第一种方法的替代解决方案,我们可以把设置写入到虚机的启动参数中即可,增加如下启动参数:
independent_wallclock=1
楼主 你好 我想问一下,xenserver之间 时间同步有什么意义吗?作用是什么?对如果不同步对xenserver影响有多大?
在Pool中多台XS之间需要时间同步,和XS内部通讯有关。
如果时间不同步,那么XenCenter上一些数据可能不显示等等问题。
XS和VM的时间同步是用来维持VM的时间一致性,在VM关机以后,该功能相当于物理机的BIOS时钟。
那就是说 如果时间不同步的话 对xenserver 或者pool内的xenserver 没有多大影响 还是说不同步的话会有很大影响?
Pool中的XS之间需要时间同步,不同步比较麻烦,强烈推荐同步。
VM和XS之间的同步无所谓了,默认即可。
好的 谢谢,是不是xs之间不同步的话 pool中master与成员通信同步会有问题呢?
目前知道的就是可能导致XenCenter界面的数据显示可能看不到。
其他通信没有详细确认,所以,一般推荐还是设置下同步,最基本的,也要手动设置时间,保持服务器之间时间不要相差太大。
好的 ,谢谢。那我做一下NTP同步吧。
楼主这里的资料好全啊,vsphere的也有。正好请教一下时间的问题,我的物理主机的bios时间是正确的,安装的esxi 5.1 ,启动后esxi的时间老是比正确时间慢8个小时。试过ntp时间同步,没效。lz有碰到 过这个么。
确保esxi的时间没有问题,然后VM的时间设置正确的时区,时间以后,就不会再出问题了。
BIOS时间只是硬件时间,主要确定ESXI服务器本身的时间和VM的时间以及时区设置。