WEB开发网
开发学院服务器Dns服务器 Linux下基于DNS的多机均衡负载的实现 阅读

Linux下基于DNS的多机均衡负载的实现

 2008-04-09 16:31:31 来源:WEB开发网   
核心提示:1,lbnamed.conf要更改的地方有几个一、$hostmaster = "schemers.leland.stanford.edu";将schemers.leland.stanford.edu改为你服务器的域名,,Linux下基于DNS的多机均衡负载的实现(2),比如host.abc.com

1,lbnamed.conf 要更改的地方有几个 

一、$hostmaster = "schemers.leland.stanford.edu"; 将schemers.leland.stanford.edu改为你服务器的域名。。比如host.abc.com 这个无太大关系

二、将所有stanford改为你域名的中段(比如bendy.com,就改为bendy),将所有edu改为域名的后缀(比如bendy.com,就改为com)。。这个很重要。。我建议不要更改best。当然你也可以改

2,sweet.config 这个文件可以是用其它文件名的,具体在lbnamed.conf有设置。我建议大家先清空这文件。再重新建立新的。

这个文件的配置方法是

负荷服务器host 负重 组

比如。我自己的情况。有二台服务器。分别是bbs1.bendy.com和bendy2.bendy.com那我的配置文件就是

bbs1 1 bbs

bbs2 2 bbs

配置好这个文件后。你需要一个能对bbs1这个域名进行解析的方法。就是修改/etc/hosts文件。我的情况就是

192.168.1.1 bbs1

192.168.1.2 bbs2

这样的话。poller程序就会检测111.222.333.001、111.222.333.002的负荷情况了

至此,DNS服务器和均衡负载的服务器的程序已完成。可能我的说明不太清楚。现在我就一一列表说明

bbs1服务器 lbserver1 192.168.1.1 编译运行lbcd

bbs2服务器 lbserver2 192.168.1.2 编译运行lbcd

dns服务器 dnsserver 10.0.0.1 配置lbnamed 在/etc/hosts配置bbs1、bbs2域名解析

这样的情况下。。在dns服务器运行lbnamed程序。系统就开始动作了。。lbnamed的启动参数主要是 -l logfile和-d(debug)

./lbnamed -l lb.log -d

查看记录(类似)

cat lb.log

-=====

05/30 00:59 21442 lbnamed starting poller

05/30 00:59 21442 lbnamed load_config

loading 1452 bbs2 192.168.1.2 bbs

loading 837 bbs1 192.168.1.1 bbs

05/30 00:59 21442 lbnamed ready to answer requests

05/30 00:59 21442 lbnamed do_maint

05/30 00:59 21442 lbnamed reloading config

05/30 00:59 21442 lbnamed load_config

loading 1671 bbs2 192.168.1.2 bbs

loading 1086 bbs1 192.168.1.1 bbs

如果你没有那些记录。看文件sweet.config.unreach这是代表poller程序无法接收到对方服务器的负荷信息。。请检查lbcd程序是否运行。。

如果程序运行正常。那你的DNS服务器就正常运行了。

如果检查程序是否正常。。。用我们的nslookup就可以了。。。

C:\Documents and Settings\Administrator.XINGKONG-SERVER>nslookup

Default Server: ns.guangzhou.gd.cn

Address: 202.96.128.143

> server 10.0.0.1 //直接使用dns服务器

Default Server: [10.0.0.1]

Address: 10.0.0.1

> set type=all //设置查询类型

> bbs.best.bendy.com //bbs是sweet.config设置的组名,best.bendy.com是在lbnamed.conf设置的

Server: [10.0.0.1]

Address: 10.0.0.1

bbs.best.bendy.com canonical name = bbs2.bendy.com //返回的信息。是DNS系统分配了bbs2给你这次的查询(按二台服务器返回的负荷情况来分配的,并非随便分配的)

bbs2.bendy.com internet address = 192.168.1.2 //而bbs.bendy.com在该在DNS系统的A记录是192.168.1.2//最后结果bbs.best.bendy.com得到的IP地址是192.168.1.2

====

自此。。服务器方面的配置已经完成。

Tags:Linux 基于 DNS

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接