您的位置:首页 > 运维架构

[svc][op]LVS+keepalived

2016-05-15 23:36 351 查看
lvs是一种负载均衡技术.注意区分负载均衡和高可用的区别.

keepalive是lvs的管理工具

ipvsadm也是lvs的管理工具

keepalive借助ipvsadm管理lvs.所以通常说lvs+keepalive

lvs支持多种负载方式.

理论及配置说明:

http://www.cnblogs.com/edisonchou/p/4281978.html

lvs:DR模式wrr负载:

拓扑

    KA1 LAMP-1

pc------|

    KA2  LAMP-2

VIP:192.168.14.100

KA1:192.168.14.134

KA1:192.168.14.135

LAMP-1:192.168.141

LAMP-2:192.168.142

安装软件:

lvs:

yum install ipvsadm -y
rpm -qa ipvsadm


KA:

yum install keepalived -y


lamp:配置

RS绑定VIP:
ip addr add 192.168.14.100/32 dev lo label lo:1
route add -host 192.168.14.100 dev lo
抑制ARP:
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce


前期准备:

KA的配置文件:主KA

/etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {
router_id LVS_19
vrrp_mcast_group4 224.0.1.18
}

vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 199
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1098
}
virtual_ipaddress {
192.168.14.100/24 dev eth0 label eth0:1
}
}

#ipvsadm -A -t 192.168.14.100:80 -s rr -p 300
virtual_server 192.168.14.100 80 {
delay_loop 6
lb_algo wrr
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout 50
protocol TCP

#ipvsadm -a -t 192.168.14.100:80 -r 10.0.1.6:80 -g
real_server 192.168.14.141 80 {
weight 1
TCP_CHECK {
connect_timeout 8
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}

real_server 192.168.14.142 80 {
weight 1
TCP_CHECK {
connect_timeout 8
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}


备:KA:

! Configuration File for keepalived

global_defs {
router_id LVS_19
vrrp_mcast_group4 224.0.1.18
}

vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 199
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1098
}
virtual_ipaddress {
192.168.14.100/24 dev eth0 label eth0:1
}
}

#ipvsadm -A -t 192.168.14.100:80 -s rr -p 300
virtual_server 192.168.14.100 80 {
delay_loop 6
lb_algo wrr
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout 50
protocol TCP

#ipvsadm -a -t 192.168.14.100:80 -r 10.0.1.6:80 -g
real_server 192.168.14.141 80 {
weight 1
TCP_CHECK {
connect_timeout 8
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}

real_server 192.168.14.142 80 {
weight 1
TCP_CHECK {
connect_timeout 8
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}


检查:如果一台down了,另一台通过ifconfig就会出现绑定的VIP了

ip add |egrep  "134|135"


理论笔记:

集群--一组服务器
lvs harproxy nginx,keepalive heartbeat
负载均衡 高可用

负载模型:
nginx 7层负载
lvs 4层负载
lvs---nginx---webserver

负载:
1,7*24h服务
2,一台机器扛不住

lvs底层原理底层原理:
ipvs
ipvsadm自带
keepalive

名词介绍:
CIP(Client ip address)
DIP(Director IP address)
VIP(virtual ip address)
RIP(Real Server Ip address)=RS

负载的3种模式:
NAT
DR(direct route)
TUN(ip tunnel)
fullnat

DR
RIP
1,绑定VIP
2,抑制arp回应
主要:
LB通过修改目的mac,因此无法改写端口
2000W pv
请求10000一下都可以用haproxy/nginx

NAT模式:
LB要打开转发:
net.ipv4_forward=1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: