lvs + keepalived +apache(httpd)负载均衡,始终没成功,求指点啊

centos6.5+ keepalived-1.2.2 +ipvsadm-1.26
master:202.112.152.253
slave: 202.112.152.183
VIP: 202.112.152.130
RealServer1:202.112.152.162
RealServer2:202.112.152.158

以下是lvs-》master中/etc/keepalived/keepalived.conf文件
global_defs {
router_id LVS_DEVEL //负载均衡器标识,同一网段内,可以相同
}

vrrp_sync_group VGM { //定义一个vrrp组
group {
VI_1
}
}

vrrp_instance VI_1 { //定义vrrp实例
state MASTER //主LVS是MASTER,从的BACKUP
interface eth0 //LVS监控的网络接口
lvs_sync_daemon_interface eth0
virtual_router_id 51 //同一实例下virtual_router_id必须相同
priority 100 //定义优先级,数字越大,优先级越高
advert_int 1 //MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒
authentication { //验证类型和密码
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { //虚拟IP
202.112.152.130
}
}

virtual_server 202.112.152.130 80 { //定义虚拟服务器
delay_loop 6 //健康检查时间,单位是秒
lb_algo rr //负载调度算法,这里设置为rr,即轮询算法
lb_kind DR //LVS实现负载均衡的机制,可以有NAT、TUN和DR三个模式可选
persistence_timeout 5 //会话保持时间,单位是秒
protocol TCP //转发协议类型,有tcp和udp两种

real_server 202.112.152.158 80 { //定义WEB服务器
weight 1 //权重
TCP_CHECK{ //通过tcpcheck判断RealServer的健康状态
connect_timeout 5 //连接超时时间
nb_get_retry 3 //重连次数
delay_before_retry 3 //重连间隔时间
connect_port 80
}
}

real_server 202.112.152.162 80 {
weight 1
TCP_CHECK {
connect_timeout 5
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
问题一:service keepalived start 两个realserver没有显示
至于两个realserver中的/root/tools/rs.sh start运行正常,在这两台主机上运行202.112.152.130能返回正确的页面,但在其他的机子上就超时不能运行通过,我一直在看keepalived.conf是不是格式写错了,也没检查出来(将TCP_CHECK与"{"之间的空格去掉之后【错误的做法】也只能显示一个realserver[如果两个“{”前都有空格,一个realserver都没有显示],非常纠结之中)!
问题二:
后来又通过ipvsadm的命令行的形式将这两个realserver加入到集群中,通过service ipvsadm start 能看到,但通过其他的机子测试IE:202.112.152.130依然无法通过(都在同一个网段)来显示内容,都是错误,最后恳求大神帮忙看看!!!

Comments

That's a posting full of instihg!

randomness