基于DNS的多机均衡负载的实现-
前二天为一个客户添加了一台服务器 。共同承担一个论坛的运作 。但是 。要实现负载均衡 。的确是件难事 。
之前有试过几个方法 ,
一、DNS轮值 。。优点:简单实现 。缺点:无法检测各个服务器的负荷 。难控制访客的访问地址(一般DNS服务器都有缓存 , 所以 。效果不明显)
二、前台程序 。。使用了一个类似Zeus Load Balancer的服务程序 。在前台接受访问请求 。再分流到各个实际的服务器 。
但以上二个方法都不太适用我的情况 。。
第一种 。无法正确分配访客流量 。。。常发生一台服务器的负荷很大 。而另一台就很低 。。。
第二种 。会占用更多的流量 。资源也占用较大 。
最好 。我还是采用了一个DNS均衡负载的方法---lbname 。
它的主要效果介绍:
一、基于perl的dns服务端 。应用简单 。
二、自动检测各个服务器的负荷 。然后再按结果优先分配DNS解析 。
三、DNS解析实时生效 。不会被DNS服务器缓存 。
四、安装方法简单 。。。
lbname网页介绍
http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html
http://www.stanford.edu/~riepel/lbnamed/
。
。
下载:
http://www.stanford.edu/~riepel/lbnamed/lbnamed-1.2.1.tar.gz
http://www.stanford.edu/~schemers/dist/lb.tar
.
.
下载包说明:
内存数个目录
1)lbcd的源代码 。。。。lbcd是lbnamed所用到的服务器端检测服务器负荷程序 。。每个需要均衡负荷的服务器都需要安装、运行它的 。。。
建议下载使用最新的lbcd编译包 。http://www.stanford.edu/~riepel/lbnamed/lbcd-3.1.0.tar.gz之前的常有编译错误的 。(这个也有的 。嘻 。)
编译这个包时 。常会出错的 。如何成功安装 。就看你的本事了 。(编辑util.c第123行 。在前面加上//)
编译lbcd成功后 。将它复制到/usr/sbin 。那你就可以运行它了 。。不用加什么参数了 。(运行后要停止它就是lbcd -s)
2)lbnamed的服务器程序perl..分有二个版本 。一个是perl4.另一个是perl5.我是使用perl5的 。所以用它来说明 。
进入perl5目录 。。。。。先要配置好lbnamed和poller程序 。
说明一下:
lbnamed程序是主程序 。提供dns动态解析 。严格来说 。它已是一个dns服务器端程序了 。
poller是为lbnamed提供各个均衡服务器的负荷情况 。(配合我们之前安装的lbcd程序使用)
但二个程序可能都需要更改 , 请看程序第一行的perl程序地址 。。改为你的perl地址 。
然后就需要更改程序的配置文件了 。
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服务器和均衡负载的服务器的程序已完成 。可能我的说明不太清楚 。现在我就一一列表说明
推荐阅读
- DNF有用的杂物怎么获得
- 家畜感冒的辨证施治
- 荣耀play中拍摄全景照片的简单步骤
- 猪霉玉米中毒的症状与防治
- 鱼食儿试机 灰帅哥CX65 功夫篇
- 七 读核日记 --linux的内存管理机制(1)
- 什么叫做端差
- 拒绝猪病的黄金法则
- 醋的成分
- ios12中恢复微信提示音的操作步骤