Windows Server 2016 DNS Policy Load Balancing 4

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows Server 2016 DNS Policy Load Balancing 4相关的知识,希望对你有一定的参考价值。

     在前面三篇文章中作者针对Windows Server 2016 DNS Policy的基于地理位置流量分流,基于时间负载的DNS智能定位,以及内外网卡分流的场景进行了简单的实验论证以及场景解释,相信看过思考过的朋友都有收获

     本系列最后一篇文章中,作者将主要介绍下2016 DNS policy针对于负载均衡和之前版本的不同,以及本地负载均衡设计及跨地域负载均衡如何配置,再介绍下2016DNS policy的一些其它用法,最后我们总结下本系列文章

     再2016之前,大家想到Windows Server上面的DNS轮询,可能都会以为这只是一种最简单的轮询高可用方式,创建多个不同主机相同域名的记录,当用户请求时就会再这几个主机之间随机轮询,这个轮询并不是可控的,它没有那么智能是一种随机的轮询,你不能控制具体每台DNS的轮询负载均衡情况,也无法很好的控制应用感知

   在2016 DNS policy里面,将DNS轮询这一功能做了改造,不再是随机轮询那么简单,我们可以通过定义不同的子网,不同的逻辑区域,创建DNS policy,设置例如百分之50的负载转发至总部,百分之25到大连分公司,百分之25到威海分公司,将负载进行均衡,这在以前是没办法控制的,甚至结合第二篇提到的基于时间的DNS智能定位,你可以控制每天什么时间段,由那几个站点的主机接受响应。

   

   在场景1中,我们假设Contoso公司是一家全国性质的IT咨询公司,分别设立在总部北京,分公司大连,分公司威海,希望设置当用户访问公司网站时,百分之50的请求由总部主机响应,百分之25的请求由大连主机响应,百分之25的请求由威海主机响应


实验环境介绍


16DNS:承担DNS服务器,同时也承担公司总部Web服务器,设置在公司总部DC  IP地址:100.0.0.2  GW:100.0.0.1

Web01:承担大连的Web服务器,同时也承担连接总部DNS,威海客户端,大连客户端的路由器

IP地址1:80.0.0.1 

IP地址2:90.0.0.1

IP地址3:100.0.0.1 DNS 100.0.0.2

Web02:承担威海的Web服务器,假设在威海DC,IP地址:90.0.0.2 GW:90.0.0.1

dalian:模仿大连客户端 IP地址:80.0.0.100 GW:80.0.0.1 DNS : 100.0.0.2

weihai:模仿威海客户端 IP地址:90.0.0.100 GW:90.0.0.1 DNS:100.0.0.2


由于我们假定公司全国都需要访问网站内容,所以并不创建客户端子网


直接运行以下命令创建总部,大连分公司,威海分公司主机逻辑范围


 Add-DnsServerZoneScope -ZoneName "eip.com" -Name "BeijingScope"

 Add-DnsServerZoneScope -ZoneName "eip.com" -Name "DalianScope"

 Add-DnsServerZoneScope -ZoneName "eip.com" -Name "WeihaiScope"


技术分享


创建在总部的主机记录

Add-DnsServerResourceRecord -ZoneName "eip.com" -A -Name "www" -IPv4Address "100.0.0.2" -ZoneScope "BeijingScope"


技术分享


创建在大连分公司的主机记录

Add-DnsServerResourceRecord -ZoneName "eip.com" -A -Name "www" -IPv4Address "80.0.0.1" -ZoneScope "DalianScope"


技术分享


创建在威海分公司的主机记录

Add-DnsServerResourceRecord -ZoneName "eip.com" -A -Name "www" -IPv4Address "90.0.0.2" -ZoneScope "WeihaiScope"


技术分享


创建DNS poicy,添加-FQDN参数,代表,凡是客户端请求这个FQDN,则按按照50 25 25的比例分别洒给全国站点的主机。

Add-DnsServerQueryResolutionPolicy -Name "GlobalDNSpolicy" -Action ALLOW -FQDN "eq,www.eip.com"-ZoneScope "BeijingScope,2;DalianScope,1;WeihaiScope,1" -ZoneName "eip.com"


技术分享


登录到weihai本地客户端访问可以看到负责响应的是总部服务器


技术分享


登录到dalian本地客户端访问可以看到负责响应的是大连分公司服务器


技术分享


登录大连分公司Web服务器访问,可以看到负责响应的是总部服务器


技术分享

通过演示大家可以看到效果,Contoso公司全国的网站,假设不需要进行地域流量隔离的操作,那么就可以通过这样创建一条策略,设置应用进行合理控制的负载均衡。


接下来场景2,在这个场景我们假设Contoso公司是一家全国连锁的书店,总部设立在北京,设置大连分公司和伊春分公司,需要实现北京客户端访问时百分之80的流量走北京,百分之20的流量走大连,大连分公司客户端访问百分之50流量访问大连服务器,百分之50流量访问北京服务器,威海分公司客户端访问百分之60流量访问大连服务器,百分之40流量访问威海服务器,实现跨地理位置的负载均衡policy


实验环境介绍


16DNS:承担DNS服务器,同时也承担公司总部Web服务器,设置在公司总部DC  IP地址:100.0.0.2  GW:100.0.0.1

Web01:承担大连的Web服务器,同时也承担连接总部DNS,威海客户端,大连客户端的路由器

IP地址1:80.0.0.1 

IP地址2:90.0.0.1

IP地址3:100.0.0.1 DNS 100.0.0.2

Web02:承担威海的Web服务器,假设在威海DC,IP地址:90.0.0.2 GW:90.0.0.1

dalian:模仿大连客户端 IP地址:80.0.0.100 GW:80.0.0.1 DNS : 100.0.0.2

yichun:模仿伊春客户端 IP地址:90.0.0.100 GW:90.0.0.1 DNS:100.0.0.2



1.分别创建总部,大连分公司,威海分公司子网范围


Add-DnsServerClientSubnet -Name "daliansubnet" -IPv4Subnet "80.0.0.0/24"

Add-DnsServerClientSubnet -Name "weihaisubnet" -IPv4Subnet "90.0.0.0/24"

Add-DnsServerClientSubnet -Name "Zongbusubnet" -IPv4Subnet "100.0.0.0/24"

技术分享


2.创建总部,大连分公司,威海分公司逻辑地理区域

Add-DnsServerZoneScope -ZoneName "eip.com" -Name "dalian"  

Add-DnsServerZoneScope -ZoneName "eip.com" -Name "weihai"

Add-DnsServerZoneScope -ZoneName "eip.com" -Name "beijing"    

技术分享

3.创建分别位于总部,大连分公司,威海分公司逻辑地理区域的主机记录

Add-DnsServerResourceRecord -ZoneName "eip.com" -A -Name "www" -IPv4Address "100.0.0.2" -ZoneScope "beijing"

Add-DnsServerResourceRecord -ZoneName "eip.com" -A -Name "www" -IPv4Address "80.0.0.1" -ZoneScope "dalian"

Add-DnsServerResourceRecord -ZoneName "eip.com" -A -Name "www" -IPv4Address "90.0.0.2" -ZoneScope "weihai"

技术分享

4.创建DNS policy策略


创建策略控制北京客户端访问时百分之80的流量走北京,百分之20的流量走大连


Add-DnsServerQueryResolutionPolicy -Name "BeijingLBPolicy" -Action ALLOW -ClientSubnet "eq,Zongbusubnet" -ZoneScope "beijing,4;dalian,1" -ZoneName "eip.com" –ProcessingOrder 1

技术分享


创建策略控制大连分公司客户端访问百分之50流量走大连,百分之50流量走北京服

Add-DnsServerQueryResolutionPolicy -Name "DalianLBPolicy" -Action ALLOW -ClientSubnet "eq,daliansubnet" -ZoneScope "beijing,1;dalian,1" -ZoneName "eip.com" –ProcessingOrder 2


技术分享



创建策略控制威海分公司客户端访问百分之60流量走大连,百分之40流量走威海

Add-DnsServerQueryResolutionPolicy -Name "WeihaiLBPolicy" -Action ALLOW -ClientSubnet "eq,weihaisubnet" -ZoneScope "dalian,3;weihai,2" -ZoneName "eip.com" –ProcessingOrder 3


技术分享

登录16dns访问可以看到负责响应的是总部服务器

技术分享


登录dalian访问可以看到一负责响应的是大连服务器,ipconfig flushdns之后响应的是总部,因为大连和总部的负载均衡关系是55


技术分享

技术分享


登录weihai访问可以看到负责响应的是大连服务器


技术分享

按照如上方法,我们就实现了跨地理区域的DNS应用负载均衡,这在以前的单台Windows DNS server上面是很难做到控制的,而且每次DNS policy创建完成后,下次请求丢过来自动生效,不需要重启DNS服务


文章到这里相信大家对于2016里面的DNS policy多多少少已经有了一定的了解,大概用法也都知道了,其中比较关键的命令,例如

Add-DnsServerQueryResolutionPolicy

大家可以查看Technet了解更为详细的命令用法https://technet.microsoft.com/library/mt126273.aspx


本文主要参考微软doc.microsoft.com上面的文章进行实际演练,将真实的实验成果和使用场景为大家讲述

https://docs.microsoft.com/zh-cn/windows-server/networking/dns/deploy/dns-policy-scenario-guide

弱水三千只取一瓢,老王只挑取了其中我认为较为实用,应该好好拿出来说下的部分为大家讲解了,还有好多其它的内容,感兴趣大家去微软官网进行学习,也欢迎大家和我探讨交流2016新技术


   文章最后我们来总结下,通过几篇文章大家可以看出,2016 DNS policy变的更加智能化了,这是好事,将一些企业化的内容新增了进来,地域流量切割,内外网卡分流,基于时间的智能DNS定位,DNS负载均衡控制,虽然这些东西并不微软创造的,netsclar bind等等产品上面早就有了,但是可以看到微软在进步,也是好事,2012时代,老王感觉Windows Server 变化最多的几个角色,要数DHCP,IIS,ADFS,Hyper-V ,DirectAccess ,文件服务器及存储,Cluster其次是AD,BranchCache等,不过根据老王的观察,有一个趋势,那就是全面智能化,软件定义化,融合化。

    智能化具体体现在DHCP,DNS,DirectAccess,IIS,以及身份验证等方面,拿身份验证来说,以前身份验证就是账户名称密码,token里面就User right,user sid  group sid这些,2012开始增加了cliam进入token,这就有很多东西可以玩了,不光是用户登录添加了cliam,连设备也可以添加cliam,当授权发生时,不光可以针对用户密码进行评估,还可以针对用户声明,设备声明,资源声明等进行评估,也整合在sharepoint,mdm,mfa等场景中。

    因此广大itpro也需要根据时代的变化,调整自己学习的方向,不要只了解表面的功能,学习以前的知识,也应该多看一些技术变化,多去思考新技术的场景和原理,在变革的智能化时代多做事


本文出自 “一个倔强的孤岛” 博客,转载请与作者联系!

以上是关于Windows Server 2016 DNS Policy Load Balancing 4的主要内容,如果未能解决你的问题,请参考以下文章

Windows Server 2016 智能DNS

Windows Server 2016创建本地数据DNS服务

Windows server 2016上主从DNS同步解析

Windows Server 2016 智能DNS

Windows server 2016搭建DNS服务

Windows Server 2016-DNS客户端新增功能