WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

这篇文章给大家分享的是有关WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

本地和Azure之前的应用负载均衡如何实现,架构如下:

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

Primary-DNS我配置了公网DNS转发实现总部和成都站点都可以访问Internet

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

在路由器服务器上我添加了可以访问Internet的网卡,并配置了NAT

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

为了完成此次演示,首先在Azure上创建一台WinSrv08-Web03的服务器构建Web服务,此刻发现Azure在新建虚拟机的向导中又发生了变化,和我上半年写的创建虚拟机有些UI的调整,不过这些都不难,举一反三,按照向导配置下一步即可,首先新建资源组,和设置虚拟机的名称以及放置区域等信息

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

接着选择磁盘类型是HDD还是SSD

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

配置虚拟网络和子网,选择防火墙需要映射的端口

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

下一步

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

下一步

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

下一步

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

验证通过,点击创建

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

等待创建完成

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

部署完成

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

连接虚拟机配置Web服务

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

提供WEB服务器是如下的:

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

接下来我说下实现的需求目标:

接下来我想要实现:
不管来自什么网段的客户端,只要是通过Primary-DNS进行DNS解析的,每天的16:30-17:00之间访问web.basehome.com.cn由Azure上的Web03服务器承担100%的流量,成都的Web01不承担流量;每天的其他时间(非16:30-17:00)由成都的web01服务器承担100%流量,Azure上的web03不承担流量;

实现的步骤大致为:创建区域范围,在区域范围内添加记录,最后做DNS策略

创建区域范围:

在这里只需要添加一个Azure的区域范围:

Add-DnsServerZoneScope -ZoneName "basehome.com.cn" -Name "AzureZoneScope"

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

接下来在区域范围内添加A记录

Add-DnsServerResourceRecord -ZoneName "basehome.com.cn" -A -Name "web" -IPv4Address "52.163.55.124" -ZoneScope "AzureZoneScope" -TimeToLive 600

Add-DnsServerResourceRecord -ZoneName "basehome.com.cn" -A -Name "web" -IPv4Address "172.16.1.10"

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

执行蓝色那条命令不带区域范围参数的就是单纯的在DNS添加一条常规的A记录了

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

接下来就是配置DNS策略了

示例:

Add-DnsServerQueryResolutionPolicy -Name "Contoso6To9Policy" -Action ALLOW -ZoneScope "contosogiftservices.com,7;AzureZoneScope,3" -TimeOfDay "EQ,18:00-21:00" -ZoneName "contosogiftservices.com" -ProcessingOrder 1

如果在我的环境中要实现16:30-17:30之间,成都的web01服务器承担70%的流量,Azure的web03服务器承担30%的流量,那么我可以执行:

Add-DnsServerQueryResolutionPolicy -Name "Azure1630To1700Policy" -Action ALLOW -ZoneScope "basehome.com.cn,7;AzureZoneScope,3" -TimeOfDay "EQ,16:30-17:00" -ZoneName "basehome.com.cn" -ProcessingOrder 1

为了更极端,我还是按照上面设定的需求目标来,我的环境就执行:

Add-DnsServerQueryResolutionPolicy -Name "Azure1630To1700Policy" -Action ALLOW -ZoneScope "AzureZoneScope,1" -TimeOfDay "EQ,16:30-17:00" -ZoneName "basehome.com.cn" -ProcessingOrder 1

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

测试验证下:

在时间位于16:30-17:30之间:

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

在时间位于16:30-17:30之外:

WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流

感谢各位的阅读!关于“WinSrv2019如何使用DNS构建基于时间感知的Azure应用服务流量分流”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!