如何让域控制器们负载均衡,合理分配资源,充分利用。具体内容如下所述。
问题:
我发现我的主域控制器的负载很重,而我的额外域控制器却比较闲,我该如何将他们负载均衡?
回答:
首先要说,域控制器配合整合AD的DNS架构,本身就具备负载均衡的机制,一方面,dns可以RoundRobin,也就是dns轮询。当域中存在多台dc的时候,客户端发起查询请求,第一次就是第一台dc,第二次就是第二台,依次轮回。
关于RoundRobin的设置,请参考http://www.microsoft.com/technet/prodtechnol/windowsserver2003/zh-cht/library/ServerHelp/e0f49958-f290-49fc-adb4-71ed8deefd62.mspx?mfr=true另一方面,客户端在尝试获取资源的时候,它会查询一个可以响应自己请求的dc列表,如果处于列表上方的dc太忙或者没有响应,那么就会找下一台dc,依次轮回,直至当前sessiontimeout。
关于这个问题的一个例子,就是客户端在登录的时候尝试联系dc进行身份验证,关于这个问题请参考http://gnaw0725.blogbus.com/logs/4888504.html
再者,由于AD本身具有自己的DC同步以及仲裁机制,具体的实现依赖于FRS(文件复制服务)和DFS(分布式文件系统)。关于FRS和DFS请参考http://www.microsoft.com/china/TechNet/security/Safeguidebook/book05.asp。如果将MSCS(微软集群服务)应用于AD的域控制器之间,那么MSCS的同步及仲裁机制将会给DC之间的复制带来干扰,这点在用户数目较多的域中尤为明显。除非在特殊的场合,作为架构MSCS的必要条件(MSCS必须建构在域中),而您又没有多余的计算机可供单独安装DC,那么此时可以考虑将MSCS同时安装在DC上,但此时需要完成一些特殊的设置,将AD设置为domainlet(小域),关于这个设置请参考http://www.microsoft.com/windows2000/techinfo/administration/cluster/domainlets.asp
再次,DC由于自身已经承载了AD的服务,除非当前域中的用户数量比较小,例如小于500用户,否则不建议您在DC上部署其他的高频率读写的服务。一个典型的例子就是在DC上部署文件服务器,这可能导致DC的性能下降,关于这个问题请参考http://support.microsoft.com/default.aspx?scid=kb;zh-cn;321098;另一个典型的例子就是在DC上部署Exchange服务,这也是不推荐的。
最后,一般来讲拥有PDCe和GC的DC负荷比较重,如果您通过性能计数器监视DC一段时间,发现DC的性能确实有所下降,那么您可以考虑将这两个角色转移到其他DC上。通常我们通过监控CPU、内存及硬盘读写,来了解性能状况。
关于如何使用性能计数器进行性能检测,请参考http://support.microsoft.com/default.aspx?scid=kb;zh-cn;300237
关于域控制器DC以及全局编录GC的性能评估标准,请参考http://www.microsoft.com/china/technet/archives/windows2000/win2ksrv/technote/dcsiz.asp但要注意的是,角色的放置有一定的规则,关于这个问题,您可以参考http://support.microsoft.com/default.aspx?scid=kb%3bcn%3b223346。
希望本文介绍的让域控制器们负载均衡的方法能够对读者有所帮助。
【编辑推荐】