免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1574 | 回复: 0
打印 上一主题 下一主题

红旗LVS的负载均衡配置以及遇到的问题分析 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-18 18:17 |只看该作者 |倒序浏览

                                                                  上周以及这周去东城区政府做了lvs负载均衡集群的配置和实施,最后出了一些小问题。现在做一个总结,大家看看,希望有点帮助。
  实施主要是参照登峰的lvs的配置文档。现在简单描述一下流程。
  东城区政府做的是两台web服务器作负载均衡,系统是红旗DC5.0SP2,第三方软件tongweb提供服务。外部提供服务的是vip:172.25.0.17,在两台实际服务器是切换:www1:172.25.0.21 www2:172.25.0.22. www1为
主节点。
  首先,确保heartbeat和rfcadmin已经安装上了。
  开启rfcadmin, #service rfcadmin start  ,然后用浏览器登录172.25.0.21:8000 admin/admin
可以打开配置界面:
  1,heartbeat监视-设置选项:使用网络设备为心跳的ip:eth0(也可能为eth1);
                            节点工作方式:主主或者主备(测试无明显区别)
                            集群节点机列表:www1 www2*
  #一定要为两服务器主机名,不对无法添加,如果无法添加请用hostname查看主机名是否正确。
  2,heartbeat监视-集群资源:增加集群资源-主节点:www1
                                     -ip地址:172.25.0.17
                                     -服务:IPaddr stop-transproxy ldirectord
  3,heartbeat监视-认证密钥:SHA1和MD5都要填写一致。
  4,红旗cluster:增加cluster服务-IP地址:172.25.0.17 服务端口:80*
                               协议:tcp  调度算法:lblc
  #在此端口为80,因为tongweb提供的是http服务。
  #原来的文档里面里面的算法是加权最少连接(wlc),后来在测试的过程中,由于用户用帐号登录使用session来认证,但是我们的vip在双机不断的切换导致用户会话期中断,用户登录后会出现断掉连接导致失败,所以影响使用,最后在登峰研究了算法之后,决定用lblc算法来保持会话,问题得到基本解决。
有关session的资料:http://www.chinalinuxpub.com/read.php?wid=197
  5,红旗cluster:172.25.0.17:http-增加实际服务器:172.25.0.21 端口:80  转发方式:直接路由
                                 增加实际服务器:172.25.0.22 端口:80  转发方式:直接路由
  
以上是lvs的图形界面配置基本完成,下面还要手工配置一些:
  1,首先修改/etc/hosts 里面添加两台主机和ip地址的对应关系;
          172.25.0.21 www1
          172.25.0.22 www2
  2,需要修改/etc/ha.d/conf/transparent_proxy:
  添加 TRANSPARENT_ADDRESSES="172.25.0.17"
  #其中ip地址为vip,也就是lvs对外提供服务的ip.为什么172.25.0.21和172.25.0.22可以处理包头是
172.25.0.17的包,就是由这个文件加transparent_proxy服务来实现的。
  由于以上的配置是我们在www1一台机器上完成的,并没有同步到www2,所以我们需要手工来同步一下配置:
    scp -r /etc/ha.d/ 172.25.0.22:/etc/
注意:只在www1上来更改配置,每次更改完之后要手工同步到www2.
  最后要设置一些必须的服务自启动:
  [http服务要在两台机器上设置为开机自启动]
  此项服务在东城区的实施中要将http服务关闭,因为tongweb提供的服务同样使用80端口,如果开启http之后,占用了80端口,tongweb启动之后不能正常访问。此项服务的开启根据需要选择。
  transparent_proxy服务要在两台机器设置为开机自启动
  heartbeat服务要在两台机器设置为开机自启动
  rfcadmin只在www1设置为开机启动。集群运行不依赖此项服务。
然后重新启动集群就可正常运行。
测试:通过一台机器访问172.25.0.17,然后#watch -n -1 ipvsadm -l 就可以查看实时的连接变化。
  最后需要说的就是我在这个过程中遇到的问题,当时的问题是两台服务器单独提供服务都正常,能够正常访问,如果启动集群联机之后,就无法访问,根本打不开页面。初步判断是转发服务出了问题,但是都没有得到解决,直到登峰来到之后,一查看出现这个问题:
# /etc/init.d/transparent_proxy status
/etc/init.d/transparent_proxy: line 85: iptables: command not found
经过回忆才记起来,当时用户提出,由于启用iptable之后,老是丢包,无法登录,估计就是建盛提出的iptable的问题。后来就干脆把iptable给卸载了。现在就是transparent_proxy这个服务启不来了。
通过查看/etc/init.d/transparent_proxy
# Start daemons.
        echo -n "Turning on transparent proxy: "
        iptables -t nat -F PREROUTING
        for i in $TRANSPARENT_ADDRESSES; do
               iptables -t nat -A PREROUTING -d $i -p tcp -j REDIRECT               iptables -t nat -A PREROUTING -d $i -p udp -j REDIRECT
        done
        echo_success
才发现需要用的iptable的规则,于是把iptable又安装上,最后lvs运行正常。
               
               
               
               
               
               
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/45890/showart_384661.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP