基于DNS的负载均衡

标签: dns 负载均衡 | 发表时间:2015-07-13 21:30 | 作者:xiangjie88
出处:http://www.iteye.com
1.通过CNAME方式实现负载均衡
 CNAME记录是描述一个域名或主机名的别名,域名服务器获得CNAME记录后,就会用记录中的别名来替换查找的域名或主机名.后面会查询这个别名的A记录来获得相应的IP地址,如:
 先将GSLB的主机名定义为所查询域名的权威DNS服务器的别名,然后将GSLB主机名添加多条A记录,分别对应多个服务器的IP地址.
 这样本地服务器会向客户端返回多个IP地址作为域名的查询结果,并且这些IP地址的排列顺序是轮换的.客户端一般会选择首个IP地址进行访问.
 因为不需要更改公共DNS系统的配置,所以通过CNAME方式实现负载均衡是目前业界使用最多的方式.

2.负载均衡器作为权威DNS服务器
 这种方式是把负载均衡器作为一个域名空间的权威DNS服务器,这样负载均衡器就会接收所有对这个域的DNS请求,从而能够根据预先设置的一些策略来提供对域名的智能DNS解析.
 此时,负载均衡器已经接管了权威DNS服务器的所有解析工作,无论用户访问的网站是否是进行解析的域名,其DNS请求都会被发送到负载均衡器上,所以整个域的DNS解析能力或多或少都会受到影响,影响的程度取决于负载均衡器的实现的DNS功能的程序,因产品而异.

3.负载均衡器作为代理DNS服务器
 在这种方式下,负载均衡器被注册为一个域名空间的权威DNS服务器,而真正的权威域名服务器则部署在负载均衡器后面.所有的DNS请求都会先到达负载均衡器,由负载均衡器转发至真正的权威DNS服务器,然后修改权威DNS服务器返回的响应信息,从而实现负载均衡功能.
 为实现这一过程,首先要将对外公布的权威DNS服务器的地址注册成负载均衡器上的VIP地址.真正的权威DNS服务器正常响应浏览器的DNS请求,返回域名解析结果列表,这个响应会先发送到负载均衡器,而负载均衡器会根据自己的策略选择一个性能最好的服务器IP并修改DNS服务器的应答信息,然后将应答信息转发给客户.负载均衡器只修改需要实现GSLB的域名的DNS查询响应,对其他请求透明转发,这样就不会影响整个域名空间的解析性能.
 在代理方式下,如果权威DNS服务器负载均衡器相隔很远,那么负载均衡器向权威DNS服务器转发DNS请求时就会产生额外的延时.解决这个问题的办法是,在负载均衡器上对DNS响应进行缓存,在缓存失效时间之前,对于之前已经从权威DNS服务器上获得过DNS响应的同一域名,就可以直接进行GSLB计算,响应用户DNS请求,不用去访问远程的权威DNS服务器了
 需要注意的是,在基于DNS方式下无论采用何种工作方式,都会有一些请求不会到达GSLB,这是DNS系统本身的缓存机制在起作用.当用户请求的域名在本地DNS或本机就得到了解析结果,这些请求就不会到达GSLB.Cache更新时间越短,用户请求到达GSLB的几率越大.由于DNS的缓存机制屏蔽掉相当一部分用户请求,从而大大减轻了GSLB处理压力,使得系统抗流量冲击能力显著提升,这也是很多商业CDN选择DNS机制做全局负载均衡的原因之一.但弊端在于,如果在DNS缓存刷新间隔之内系统发生影响用户服务的变化,比如某个节点故障,某个链路拥塞等,用户依然会被调度到故障部位去.

已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [dns 负载均衡] 推荐:

负载均衡之DNS轮询

- - 标点符
大多数域名注册商都支持对统一主机添加多条A记录,这就是DNS轮询,DNS服务器将解析请求按照A记录的顺序,随机分配到不同的IP上,这样就完成了简单的负载均衡. 下图的例子是:有3台联通服务器、3台电信服务器,要实现“联通用户流量分摊到3台联通服务器、其他用户流量分摊到电信服务器”这个效果的设置. DNS由于成本较低,所以一般在小型的网站用的比较多.

基于DNS的负载均衡

- - 互联网 - ITeye博客
1.通过CNAME方式实现负载均衡.  CNAME记录是描述一个域名或主机名的别名,域名服务器获得CNAME记录后,就会用记录中的别名来替换查找的域名或主机名.后面会查询这个别名的A记录来获得相应的IP地址,如:.  先将GSLB的主机名定义为所查询域名的权威DNS服务器的别名,然后将GSLB主机名添加多条A记录,分别对应多个服务器的IP地址.

利用dns解析来实现网站的负载均衡

- - SegmentFault 最新的文章
当网站的访问量大了就会考虑负载均衡,这也是每一个架构师的基本功了,其基本地位就相当于相声里的说学逗唱,活好不好就看这个了 :). 传统的负载均衡思路是单点的,不管你是硬件的还是软件的基本都是这样的原理. 对于一般的需求来说,这样的架构基本就可以解决问题了. 就如同上图所示,传统思路也存在非常明显的局限性.

在 Linux 上用 DNS 实现简单的负载均衡

- - 文章 – 伯乐在线
DNS 轮询将多个服务器映射到同一个主机名,并没有为这里展示的魔法做更多的工作. 如果你的后端服务器是由多台服务器构成的,比如集群化或者镜像的 Web 或者文件服务器,通过负载均衡器提供了单一的入口点. 业务繁忙的大型电商在高端负载均衡器上花费了大量的资金,用它来执行各种各样的任务:代理、缓存、状况检查、SSL 处理、可配置的优先级、流量整形等很多任务.

nginx负载均衡配置

- - 开心平淡对待每一天。热爱生活
  使用负载均衡的话,可以修改配置http节点如下:. #设定http服务器,利用它的反向代理功能提供负载均衡支持. #设定mime类型,类型由mime.type文件定义. #省略上文有的一些配置节点. #设定负载均衡的服务器列表. #weigth参数表示权值,权值越高被分配到的几率越大. server 192.168.8.1x:3128 weight=5;#本机上的Squid开启3128端口.

解析nginx负载均衡

- - 搜索研发部官方博客
摘要:对于一个大型网站来说,负载均衡是永恒的话题. 随着硬件技术的迅猛发展,越来越多的负载均衡硬件设备涌现出来,如F5 BIG-IP、Citrix NetScaler、Radware等等,虽然可以解决问题,但其高昂的价格却往往令人望而却步,因此负载均衡软件仍然是大部分公司的不二之选. nginx作为webserver的后起之秀,其优秀的反向代理功能和灵活的负载均衡策略受到了业界广泛的关注.

Haproxy+KeepAlived 负载均衡

- - CSDN博客系统运维推荐文章
软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现. LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载. 还可以使用nginx来实现,不过nginx只工作在7层网络之上. 详细请参考 抚琴煮酒写的“ 软件级负载均衡器(LVS/HAProxy/Nginx)的特点简介和对比”这篇文章,简单很详细,很好.

lvs+keepalived 负载均衡

- - CSDN博客系统运维推荐文章
LVS是一个开源的软件,可以实现LINUX平台下的简单负载均衡. LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器. 目前有三种IP负 载均衡技术(VS/NAT、VS/TUN和VS/DR);八种调度算法(rr,wrr,lc,wlc,lblc,lblcr,dh,sh).

负载均衡技术

- - ITeye博客
 Internet的规模每一百天就会增长一倍,客户希望获得7天24小时的不间断可用性及较快的系统反应时间,而不愿屡次看到某个站点"Server Too Busy"及频繁的系统故障.   网络的各个核心部分随着业务量的提高、访问量和数据流量的快速增长,其处理能力和计算强度也相应增大,使得单一设备 根本无法承担.

haproxy负载均衡 xtracluster

- - x-marker的博客
上一篇为xtracluster的安装(http://xmarker.blog.163.com/blog/static/226484057201472610520306/),本篇将记录下使用haproxy在三个数据节点做负载均衡,haproxy可以安装在数据节点,也可以安装在别的节点,如果安装在数据节点,需要注意端口号不能和mysql的3306冲突.