虚拟机默认情况下所拥有的资源都是不同的, 比如说CPU clock. 在一个忙碌的系统中, 虚拟机甚至可能在很短的一段时间内被拒绝分配资源给它, 这种情况还可能发生在高系统负荷, VMotion, Backup的时候. 或者说虚拟机收到了超过它可以感知的CPU资源的量, 比如说操作系统认为它有1个2.4Ghz的CPU, 但事实上它运行在一个8 core的2.4Ghz的VMware的系统上.

这会导致称为"time drifting"的问题, 即虚拟机用来计算时间的'滴答'的时钟会运行的比标准的更快或更慢. 有人见过没配好time synchronization的虚拟机的时间差多达几个小时.

Windows Servers和Domain Controller上的w32time服务在物理机上是完全足够保持正确的时间的. 这个服务在domain controller上不光作为一个sync时间的client, 也作为domain中其他机器用于sync的time的源. 所以, 如果你不想使用该服务client端的功能, 那也不能简单的就把这个服务停掉.

 

解决方案

===========================

第一种

1. 配置所有的VMware host都跟自己的NTP去sync, 这很重要, 因为我们要用他们作为时间源来跟运行在他们上的虚拟机来同步时间. 别忘了在VMware host上配置自动启动NTP client.

2. 配置虚拟化的domain controller不要用time service去同步时间, 可以说哦用NoSync参数, 并且让它知道他自己有权威时间.

3. 安装VMware tools, 然后配置他跟ESXi host来同步时间.

这种解决方案在极端的负荷下也是比较稳定的. 最大的问题是需要严格的控制VMware主机, 并且确保任何的DC运行的host都是用同样的NTP源. 另一个最可能的问题是某人添加了一台新的ESXi, 并且忘了配置NTP服务器.

 

第二种

1. 找两台物理机作为本地的time servers. 它们依次跟一个信任的时间源来同步.

2. 让其他的有PDC FSMO role的domain controller或者其他的NTP servers来跟这两台物理机同步时间.

3. 让其他的domain controller跟这两台物理机同步或者跟PDC来同步. 如果你有物理机运行PDC FSMO的话, 那就更好了.

4. 确保你增加虚拟的domain controller与时间源sync的频率. 建议是每15分钟或每小时sync一次.

 

Useful Commands

===========================

w32tm /resync

资料来源

===========================

How to configure your virtual Domain Controllers and avoid simple mistakes with resulting big problems

http://www.sole.dk/how-to-configure-your-virtual-domain-controllers-and-avoid-simple-mistakes-with-resulting-big-problems/

 

参考资料

===========================

Timekeeping best practices for Windows, including NTP (1318)

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1318

How to configure an authoritative time server in Windows Server

http://support.microsoft.com/kb/816042/en-us

Synchronizing ESXi/ESX time with a Microsoft Domain Controller (1035833)

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1035833 

Virtualizing Your Domain Controllers without getting fired!

http://www.sole.dk/virtualizing-your-domain-controllers-without-getting-fired/

为什么Domain controller上的time synchronization非常重要?的更多相关文章

  1. Samba 4 Domain Controller on Ubuntu 14.04 LTS

    1. Configure network with a static ip address $sudo nano /etc/network/interfaces auto eth0 iface eth ...

  2. Windows Server 2012怎样部署Domain Controller

    用过Windows Server2008 系统的运维师们,可能习惯于用dcpromo的方式部署Domain Controller,可是在WindowsServer2012操作系统已经把这样的部署方式取 ...

  3. fastjson自由:controller上指定active profile,让你想序列化什么字段就序列化什么字段

    一.前言 最近有个需求,其实这个需求以前就有,比如定义了一个vo,包含了10个字段, 在接口A里,要返回全部字段: 但是在接口B里呢,需要复用这个 vo, 但是只需要返回其中8个字段. 可能呢,有些同 ...

  4. Windows Server 2012R2 部署 Domain Controller

    1. Create a machine as Domain Controller; 2. Change DNS server address as 127.0.0.1; 3. Change Compu ...

  5. 如何让我domain里的机器都跟domain controller的时间保持一致?

    貌似是应该先在PDC上设一个时间源服务器, 然后, 再让domain里所有的机器都去与PDC去sync时间即可. 可是笔者的环境里, 怎么都配不同, 我觉得可能是实验室的网络有什么特别的设置吧. 不管 ...

  6. Spring AOP 的切点切在Controller上没有起作用的问题。

    做下笔记,以防忘记. 在Spring MVC 中使用面向切面编程,感觉所有的配置.切面.切点的编写都没有写错,但是当切点切在@Controller注解的类的方法上时就不起作用.当切点切在的其他的非@C ...

  7. SpringMvc通过controller上传文件代码示例

    上传文件这个功能用的比较多,不难,但是每次写都很别扭.记录在此,以备以后copy用. package com.**.**.**.web.api; import io.swagger.annotatio ...

  8. 在OpenDaylight controller上开发App

    安装环境:Ubuntu18.04 一.安装依赖 1. 安装JDK: sudo apt update sudo apt install openjdk-8-jdk-headless 选择默认的 JDK: ...

  9. VMware ESXi 5.5无法与Windows 2012 NTP Server同步时间

    这次笔者需要面对的环境对时间的同步有比较高的要求, 而虚拟化的环境中时间是比较容易出问题的, 您可以参考上一篇博文为什么Domain controller上的time synchronization非 ...

随机推荐

  1. 【洛谷】P4585 [FJOI2015]火星商店问题

    题解 题目太丧,OJ太没有良心,我永远喜欢LOJ! (TLE报成RE,垃圾洛谷,我永远喜欢LOJ) 好的,平复一下我debug了一上午崩溃的心态= =,写一写这道题的题解 把所有限制去掉,给出一个值, ...

  2. 十三oracle --控制结构(分支,循环,控制)

    .使用各种if语句2.使用循环语句3.使用控制语句——goto和null(goto语句不推荐使用): 二.条件分支语句pl/sql中提供了三种条件分支语句if—then,if–then–else,if ...

  3. 《java虚拟机》----垃圾收集、内存分配

    No1: 程序计数器.虚拟机栈.本地方法栈3个区域随线程而生,随线程而灭:栈中的栈帧随着方法的进入和退出而有条不紊的执行着出栈和入栈操作.每一个栈帧中分配多少内存基本上市在类结构确定下来时就已知的,因 ...

  4. Python 函数系列 - Str对path的处理

    由此可见,“\”是转义字符,它能够将第2个“\”从转义字符转回普通字符,从而“\n”就不再起到换行符的作用. 这样操作虽然简单,但是遇到下方这个路径,看起来就会有些麻烦! path = 'D:\new ...

  5. openstack vm实例pxe无法启动

    问题如下: 创建vm没有任何报错,打开控制台提示: SeaBIOS (versio xxxxxxx) Machine UUID xxxxxxxxxx iPXE (http://ipxe.org) 00 ...

  6. 【BZOJ 2054】 2054: 疯狂的馒头 (并查集特技)

    Input 第一行四个正整数N,M,p,q Output 一共输出N行,第i行表示第i个馒头的最终颜色(如果最终颜色是白色就输出0). Sample Input 4 3 2 4 Sample Outp ...

  7. 【8.26校内测试】【重构树求直径】【BFS模拟】【线段树维护DP】

    题目性质比较显然,相同颜色联通块可以合并成一个点,重新建树后,发现相邻两个点的颜色一定是不一样的. 然后发现,对于一条链来说,每次把一个点反色,实际上使点数少了2个.如下图 而如果一条链上面有分支,也 ...

  8. 3524: [Poi2014]Couriers -- 主席树

    3524: [Poi2014]Couriers Time Limit: 20 Sec  Memory Limit: 256 MB Description 给一个长度为n的序列a.1≤a[i]≤n.m组 ...

  9. [转]使用popBackStack()清除Fragment

    Clear back stack using fragments up vote88down votefavorite 27 I ported my Android app to honeycomb ...

  10. python函数 divmod

    divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: a,b可以为数字(包括复数) from 2. Add ...