zoukankan      html  css  js  c++  java
  • Windows Azure Traffic Manager (6) 使用Traffic Manager,实现本地应用+云端应用的高可用

      《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服务。

      

      

      

  • 相关阅读:
    你看那个人他像一条狗
    jvm系列(八):jvm知识点总览
    jvm系列(七):jvm调优-工具篇
    百亿互金平台救火故事
    一个脚本引发的血案
    一次dns缓存引发的惨案
    一次生产事故的优化经历
    从零到百亿互联网金融架构发展史
    2016颠倒梦想,2017静心前行
    Spring Boot(九):定时任务
  • 原文地址:https://www.cnblogs.com/threestone/p/4527279.html
Copyright © 2011-2022 走看看