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


至此,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 SettingsAdministrator.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
====
自此 。。服务器方面的配置已经完成 。
跟着是我们配置具体域名的dns解析 。。。
方法也是很简单,以bendy.com为例,在bendy.com的DNS治理加上以下记录
一、加上二个best.bendy.com的ns记录为ns1.bendy.com和ns2.bendy.com(也可以不止二个的.取决你有多少台服务器运行lbnamed
二、加上第一条添加的ns记录的实际指向iP,分别指向各个运行lbnamed的服务器,比如ns1.bendy.com address 10.0.0.1/ns2.bendy.com address 10.0.0.2等 。
三、添加bbs1.bendy.com和bbs2.bendy.com等的实际ip地址 。。。正如刚才所说...bbs.best.bendy.com只将DNS记录转移为bbs1.bendy.com或者bbs2.bendy.com 。而lbnamed是没权对bbs1.bendy.com和bbs2.bendy.com进行解析的 。。。所以 。需要bendy.com的NAMESERER对它进行解析 。
(ps:bbs1.bendy.com的记录并不一定要求与lbnamed程序的相同 。。。)
四、最后 。。添加bbs.bendy.com cname to bbs.best.bendy.com 。。。哈哈 。。。大功告成 。。。
DNS解析完成后,我们就完成本次任务了 。。。。

推荐阅读