经过前面十二次的讲座,其实咱们一直在探讨活动目录的逻辑结构较多,今天咱们来谈一谈有关AD的复制问题。其实对于每个DC,都会有一个数据库文件,它就是AD数据库,详见活动目录系列之一:基本概念
AD数据库分四个目录分区,以下图所示:

其中在森林级别复制的是前两个分区,即架构分区和配置分区。而在域级别复制的是域分区。应用程序分区是一个可选复制,能够本身配置,在这里不讨论。
(一)站点内部的复制
若是单域环境,同时存在多台DC,此时每台DC都会同步森林及域级别的三个分区。若是多域环境,同时存在多台DC,此时便会存在多路复制拓朴。以下图所示:

上图有三种复制拓朴,第一路是森林级别的复制,在全部的DC之间复制;第二路是域A的域分区的复制拓朴,在全部域A的DC之间复制;第三路是域B的域分区的复制拓朴,在全部域B的DC之间复制。若是在上图的DC之中还存在GC,则上面的复制拓朴还会改变,由于GC是一个特殊的角色,它将拥有全部域的域分区对象及对象属性的子集。
其实你们也都看到了,咱们的复制拓朴是一个双向环(保证容错),而这个环是由每台DC上的KCC进程自动生成的。数据库
附:KCC:是一个进程,或翻译成“知识一致性校验”,它用来检查当前的AD环境,用于生成环形的复制拓朴。
若是在上图中再加入新的DC,KCC会再次计算,生成新的环。固然咱们本身也能够自定义,各位能够参考下面第二个图可完成。以下图所示:

如:经过KCC,在A1和A2之间建立一个链接对象,A2就叫作A1的直接复制伙伴。以下图所示:
注意:这个链接对象是本身产生的。若自定义,能够在此完成。
AD的复制有三种复制方式:
a.更改通知的方式:若是A1上建立了一个账号test,则它会15秒后通知A2,而后3秒后通知A三、再3秒后通知A4。若是A2收到通知后就会从A1把数据要过来写到本身的数据库中。这是拉复制。
b.紧急复制:如密码修改、账户锁定策略等。修改后就立刻联系复制伙伴。没有时间延迟。
c.每隔1小时复制:检查是否有数据复制遗漏。
其实在上述环中复制容许的路数不能超过3,即A1把数据复制给A2,A2再复制给A3,A3再复制给A4,就再不能间接复制给A5了,也就是说中间只能跳3跳。这个目的实际上是不让复制的时间过长。你们能够仔细观察上面复制拓朴就知足这个条件。
(二)站点间的复制
若是你的企业位于两地或多地,试想根据上面的复制状况,不言而喻,DC之间的复制流量很大,这个流量要跨越WAN,咱们不但愿这样。怎么办呢,咱们要控制复制。所以咱们只能建站点,固然建站点的好处咱们也能够控制用户的登陆流量。详见<活动目录系列之四:单域环境的实现(多站点)--基本配置>。这样咱们即可以按计划进行AD的复制,同时这里复制仍是压缩的,基本上是原来流量的15%左右吧。
下面咱们来比较一下站点内和站点间复制的特色:

(三)同域内复制冲突问题
有三种冲突:属性冲突、删除的容器冲突和RDN冲突
属性冲突:是指同一个对象的相同属性在两台DC上改的不一样。
删除的容器冲突:在某个容器内添加对象或将对象转移到此容器内,但这个容器已经在另外一个DC上被删除了。(在第一台DC上删除的容器尚未复制到这个DC以前):此时该对像会被移动一个叫lostandfound的夹中,这个夹你须要打开“高级”来查看到,你能够再把这个对象移到其它容器。
RDN冲突:是指你在两台DC上建两个同名用户。此时时间上后建的那个用户名会被更名。其实两个都存在。
属性值冲突的解决办法:会以戳值最高为优先。
AD会根据对象的属性戳(stamp)来解决冲突的问题,它包括三个数据:
版本号码:初始为1,为最早比较者。
修改时间:若版本号相同,此修改时间较后的优先。
DC的GUID:若上修改时间相同,会比较GUID。高的优先。
Repadmin /showmeta DN 能够查看用户或OU的版本号
最后问各位一个问题,AD在复制的时候,究竟复制那些东西呢?其实有两个:数据库自己的复制和SYSVOL之间的复制,而SYSVOL若是复制不成功,会形成组策略不生效。有关组策略问题,各位能够参考本站的《组策略系列》
AD的复制是一个很重要的话题,在你的企业里,若是控制很差,会形成域用户登陆有问题或很慢。但愿今天的内容能为各位的企业环境的管理带来一些帮助!