Azure Lei Zhang的博客

weibo: LeiZhang的微博/QQ: 185165016/QQ群:319036205/邮箱:leizhang1984@outlook.com/TeL:139-161-22926

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  390 随笔 :: 0 文章 :: 394 评论 :: 0 引用

  《Windows Azure Platform 系列文章目录

 

  注意:本文介绍的是使用国内由世纪互联运维的Azure China服务。

 

  以前的Traffic Manager,背后的Service Endpoint必须是Azure数据中心的Cloud Service。

  现在最新的Traffic Manager,Endpoint不仅仅支持Azure数据中心的Cloud Service和Web Site。同时还支持部署在自建数据中心(第三方托管)的应用程序。

  这种增强功能对客户的收益在于,平时客户可以访问部署在Azure数据中心的应用。如果Azure数据中心发生问题,可以切换到用户部署在自建数据中心的应用程序。实现高可用。

 

  注意:如果需要添加自建数据中心(第三方托管)的应用程序,必须使用Azure PowerShell命令行工具。

 

  模拟场景:假设某公司有2个托管网站

  -  一个部署在Azure数据中心,DNS为LeiTestWinVM.chinacloudapp.cn

  -  另外一个托管在自建数据中心,DNS为www.sjtu.edu.cn (咳咳,只能使用母校的域名了)

  -  我们需要使用Azure PowerShell创建Traffic Manager,负载均衡器规则设置为Failover(故障转移)。同时使用Azure PowerShell增加以上2个服务的DNS节点。

 

  有关Azure PowerShell的内容笔者不想重复了,不熟悉的读者可以参考笔者之前的文档:

  Azure PowerShell (1) PowerShell入门

 

  1.我们执行以下命令:

$profile = New-AzureTrafficManagerProfile -Name "LeiTrafficManager" -DomainName "LeiTrafficManager.trafficmanager.cn" -LoadBalancingMethod "Failover" -Ttl 30 -MonitorProtocol "Http" -MonitorPort 80 -MonitorRelativePath "/"

$profile = Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $profile -DomainName "LeiTestWinVM.chinacloudapp.cn" -Status "Enabled" -Type "CloudService"

$profile = Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $profile -DomainName "www.sjtu.edu.cn" -Status "Enabled" -Type "Any"

Set-AzureTrafficManagerProfile –TrafficManagerProfile $profile

  上面的命令行中:

  -  第一行命令,创建了新的Traffic Manager,并且命名为LeiTrafficManager,定义了负载均衡器规则设置为Failover(故障转移),监控的协议为HTTP,同时设置了TTL和监控的端口80

  -  第二行命令,对Traffic Manager增加Azure云端的DNS 服务:LeiTestWinVM.chinacloudapp.cn (为一台Azure虚拟机)

  -  第三行命令,对Traffic Manager增加本地托管的DNS服务:www.sjtu.edu.cn

  -  第四行命令,创建该Traffic Manager

 

  2.执行结果如下:

   

 

  3.查看Azure Management Portal的配置页面

  

  上图中,配置页面中的内容,就是笔者在步骤一的配置。

  注意上图中红色部分,故障转移优先级列表:

  -  如果2个云服务都是联机状态。用户优先访问Azure云上的服务, DNS为:LeiTrafficManager.trafficmanager.cn

  -  如果Azure云上的服务发生异常宕机了。用户访问列表上的第2个地址,DNS为:www.sjtu.edu.cn

 

  4.当Azure Traffic Manager配置的DNS都是联机状态下:

  访问Traffic Manager,会优先访问到第一个DNS服务器地址。截图如下:

  

 

  5.如果我们模拟第一个DNS服务器发生宕机的情况。比如笔者将Azure VM关闭。观察到Azure VM所在的DNS状态为已降级。如下图:

  

 

  6.这时候我们再访问Traffic Manager,会优先访问到第二个DNS服务器地址。截图如下:

  

  这样,就实现了横跨本地应用+云端应用的高可用。

 

  7.最后请读者别忘记了,将自己的域名增加CName,指向Traffic Manager所在的DNS服务。

  

  

  

posted on 2015-05-25 13:33 Lei Zhang的博客 阅读(...) 评论(...) 编辑 收藏