Windows Azure Traffic Manager (5) Traffic Manager Overview
《Windows Azure Platform 系列文章目录》
笔者默默地看了一下之前写的Traffic Manager内容,已经差不多是3年前的文章了。现在Azure Traffic Manager有了新的功能,正好周末的时候也在研究相关的内容,这次做笔记总结一下。
首先第一点,笔者不太认同Azure官方网站写的Traffic Manager是负载平衡:

Traffic Manager最多算是智能DNS解析(Smart DNS)。用户的请求,按照一定的规则(性能、循环法、故障转移)路由到合适的节点服务器上。
Traffic Manager与Azure Load Balancer的区别:
Azure Load Balancer只支持1个DNS服务,且该服务只能在同一个数据中心的多个计算节点,不支持跨数据中心的负载均衡。Load Balancer没有异地容灾的能力。
Traffic Manager背后可以有多个DNS服务,每个DNS可以分布在不同的区域(北京数据中心、上海数据中心、第三方数据中心)。Azure Traffic Manager支持异地容灾。
在多数情况下,Azure Traffic Manger是与Azure Load Balancer组合使用。实现异地容灾+负载均衡。
Traffic Manager可以帮助客户:
- 提供关键应用程序的可用性。当我们使用一个DNS Hosting公有云服务的时候,Azure负载均衡器所在的所有计算节点,都在同一个数据中心。如果这个数据中心发生宕机,则这个Azure公有云服务就宕机了。我们可以使用Azure Traffic Manager,实现跨数据中心的高可用。
- 提供高性能应用程序的响应能力。假设我们部署的云端应用程序是面向全国的用户的,需要很好的用户响应能力。如果我只把应用部署到Azure上海数据中心,那北方的用户访问速度可能会受到影响。使用Azure Traffic Manager,我们可以将用户的请求路由到最近的Azure数据中心,比如北方的用户请求路由到北京数据中心,南方的用户请求路由到上海数据中心。
- 在不停机的情况下执行升级和服务维护 。Traffic Manager后台的Endpoint需要升级的时候,可以在Traffic Manager 管理里暂时禁用该Endpoint。等到该Endpoint升级完毕后,重新在Traffic Manager里重新启用。这样可以保证客户端在不宕机的情况下,维护和升级Azure云端服务。
- 大型复杂部署的流量分配。Azure Traffic Manager进行进行嵌套,即可以将一个Traffic Manager作为Endpoint,增加到另外一个Traffic Manager里。提供更加负载的部署。(最多可以嵌套10层)
Traffic Manager工作方式:
在配置 Traffic Manager 配置文件时,指定的设置将为 Traffic Manager 提供所需的信息来根据 DNS 查询确定应该由哪个终结点为请求提供服务。实际的终结点流量不会通过 Traffic Manager 路由。
下图说明了具体的工作方式:

- 用户流量指向公司域名:使用公司域名的客户端请求信息。目标是将 DNS 名称解析为 IP 地址。必须通过在 Traffic Manager 外部维护的正常 Internet 域名注册保留公司域。在图 1 中,示例公司域为www.contoso.com。
- 公司域名指向 Traffic Manager 域名:公司域的 DNS 资源记录指向在 Azure Traffic Manager 中维护的 Traffic Manager 域名。这是使用一条 CNAME 资源记录来实现的,该记录可将公司域名映射到 Traffic Manager 域名。在本示例中,Traffic Manager 域名为 contoso.trafficmanager.net。
- Traffic Manager 域名和配置文件:Traffic Manager 域名是 Traffic Manager 配置文件的一部分。用户的 DNS 服务器针对 Traffic Manager 域名(在本示例中为 contoso.trafficmanager.net)发送新的 DNS 查询,该查询由 Traffic Manager DNS 名称服务器接收。
- 处理的 Traffic Manager 配置文件规则:Traffic Manager 使用指定的负载平衡方法和监视状态来确定应该由哪个 Azure 终结点为请求提供服务。
- 发送给用户的终结点域名:Traffic Manager 返回一条 CNAME 记录,该记录将 Traffic Manager 域名映射到终结点的域名。用户的 DNS 服务器将终结点域名解析为其 IP 地址,并将该地址发送给用户。
- 用户调用终结点:用户直接使用返回的终结点的 IP 地址调用该终结点。
由于公司域和解析的 IP 地址已在客户端计算机上缓存,因此,用户将持续与所选终结点交互,直到该终结点的本地 DNS 缓存过期。特别要注意的是,DNS 客户端缓存 DNS 主机条目的持续时间就是这些条目的生存时间 (TTL)。从 DNS 客户端缓存中检索主机条目会绕过 Traffic Manager 配置文件,如果在 TTL 过期之前终结点变为不可用,则你可能会遇到连接延迟的情况。如果缓存中 DNS 主机条目的 TTL 过期,并且客户端计算机需要再次解析公司域名,则该计算机将发送新的 DNS 查询。根据应用的负载平衡方法和请求时终结点的运行状况,客户端计算机可能会收到不同终结点的 IP 地址。
如何实现Traffic Manager

将 Azure 云服务、Azure 网站或其他终结点部署到生产环境。在创建 Traffic Manager 配置文件时,必须将其与某个订阅关联。然后,在生产环境中为云服务和“标准”层网站添加属于同一订阅的终结点。如果某一终结点位于过渡环境中而不在 Azure 生产环境中或同一订阅中,则不能将其添加为外部终结点。
确定 Traffic Manager 域的名称。考虑为域使用带有唯一前缀的名称。域的后半部分(即 trafficmanager.net)是固定的。
确定要使用的监视配置。无论使用哪种负载平衡方法,Traffic Manager 都会监视终结点以确保它们联机。在你配置监视设置之后,Traffic Manager 不会将流量定向到监视系统判定为脱机的终结点,除非它检测到所有终结点均已脱机,或无法检测配置文件中包含的任一终结点的状态。
确定要使用的负载平衡方法。有三种不同的负载平衡方法。花时间了解哪种方法最满足你的要求。你之后可以随时更改方法。另请注意,每种方法都需要稍微不同的配置步骤。
创建配置文件并配置设置。可以使用 REST API、Windows PowerShell 或管理门户来创建 Traffic Manager 配置文件并配置设置测试 Traffic Manager 配置文件。测试你的配置文件和域是否按预期工作。
- 将公司域名的 DNS 资源记录指向配置文件以使其生效。使用图 1 中的示例,更改服务器上的 DNS 资源记录使其包含以下行,以便将公司域名指向 Traffic Manager 域名:
www.contoso.com IN CNAME contoso.trafficmanager.net
参考资料:https://msdn.microsoft.com/zh-cn/library/azure/hh744833.aspx
Windows Azure Traffic Manager (5) Traffic Manager Overview的更多相关文章
- [Windows Azure] Windows Azure Virtual Network Overview
Windows Azure Virtual Network Overview 18 out of 33 rated this helpful - Rate this topic Updated: Ap ...
- Windows Azure Traffic Manager (6) 使用Traffic Manager,实现本地应用+云端应用的高可用
<Windows Azure Platform 系列文章目录> 注意:本文介绍的是使用国内由世纪互联运维的Azure China服务. 以前的Traffic Manager,背后的Serv ...
- Windows Azure功能更新: SDK 2.1发布,Traffic Manager集成
最近,Windows Azure又进行了更新 Windows Azure SDK 2.0发布没多久,2.1版(for .NET)就在今天发布了.2.1版本在管理功能上进行了重大改进,包括Visual ...
- 宣布正式发布 Windows Azure 上的 Oracle 软件以及 Windows Azure Traffic Manager 更新
Windows Azure 的核心原则之一就是为客户提供一个开放.灵活的平台.今天是一个令人振奋的里程碑,因为我们与 Oracle 的合作又向前迈进了一步.Oracle Database.Ora ...
- 宣布正式发布 Biz Talk Services、Azure Active Directory 和 Traffic Manager, 同时发布 Azure Active Directory 高级版预览
除经济优势之外,云计算还在可转化为竞争优势的应用程序开发方面提供了更大的灵活性.我们很高兴看到每天创建的新 Windows Azure 订阅超过 1000 个,更令人兴奋的是,有一半客户使用价值更高的 ...
- 使用 IIS Manager 对 Windows Azure 网站进行远程管理
最近,我们为客户新增了使用 Windows自带的 IIS管理控制台管理 Azure网站的功能.IIS Manager支持 HTTP over SSL,提供到您的 Windows Azure 网站 ...
- ADT后windows菜单未找到Android SDK Manager和Android Virtual Device Manager该解决方案的选择
打开今天凌晨ADT准备编译androidproject的时候,突然发现windows菜单下的Android SDK Manager和Android Virtual Device Manager选项不见 ...
- 无责任Windows Azure SDK .NET开发入门篇一[Windows Azure开发前准备工作]
一.Windows Azure开发前准备工作 首先我们需要了解什么是 Azure SDK for .NET?微软官方告诉我们:Azure SDK for .NET 是一套应用程序,其中包括 Visua ...
- 年末促销 Windows Azure在线充值送微软商城硬件大礼包
春节前充值,尽享云端体验, 缤纷好礼持续进行时.即日起至2015年2月13日, 充值1000元以上即享好礼.您可以查阅WindowsAzure 官网活动页面,即刻参与活动:http://www.win ...
随机推荐
- 微小企业中Sqlserver2000服务器的日常备份与恢复
1:把数据库和备份分别放在二个硬盘上 2:不要相信用户会使用客户端坚持备份数据,比较靠谱的方法是为数据库建立维护计划 3:数据库采用每天完全备份,并且时间一定要选择在用户肯定开机的时候,因为很多用户晚 ...
- java jinfo命令详解
jinfo (configuration info): 功能:输出Java进程的系统信息与jvm参数. 摘要: jinfo [ option ] pid jinfo [ option ] execut ...
- iOS图片加载框架-SDWebImage解读
在iOS的图片加载框架中,SDWebImage可谓是占据大半壁江山.它支持从网络中下载且缓存图片,并设置图片到对应的UIImageView控件或者UIButton控件.在项目中使用SDWebImage ...
- SQLSERVER中如何忽略索引提示
SQLSERVER中如何忽略索引提示 当我们想让某条查询语句利用某个索引的时候,我们一般会在查询语句里加索引提示,就像这样 当在生产环境里面,由于这个索引提示的原因,优化器一般不会再去考虑其他的索引, ...
- Orleans 客户端请求的消息流转以及消息在Silo中再路由机制
1.客户端是一个OutSideRuntimeClient,在这个客户端类中有一个消息代理中心transport(类型为ProxiedMessageCenter) 2.ProxiedMessageCen ...
- 泛型实现中没有正确lock引用类型的一个隐藏bug分析
最近看到这篇文章dotNetDR_的回复,让我想起一个真实发生的案例,下面就简单说说这个关于lock引用类型的一个不容易发现的隐藏缺陷. 某类库中的代码,封装了很简单的一个通用类,用于线程安全地执行某 ...
- asp.net mvc跨域filter
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- Atitit java方法引用(Method References) 与c#委托与脚本语言js的函数指针
Atitit java方法引用(Method References) 与c#委托与脚本语言js的函数指针 1.1. java方法引用(Method References) 与c#委托与脚本语言js ...
- OutputCache概念学习
目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...
- 阿里云 云解析使用方法/在阿里云ESC服务器解析域名并绑定服务器IP后上传文件通过域名访问步骤教程
第一步:登录阿里云官网,获取服务器ECS的指定公网IP地址. 1.输入阿里云官网账号进入首页,如下图: 2.点击进入"管理控制台",如下图: 3.点击"云服务器ECS&q ...