linux实现dns轮询实现负载平衡。
dns 轮询机制会受到多方面的影响,如:a记录的ttl时间长短的影响;别的 dns 服务器 cache 的影响;windows 客户端也有一个。
dns cache。这些都会影响 dns 轮询的效果。因此 dns 的轮询机制并不能做为一个 load balancing
的解决方案,只能作为一个 load distribution 方案。
不过有一个参数你可以试试看是否能调整一下轮询的效果:
在 中可以设置 bind 的 round-robin 的给出结果的顺序:
options ;
rrset-order 支持三个参数:fixed, random, cyclic 。
fix 会将多个a记录按配置文件的顺序固定给出。
random 会随机给出。
cyclic 会循环给出。
dns轮询就是指dns服务器将域名解析请求按照a记录的顺序,逐一分配到不同的ip上,同时在一定程度上也实现了简单的负载均衡。
我们先看一下 windows2003下如何设置dns轮询。比如:有两台web主机,a主机ip是 192.
168.1.1,b主机ip是192.
168.1.4 , 企业里有单独一台dns服务器,然后在该dns服务器的正向区域里(域名为分别建立两个主机a记录,第一个主机记录的记录ip是 192.
168.1.1, 第二个主机记录的记录ip是192.
168.1.4,附图:
然后在dns主机qingyg上点击右键选择属性,在出现的对话框中勾选"启用循环",如图:
注意:网络掩码排序可以根据子网掩码来判断dns地址和客户端是否在同一个网段或者离的比较近,然后优先返回较近的服务器的地址。
设置完毕后,我们看一下效果:
注意:windows会缓存dns结果,为方便观察轮询情况,我们需要用"ipconfig /flushdns"来清空dns缓存。
下面我们看一下linux下如何设置dns轮询,以rhel 5为例:
1、首先需要安装bind并搭建dns服务器(具体dns搭建过程请参考相关资料)
#yum install -y bind* caching-nameserver*
安装dns服务器一般需要安装以下三个数据包:
查询用。安全机制。
配置文件。2、修改区域数据配置文件(这里主要看一下dns轮询配置。
mailina192.168.1.9
ina192.168.1.10
ina192.168.1.11
在以上配置中,对应了3个ip地址,此时具体选择哪一条a记录,是由rrset-order语句决定的。另外,在反向解析文件中,这3个ip也都要对应mail主机,以免有些邮件服务器为了反垃圾邮件进行反向查询时出现问题。
这是在 /etc/ 文件中 options 语句有关rrset-order配置的一个例子:
rrset-order {
class in type a name ""order random;
order cyclic;
这个设置会使处于in类中的a记录的响应以随机顺序返回,in 类以""为后缀。其他的记录以循环记录被返回。
rrset-order 支持三个参数:fixed, random, cyclic 。
fixed 将多个a记录按配置文件的顺序固定给出。
random 随机给出。
cyclic 循环给出。
注:rrset-order语句并不被bind9支持,bind9目前只支持"random-cyclic"排序,服务器随机选择rrset集中的开始点,有顺序返回在那个点开始的记录。
3、测试看结果:
root@linux252:/]#host
has address 192.168.1.9
has address 192.168.1.10
has address 192.168.1.11
总结一下:dns轮询的配置是比较方便的,如果网络扩增,新增的web服务器只要增加一个公网ip即可。 但相对来说,dns轮询也有其自身的一些缺点,这个工作当中也是我们需要注意的。
其一:如果某台服务器宕机,dns服务器是无法知晓的,仍旧会将访问分配到此服务器。修改dns记录全部生效一般要1-3小时,甚至更久;
其二:如果几台web服务器之间的硬件配置不同,导致能够承受的压力也是不同的,但是dns轮询解析目前不能很好的按权重进行分配。
其三:如果是需要身份验证的**,dns解析无法将验证用户的访问持久分配到同一服务器。虽然有一定的本地dns缓存,但是很难保证在用户访问期间,本地dns不过期,而重新查询服务器并指向了新的服务器,那么原服务器保存的用户信息是无法被带到新服务器的,而且可能被要求重新认证身份,而且来回切换时间长了各台服务器都保存有用户不同的信息,对服务器资源也是一种浪费。
论网络信息检索技术
摘要 20世纪以来,人类创生的信息量高速增长,浩如烟波。如何从这海量的信息里找出所需信息就成为信息检索的重任。随着网络技术的飞速发展,越来越多的人把因特网作为获取日常信息的重要手段。掌握信息检索的方法与技巧是非常有必要的,人们对快速 准确 有效地获取网络信息资源的需求是急切的,人们对网络信息的检索技...
高级网络技术
文章第二部分,研究所需的相关工作,在这一节中,主要介绍了聚类和 相关的知识。具体包括聚类,聚类分析,模糊聚类的概念,结合文章,在本文中,通过聚类方法的使用,表明交通数据表现出强烈的空间和时间的相关性,并能够利用这种相关性进行交通状况的 除了聚类的概念及应用,此部分又介绍了交通量 的现状,对当前的研究...
企业网络高级技术
创建vtp域 不同的设备不一定是在全局模式下,比如3640是在vlan d模式下 sw config vtp domamin 名字。配置交换机的vtp模式。sw config vtp mode server client transparent 配置vtp口令。sw config vtp passw...